Android将程序安装到SD卡的各种方法详解.docVIP

Android将程序安装到SD卡的各种方法详解.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android将程序安装到SD卡的各种方法详解

Android下将程序安装到SD卡的各种方法详解(原创) Android在2.2之前并不提供将程序安装在SD卡上的方法。这点十分脑残。从Android2.2开始,提供了把程序迁移到SD卡上的功能。但是并不完美。想来Windows Mobile很久以前就实现的功能现在Android还没有完美解决,真是让人啼笑皆非。 下面本文就此作一点简单的介绍。主要介绍App2SD、App2SD+、Link2SD。也对Data2SD和D2EXT有所涉及,但后两种并未亲测。 尽量从基础知识讲起,希望能帮助初用Android的同学。当前网络上关于这些方法的帖子颇多,而有一些帖子的说法颇有误人之嫌。故参考网上诸多帖子和亲自测试,写出本文。 本文如有错漏,请读者不吝指出。文中倘有名词未有解释,请先考虑使用Google找到答案。写本文已经花不少时间,本文不会再做订正错误以外的补充和修订。 本文为原创,转载请注明。 (可以在博文所属网站上直接转载。转到站外请注明来自未名BBS或?/或/?。本文还在QQ空间和人人网同步发布) ? ROM太小?关于ROM的基础知识 ROM包括哪些部分? ROM实际被划分为若干个分区。其中和用户关系最密切的是/system和/data两个分区。如果没有ROOT权限,/system分区是不可写的。所以你的全部用户程序和用户数据都安装在/data分区上。这也就是我们在设置-应用程序-管理程序中能看到的ROM空间。 Android应用程序占用的空间包括哪些部分? 一个?Android程序如果想能正常运行,至少会在你的ROM中存放如下五种文件: /data/app,存放程序的apk文件(仅用户程序)。你安装的程序的apk文件都会在这里再放一份。 /data/dalvik-cache,顾名思义,是程序的dalvik-cache文件。实际就是程序的Java执行文件,扩展名为dex。因为apk中也包含它,所以这里只是一个cache。 /data/data/程序名/lib。程序的lib文件(仅用户程序),扩展名为so。 cache。顾名思义,缓存。存放于/data/data/程序名/cache。也可以强制存放于系统的/cache分区(有ROOT权限后) 用户数据。在/data/data/程序名(无论用户程序还是系统程序的数据都在这)。/data/data中的绝大部分文件都是用户数据。 这些东西,哪些最占地方? 首先是apk文件。Dalvik-cache和lib都是从apk中解出的。 其次是用户数据。但这随程序不同而有很大不同。有的程序就只有极少量的数据,而像联系人、短信、QQ之类的软件用户数据就可以多达数M。 lib文件一般体积很小(也有例外,比如说Opera)。Dalvik-cache的体积也不大。 cache体积不大,而且系统会动态清理它们。 所以,我们知道,把程序移动到卡上的首要目的是移动哪些文件了。首先是apk,其次是用户数据。 Linux下文件迁移的方法 Linux支持:挂载一个分区到一个目录;在目录和目录、文件和文件间建立符号链接;把一个文件作为一个分区挂载。这些就是将应用程序安装在SD卡上的基础。 SD卡一般知识 SD卡分级:class2 class 4 class 6,以及不常见的class 10。该数字代表此卡读写速度中较小的那个值(以MB/s为单位,当然所有的卡都是读取比写入快)大于等于该数字。 市面SD卡闪存一般是两种:SLC和MLC(还有TLC,比MLC更烂,现在不大常见)。原理姑不论,对于希望把程序装在SD卡上的同学来说,你们需要知道:SLC读写速度差距不大,都很快;MLC的读取速度很快而写入速度极慢。SLC的擦写寿命约十万次(一说百万次),而MLC只有一万次左右。鉴定SLC和MLC卡的最简单方法就是拿一个足够好的读卡器(便宜的读卡器验不出SLC的超高速度),运行一下ATTO Disk Benchmark,看一下读写速度差异。如果差3倍以上,应该就是MLC。 SD卡品牌:公认SanDisk拥有最佳的兼容性。如果你有一张两三年前生产的SanDisk microSD卡,那么恭喜你。那时的SanDisk极度厚道。标称Class 2的卡比别家Class 4的卡更快。而标称Class 4的Mobile Ultra系列更是拥有写入速度超过25M的神速。Mobile Ultra系列已经停产,成为永远的传奇。今天SanDisk卡的速度并不比别家更快!只是兼容性仍胜过别家。 对于今天的SD卡厂商,大致可以这么说,Class 2和Class 4的卡全部是MLC,没有例外。写入速度等于标称值,读取速度10M-20M。Class 10的microSD卡,有可能使用的是SLC闪存。如果用的是SLC,可以达到写入20M/s,读取30M/s的速度。

文档评论(0)

nzs158 + 关注
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档