搜索网上的方法,使用storageStatsManager.queryStatsForUid(),获得到的数据不正确,使用queryStatsForPackage才拿到正确的数据

public static long getAppStorage(Context context, String packageName) {StorageStatsManager storageStatsManager = (StorageStatsManager) context.getSystemService(Context.STORAGE_STATS_SERVICE);StorageManager storageManager = (StorageManager) context.getSystemService(Context.STORAGE_SERVICE);List<StorageVolume> storageVolumes = storageManager.getStorageVolumes();long appSizeL =0;for (StorageVolume storageVolume : storageVolumes) {UUID uuid = null;String uuidStr = storageVolume.getUuid();try {if (TextUtils.isEmpty(uuidStr)){uuid = StorageManager.UUID_DEFAULT;}else {uuid = UUID.fromString(uuidStr);}}catch (Exception e){uuid = StorageManager.UUID_DEFAULT;}//通过包名获取uidint uid = 0;try {uid = getUid(context, packageName);} catch (PackageManager.NameNotFoundException e) {e.printStackTrace();}StorageStats storageStats = null;try {UserHandle userHandle = Process.myUserHandle();storageStats = storageStatsManager.queryStatsForPackage(uuid, packageName, userHandle);} catch (Exception e) {e.printStackTrace();return 0;}//获取到App的总大小appSizeL = storageStats.getAppBytes() + storageStats.getCacheBytes() + storageStats.getDataBytes();}return appSizeL;}

Android 获取应用占用存储空间大小相关推荐

  1. Android 获取手机存储总大小,系统占用空间

    一.Android 存储介绍及通常查询大小 手机存储有两种,内置内存和外置内存(SD),目前可扩展内存的机型正在减少,大部分是内置存储的手机,内置128G.256G已经很常见,但如果有扩展功能的话,买 ...

  2. ORACLE查询表数据占用存储空间大小

    查询"帐户/库"数据占用存储空间大小 select sum(bytes)/1024/1024 as "size(M)" from dba_segments wh ...

  3. Android 系统(49)---Android获取窗口可视区域大小: getWindowVisibleDisplayFrame()

    Android获取窗口可视区域大小: getWindowVisibleDisplayFrame() getWindowVisibleDisplayFrame()方法 getWindowVisibleD ...

  4. android获取手机内部存储空间和外部存储空间

    原文: http://blog.163.com/hero_213/blog/static/39891214201162123236660/ 该代码片段可以让我们获取internal和external的 ...

  5. Android 获取 AudioRecord 麦克风音量大小并做选择性发送

    extends:http://blog.csdn.net/alvinhuai/article/details/8955127,http://mikespook.com/2010/11/android- ...

  6. 【MySQL】mysql查看库 表占用存储空间大小

    1.概述 查看该数据库实例下所有库大小,得到的结果是以MB为单位 SELECTtable_schema,sum( data_length ) / 1024 / 1024 AS data_length, ...

  7. Android获取系统字体的大小,Android中设置字体不随系统字体大小而变化

    有的时候,我们设置好的布局,在某些手机上,就会出现布局错乱,因为这个问题会流失很多用户,体验超级不好,问题图如下 image.png . 我们可以看到本来是一行可以显示的布局,竟然错乱成这个样子,蛋疼 ...

  8. Android获取摄像头和存储空间权限

    经实验,无论Android版本是6.0+还是6.0-,稳妥起见,如下设置: Step1:在AndroidManifest.xml中添加如下内容: <!-- 摄像头权限 --> <us ...

  9. Java 获取对象占用内存大小

    1.第一步引入依赖 gradle引入:implementation group: 'org.apache.lucene', name: 'lucene-core', version: '4.0.0'i ...

最新文章

  1. python软件使用教程-python用什么软件编写
  2. 电脑卡顿不流畅怎么解决_电脑卡顿是什么原因,电脑卡顿严重解决方法【详解】...
  3. 物联网技术泡沫多 期望与现实不匹配
  4. 【Android】人体图片、地图图片、热力图,如何实现点击不同的部位执行不同的操作?...
  5. linux下pcre编译,linux下交叉编译lighttpd以及pcre
  6. ubuntu 64 12.04 oracle,ubuntu server 12.04 x86_64 下安装oracle xe 11 x86_64
  7. 2017春季学期编译原理期末实验报告
  8. iterator adapter inserter
  9. java正则表达式的进阶使用20180912
  10. sqlyog注册码激活
  11. Android activity主题设置为dialog 样式
  12. 【ZYNQ开发系列】基于vitis(vivado2019以上版本)的程序固化~如何把程序烧录到QSPI?
  13. 液晶坏点如何鉴别 LCD显示器选购之道
  14. 利用MediaRecorder录制视频切片上传到ftp服务器
  15. 引言-知识技能树(数据分析相关)
  16. ios开发者中心,证书,APPID,配置文件
  17. 常见的 @Transactional 注解,你确定用对了吗?
  18. HeaFirst设计模式-单件模式[单例模式](Singleton Pattern)
  19. Linux应用开发入门
  20. 【预测模型-ELAMN预测】基于蚁群算法优化ELMAN神经网络实现数据回归预测matlab代码

热门文章

  1. Android 6种触摸事件,Android 的触摸事件详解及示例代码
  2. 衡量数据整体的变化率的有哪些指标
  3. ubuntu将ntfs格式分区转成ext4格式分区
  4. 夫妻和谐幸福的六大技巧
  5. win7锁定系统时间的设置
  6. 进度压缩: 赶工与快速跟进
  7. 关于Word2007在方框(□)中打勾和打叉等技巧
  8. 场效应管N沟道和P沟道判断方法
  9. 技术美术知识学习3600:纹理压缩
  10. 第五代计算机名称,所谓的“第五代计算机”是指( ?)。