我正在制作一个 android 应用程序,并希望向用户显示我在他们的手机上占用了多少数据空间。
我目前正在获取数据库文件和打包应用程序文件的大小,并将它们添加在一起,但它与 android 应用程序设置中显示的统计数据相去甚远。
作为我目前的做法:
long dbsize = DAL.Repository.getDBSizeinKB(); // is 18 MB
ApplicationInfo appinfo = a.PackageManager.GetApplicationInfo(a.ApplicationInfo.PackageName, 0);
long appsize = new FileInfo(appinfo.SourceDir).Length / 1000; // 4MB
string spaceUsed = "";
long totalsize = dbsize + appsize;
spaceUsed = totalsize.ToString() + " kB";
if (totalsize >= 1000)
spaceUsed = (totalsize / 1000).ToString() + " MB";
sizeView.Text = "Space used: " + spaceUsed; // 22MB
已关闭。