配色: 字号:
手机增加内存工具及方法
2013-11-26 | 阅:  转:  |  分享 
  
众所周知,安卓有system分区和data分区以及cache分区。

但是,有时软件全装卡里了data还在减少?

其实是因为程序要生成dalvik-cache缓存(在data/data下的数据其实很少,比如缓存数据每个程序也就几十kb真正占内存的就是dalvik-cache,比如安DocumentsToGo就会生成4.5m的文件。你可以进目录看看!),就在data/dalvik-cache目录下。

这是用于优化程序的,即使你全删除重启后还会生成!

【dalvik-cache解释当Android启动时,DalvikVM监视所有的程序(APK文件)和框架,并且为他们创建一个依存关系树。

DalvikVM通过这个依存关系树来为每个程序优化代码并存储在Dalvik缓存中。

这样,所有程序在运行时都会使用优化过的代码。这就是当你刷一个的ROM时,有时候第一次启动时间非常非常长的原因。

当一个程序(或者框架库)发生变更,DalvikVM将会重新优化代码并且再次将其存在缓存中。】

因此软件安装数量仍然受到手机自带空间限制。。。

不过按照思路可以把dalvik-cache移到TF卡,用Linux的概念是建立软链接,把TF卡的EXT分区映射到dalvik-cache。



下面我要教你移动dalvikcache到ext3分区。这样不至于装软件受到rom空间大小显示。

本帖隐藏的内容



1、手机与电脑连接正常,手机已经成功root。

2、准备文件:把adbshell.rar解压到电脑c盘根目录。

/

1、首先按llbaixuetx的帖子:《内存卡分区教程+link2sd把程序安装到sd卡第二分区+移动程序到rom系统内存》http://bbs.hiapk.com/thread-1696296-1-1.html进行分区,并确认已成功;(分区有点难,我个人建议用AcronisDiskDirector这软件将sd分区)不会的在点评里说一下或在一楼回复

2、用R.E管理器把/data/dalvik-cache/复制到/data/sdext2/

3、打开cmd:切换到adb.exe这个文件所在的目录(应该会吧,先打出所在哪个盘例如在f盘就F:回车,转到文件夹根目录就cd文件名再回车),adbshell回车

此时如果出现$,输入su回车,查看手机屏幕,出现请求权限提示,选择“允许”,这时命令提示符就出现了#(说明登陆root用户)

4、注:(此步骤开始有风险,因为dalvik-cache目录apk运行的必要,太多应用会因系统一时恢复不来就崩溃了)

目前已知B16、B15可行(测试过的)

在#提示符后输入命令(命令顺序不可颠倒):

rm-r/data/dalvik-cache(删除dalvik-cache目录)

ln-s/data/sdext2/dalvik-cache/data/dalvik-cache(建立映射关系)注:此时仍保持连接

5、上述命令运行完毕,用R.E管理器查看/data/dalvik-cache的容量,如显示为EXT3即SD卡的第二分区大小,则表明dalvik-cache已成功移到sd卡,从此以后程序缓存将会自动存储到sd卡的LinuxEXT分区中。

6、输入:reboot(重启手机)

觉得还不够省的可以试试:将/data/data文件夹下的文件链接建立映射关系也会增大;当然同理进行链接(只不过把dalvik-cache改为data就OK)

同样,在#提示符后输入命令

rm-r/data/data(删除data目录)

ln-s/data/sdext2/data/data/data(建立映射关系)

之后步骤同上







上面提到的ADBSHELL附件下载



本帖隐藏的内容



adbshell.rar(365.59KB,下载次数:158)
献花(0)
+1
(本文系sunelite首藏)