gpt4 book ai didi

android - 获取已安装的应用程序大小

转载 作者:IT王子 更新时间:2023-10-28 23:34:20 57 4
gpt4 key购买 nike

我正在尝试弄清楚如何获取已安装应用的大小。
已经失败的地方:
- new File('/data/app/some.apk') - 报告大小不正确
- PackageManager.getPackageSizeInfo(String packageName, IPackageStatsObserver observer) - 是 @hide 并且依赖于一些模糊的 IPackageStatsObserver 结果所以我不能调用它通过反射。

最佳答案

不幸的是,目前有 no官方way要做到这一点。但是,您可以调用PackageManager的隐藏 getPackageSize导入 PackageStats 的方法和 IPackageStatsObserver AIDL 进入我们的项目并生成 stub 。然后您可以使用反射来调用 getPackageSize :

PackageManager pm = getPackageManager();

Method getPackageSizeInfo = pm.getClass().getMethod(
"getPackageSizeInfo", String.class, IPackageStatsObserver.class);

getPackageSizeInfo.invoke(pm, "com.android.mms",
new IPackageStatsObserver.Stub() {

@Override
public void onGetStatsCompleted(PackageStats pStats, boolean succeeded)
throws RemoteException {

Log.i(TAG, "codeSize: " + pStats.codeSize);
}
});

这显然是一个大黑客should not be used用于公共(public)应用程序。

关于android - 获取已安装的应用程序大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1806286/

57 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com