最近,给手机上“存储空间不足”的提醒添了麻烦,在网上找资料,不小心发现了app2SD和link2SD技术。 两者的原理大致相同,其中link2SD更方便,但在某些机型上不适用。 本博客只介绍了link2SD。 此外,本文以APP2SD打开的原理和Re用管理器中打开APP2SD的方法这篇文章为基础进行了整理总结,读者也可以参考这篇文章。
APK安装的占用空间的原理
例如,UC浏览器. apk,安装说明:
如果将UC浏览器. apk重命名为UC浏览器. zip,然后在解压缩软件中打开,则可以看到其中包含class.dex文件和文件夹Lib。
1、首先将UC浏览器. apk重命名为com.ucmobile.apk并复制到/data/app目录中。
2、将com.ucmobile.apk包中的class.dex文件解压缩到/data/Dalvik-Cache目录中。
3、在/data/data目录下创建com.ucmobile目录,然后在com.ucmobile.APK包中的Lib (有些apk没有此文件)下创建相应的. so文件
一旦将最后app生成的数据相加,app的存储空间就可写入以下方程式:中
http://www.Sina.com/http://www.Sina.com /
等式右侧前面的部分是app安装占用的空间,后面的部分是程序运行很长时间后占用的空间,并且会增加。 手机本机app2SD只需将等式-1中的APK和. so文件. lib文件移动到存储卡中。
app的存储空间应该=原APK+class.dex+.so文件+(数据+缓存)
Link (链接)、Link是可以忽略Link文件大小的空间,就像Windows快捷方式一样。 原理是将原始文件或文件夹移动到任意其他位置,如EXT分区或/system或/cache。 当然,存储卡的第一个分区Fat32格式的分区是不行的。 创建Link并将其恢复到原始目录而不是原始文件或目录。
(等式-)(手机必须先root )link2SD工作原理
首先是link2SD开启步骤化SD卡,SD卡分区主要将SD卡分为fat32和ext两个分区。 另外,本人尝试了包括Partition Manager在内的多个分区软件也没有成功,最后使用acronic director 12成为了okay。
这里的操作很简单,就是把SD卡简单地分成fat32和ext两个分区。 (如果不知道,请参考存储卡分离EXT格式的第2分区并删除EXT分区图像的教程(本人的EXT分区选择ext3格式、1.5G大小。 但是,必须注意的是,两个分区都是1.SD卡分区
下载超级终端和busybox安装程序,打开busybox安装程序,然后按照默认设置进行安装。 使用RE文件浏览器在/system目录下创建新的sd目录。备份,格式
输入su
重新输入
busybox df -h出现
这就是fat32分区。“Primary”(主要分区)
ls -l /dev/block
一般而言,第一分区是/dev/block/vold/1793360数字,而第二分区是/dev/block/vold/1793360 (数字1 ),其中第一分区是数字1
busybox mount-text3/dev/block/MMC bl k1 p2/system/SD (根据自己的情况修改)“logical”(逻辑分区)
如果busybox df -h步骤1成功,则将装载辅助分区。
分区步骤到此结束。2.简单验证步骤1有没有操作正确
第一次启动时,程序会警告装载脚本,如果装载成功,程序会提示重新启动。 如果要确认前面的步骤正确且无法装载,机型可能不允许,可能需要使用app2sd。
虽然link2sd的软件操作在这里不多说,但比较简单,主要是设置里面的“自动连接”和与sd卡的连接。
最后看看连接成功的图。
可以看到APK和LIB文件消耗了sd卡的内存。 这是本机app2sd的作用。 DEX文件在link2sd上的链接成功。 关于内部数据和高速缓存数据,链接到SD卡需要link2sd扩展版。 常规版的link2sd未解除该功能的锁定。