当前位置: 首页 > wzjs >正文

富阳做网站方式网站前台做好之后再怎么做

富阳做网站方式,网站前台做好之后再怎么做,唐山网站排名推广,免费网站制作知乎InstalldNativeService::getAppSize 是 Android 系统中用于计算应用程序存储空间的核心方法,其逻辑可分为以下几个关键模块(结合代码和上下文分析): 一、基础校验与初始化 ​​1. 权限校验​​ 通过 ENFORCE_UID(AID_SYSTEM) 确…

InstalldNativeService::getAppSize 是 Android 系统中用于计算应用程序存储空间的核心方法,其逻辑可分为以下几个关键模块(结合代码和上下文分析):

一、基础校验与初始化

​​1. 权限校验​​
通过 ENFORCE_UID(AID_SYSTEM) 确保仅系统进程可调用,防止越权操作。
​​2. 路径参数校验​​
使用 CHECK_ARGUMENT_* 宏校验 packageNames 和 codePaths 合法性,避免无效路径导致计算异常。

二、存储路径与统计分类

  1. ​​统计结构体​​
    stats:记录内部存储(Internal Storage)的 codeSize(代码大小)、dataSize(数据大小)、cacheSize(缓存大小)。
    extStats:记录外部存储(External Storage)的 codeSize、dataSize、cacheSize。
  2. ​​关键路径定义​​​​
    OBB 文件​​:路径为 /data/media/obb/[package],计入 extStats.codeSize。
    ​​应用数据目录​​:包括 /data/user/[userId]/[package](CE 路径)和 /data/user_de/[userId]/[package](DE 路径),计入 stats.dataSize。
    ​​外部媒体目录​​:如 /sdcard/Android/data/[package],计入 extStats.dataSize。

三、计算逻辑分支(Quota 与手动遍历)

​​1. Quota 模式(高效计算)​​
​​启用条件​​:设备支持 Quota 且 appId 有效(FLAG_USE_QUOTA)。
​​操作流程​​:
通过 collectQuotaStats 直接读取文件系统配额信息,避免遍历目录,提升性能。
仅需校验 codePaths 的 GID 归属(如 multiuser_get_shared_gid),确保代码路径权限正确。
2. ​​手动遍历模式(兼容性计算)​​
​​触发条件​​:设备不支持 Quota 或调试模式。
​​关键操作​​:
​​代码路径​​:遍历 codePaths 计算 stats.codeSize(如 APK 文件)。
​​数据目录​​:通过 collectManualStats 累加 CE/DE 路径大小到 stats.dataSize。
​​Profiles 文件​​:如 /data/misc/profiles/cur/[userId]/[package],计入 stats.dataSize。
​​Dalvik 缓存​​:路径为 /data/dalvik-cache,根据 GID 归属累加到 stats.codeSize。

四、结果汇总与返回

最终将 stats 和 extStats 的六项数据按顺序存入 _aidl_return,供上层(如 StorageStatsManager)解析为应用存储详情。核心统计项包括:

ret.push_back(stats.codeSize);        // 内部代码大小
ret.push_back(stats.dataSize);        // 内部数据大小
ret.push_back(stats.cacheSize);       // 内部缓存大小
ret.push_back(extStats.codeSize);     // 外部代码大小(如 OBB)
ret.push_back(extStats.dataSize);     // 外部数据大小(如媒体文件)
ret.push_back(extStats.cacheSize);    // 外部缓存大小

五、性能优化与调试

​​1. ATrace 标记​​
通过 ATRACE_BEGIN/END 分段统计各模块耗时,便于性能分析。
​2. ​MEASURE_DEBUG 模式​​
在调试版本中输出详细日志(如 LOG(DEBUG) << “Final result”),帮助定位计算异常。

附:路径生成函数说明

代码中使用的 create_data_*_path 系列函数(如 create_data_media_package_path)定义于 utils.cpp,用于动态构建符合 Android 存储规范的路径。例如:

  • ​​外部数据路径​​:/data/media/[userId]/Android/data/[package]
  • OBB 路径​​:/data/media/[userId]/obb/[package]
    这些路径的构造直接影响统计结果的准确性,需与系统存储策略严格对齐。

文章转载自:

http://TlEiDggq.kcwkt.cn
http://D3yhKv4q.kcwkt.cn
http://9Rznv7Gd.kcwkt.cn
http://xpHIC7Qh.kcwkt.cn
http://HhXYFYVG.kcwkt.cn
http://U5lFCemC.kcwkt.cn
http://mtRF4tEZ.kcwkt.cn
http://UUPffz1n.kcwkt.cn
http://SSAZN7il.kcwkt.cn
http://2vCyPgix.kcwkt.cn
http://DDYRnA8X.kcwkt.cn
http://295q6JCw.kcwkt.cn
http://PY8FgKu1.kcwkt.cn
http://KLqXUQZ4.kcwkt.cn
http://ZDEq0Ycs.kcwkt.cn
http://eeYlS1Q8.kcwkt.cn
http://EPLyLCLv.kcwkt.cn
http://rC48A8ei.kcwkt.cn
http://ogM1QFTc.kcwkt.cn
http://QfMkZaWG.kcwkt.cn
http://3Pmz55Sm.kcwkt.cn
http://dzfyUedN.kcwkt.cn
http://MsbdWw5V.kcwkt.cn
http://wMmf3nzY.kcwkt.cn
http://UuKWtWbq.kcwkt.cn
http://Fh01mlBi.kcwkt.cn
http://CXmCzo1a.kcwkt.cn
http://6gtQxp1t.kcwkt.cn
http://mCrO3ZUa.kcwkt.cn
http://RcBkWRuW.kcwkt.cn
http://www.dtcms.com/wzjs/702130.html

相关文章:

  • 响应式网站建站价格网站如何做会员登录页面
  • 上海大型网站开发公司dede网站地图地睛
  • 温州个人网站建设js网站开发视频
  • 网站建设专用术语产品网络营销策划方案
  • 达州住房和城乡建设厅网站今天重大新闻摘抄
  • 机械 网站源码如何查看网站开发者
  • 深圳好蜘蛛网站建设公司查网站域名
  • 企业网站建设课程体会网站开发公司的推广费用
  • 宜昌模板网站建设淘宝店招图片大全免费
  • 网站运营推广怎么做建立主题网站的顺序一般是
  • 网上下载的网站后台安全吗松松软文平台
  • 网站建设工作组怎么注册自己的网站域名
  • 建设官方网站登录社交手机网站开发
  • 怎么样推广自己的网址西安网站seo方法
  • 兰州最好的网站建设公司哪家好开网站 主机 服务器
  • 宁波做外贸网站建设西安seo霸屏
  • 网页设计的价格网站优化合同模板
  • 做网站的是什么职位一般网站建设流程
  • 制作企业免费网站制作网站哪家专业
  • 保定网站建设培训班wordpress专题修改
  • 池州网站建设哪家好室内装修设计网站推荐
  • 公司推广网站建设话术国外服务器免费ip地址
  • 物流网站设计c 做的博客网站
  • 清苑住房和城乡建设局网站aspnet校友录网站开发
  • 资源网站如何做做网站的个人心得
  • 扬州建设教育信息网站wordpress动画插件下载
  • 企业网站模板免费网页游戏吃显卡还是cpu
  • seo整站优化技术培训福贸外贸论坛
  • ppt下载免费网站小程序免费制作平台用
  • 搜搜网站收录提交入口.asp网站开发