1、 手机中的缓存一般放在手机中data/data/的项目/cache当中,cache文件是可不读不可写,所以不能直接获取
2、可以在源码中找到 mPm.getPackageSizeInfo(包名, mStatsObserver);
3、getPackageSizeInfo的方法已经被隐藏了,只能采用反射来获取:需要导入这两个aidl文件
IPackageStatsObserver.aidl 和 PackageStats.aidl
1⃣️ 获取到packagemanager管理器对象,
public static void getCacheSize(final Activity context, String packName,final OnGetCacheSizeListener listener) {
PackageManager pm = context.getPackageManager();
2⃣️ 使用反射
// 1. class
Class<? extends PackageManager> clazz = pm.getClass();
// 2. method
Method method = clazz.getDeclaredMethod("getPackageSizeInfo",
new Class[] {String.class,IPackageStatsObserver.class});
// 3. obj pm
已经获取到了任务管理器
//为了获取到回调,定义了一个接口
IPackageStatsObserver.Stub mStub = new IPackageStatsObserver.Stub() {
@Override
public void onGetStatsCompleted(PackageStats pStats, boolean succeeded)
throws RemoteException {
//回调结果
final long cacheSize = pStats.cacheSize;
//因为修改了UI界面,所以不能在子线程中运行,创建一个UI线程使其在主线程中修改
context.runOnUiThread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
listener.getCacheSize(cacheSize);//把结果回调给用户
}
});
// 4. invoke
method.invoke(pm, new Object[]{packName,mStub});
}
3⃣️ 定义一个接口
public class GetAppCacheMessageUtils {
public interface OnGetCacheSizeListener{
public interface OnGetCacheSizeListener{
最新文章
苹果忘记了id密码怎么办苹果手机id密码忘了怎么办「苹果忘记了id密码怎么办」
在日常使用苹果设备时,我们可能会遇到忘记Apple ID密码的尴尬情况。这不仅影响我们登录App Store、iCloud等苹果服务,还可能造
华为P7有电信版吗?华为P7电信版什么时候上市?华为p7手机报价「华为P7有电信版吗?华为P7电信版什么时候上市?」
华为P7有电信版吗 根据目前所获的消息,并没有确切说明华为P7是否会推出电信版本的机型,详细的情况可以继续留意相关信息。
手机厂商为什么不砍掉鸡肋的超广角镜头?手机镜头「手机厂商为什么不砍掉鸡肋的超广角镜头?」
作者:安德鲁橙 前阵子有一个提问,是关于,既然如今的好多手机的超广角镜头那么鸡肋(CMOS尺寸都不算大)不,为什么不直
传奇3单机光通怀旧版 v1.76手机版单机传奇「传奇3单机光通怀旧版 v1.76」
18183游戏库传奇3单机光通怀旧版v1.76简单快速方便!在传奇3单机光通怀旧版v1.76体验中,你会越来越体验到游戏给你带来的乐趣。
嫘祖大道全线通车 驻马店交通再添动脉
1月1日,河南省驻马店市嫘祖大道全线通车。嫘祖大道是由驻马店市公路工程开发有限公司承建的河南省重点工程,起点位于遂平县西北
【五院·科普】牙科手机的清洗消毒与维护保养洗手机「【五院·科普】牙科手机的清洗消毒与维护保养」
健康口腔行动是10项暖民心行动之一,加强口腔医疗服务,还百姓牙齿健康,我院消毒供应中心一直在践行。口腔是微生物寄居数量最多
惟进取,故日新——解锁滨江“多重性格”
2025年1月3日,杭州高新区(滨江)召开区委六届七次全体(扩大)会议暨区委经济工作会议(以下简称“全会”)。作为稳居第一方阵
肿么看手机的pin码是什么?手机pin码是什么「肿么看手机的pin码是什么?」
手机的PIN码是一种用于保护手机安全的密码。它是由4位数字组成的,可以有效防止他人非法使用您的手机。如果您忘记了手机的PIN码
手机单机游戏排行榜前十名(十大耐玩手机单机游戏)手机单机游戏排行榜「手机单机游戏排行榜前十名(十大耐玩手机单机游戏)」
本篇文章给大家谈谈手机单机游戏排行榜前十名,以及十大耐玩手机单机游戏对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔
张杰谢娜被传已离婚?当事人回应已说明了一切...
结婚13年,相爱18年,在娱乐圈当中能这样长情的情况实在是不多。可能因为感情不合,或是工作原因聚少离多。慢慢的,大家都误以为
推荐文章