我想获取应用程序大小(以字节为单位)。我尝试的方式如下:
PackageStats ps = new PackageStats(packageInfo.packageName);
int size = ps.codeSize;
每次都会返回 0 。 (基本上每个返回的值都是0 - cacheSize,dataSize等)
我不想要使用here提及的反射(因为它没有记录的方式)
那么有什么方法可以获取这些信息吗?
答案 0 :(得分:0)
应用程序大小的一个定义是apk文件的大小(以字节为单位)。
您可以通过对应用程序的ApplicationInfo.sourceDir值执行新的File(),然后对该文件执行File.length()来获得该功能。
答案 1 :(得分:0)
与类名声音相反,PackageStats.class无法访问手机上的系统并查找应用程序,数据和缓存文件的大小(希望如此)。它用于从包裹中提取此信息(如果可用),或者如果包裹提供给包裹,则将包裹信息写入包裹。
使用zmarties方法,新的File(),是一个可行的解决方案。