为了区分2种App2SD,这里重新解释一下:
App2SD: Android 2.2版本内置的App2SD
App2SD+: 国外牛人从1.5系统开始搞的App2SD将更多的东西放到sd卡,省出更多空间
这两种App2SD有着明显的区别,如下:
App2SD: 直接把软件装在SD卡的Fat32分区上,这个分区就是手机连接电脑使用磁盘驱动器的时候看到的那个硬盘分区,所以,2.2的androidGoogle给了一种将软件安装到sd卡的办法,这样就能安装更多软件。Sd上会生成一个大概叫做 .android_secure的文件夹,将软件安装到里面。这样做有2个很大的缺点:

当使用磁盘驱动器模式的时候,SD卡被电脑独占,装在SD卡上的程序无法运行,会导致很多插件和软件消失
目前来说Android上面的软件很多还是不支持App2SD的,只有极少数一部分可以装在SD卡上,即便能移动过去,不是所有的软件数据都移动到sd卡,同样有一些信息是需要保留在NAND上面的,所以,你的手机照样会很快就用完内部存储。你可以通过命令行强制将所有软件都装到sd卡上。但这么做的后果就是,小插件什么的就不再能用。这就是官方2.2的app2sd。



App2SD+: 通过给SD卡分区, 一个Swap分区(可选),一个Ext分区(安装软件的地方),一个Fat32分区。这种方式很好的解决了官方2.2系统自带App2SD的缺点,所有程序都可以装在SD卡上,在使用磁盘驱动器模式的时候也不会影响到SD卡上程序的运行。只是这个ext系统是android内部存储用的格式。Sd卡之所以一般都是fat32格式,那是因为这个格式的使用是最广泛的,windows,linux,都能使用这个格式,而ext格式一般来说,只是在linux下可以看到并读取。Ext格式有不同的版本。最常见的就是ext3。和ext2比起来,最大的不同就是ext3格式有了“日志”(Journal)功能。日志功能最大的好处,就是当你的操作(如对sd进行读取或者写作的过程中)因为意外原因别打断(比如,突然断电),那么,有日志功能的ext3分区上的文件,不会有任何损坏或者丢失。当我们每次打开我们的电话时,上面总是提示“正在准备sd卡”。每次都提示正在准备,但其实系统正在做的就是检查fat32格式是不是损坏,这正是因为fat32格式不具备日志功能。回想一下以前在windows98年代的日子,每次当我们并非正确关机或者突然重启之后,会出来一个带着扫描进度条的蓝屏,这个扫描进度条和现在正在准备sd卡,是一个意思。但当我们后来用windows 2000、windows xp时,因为这两个系统开始支持带有日志功能的ntfs,所以在这两个系统下,文件系统损坏的可能被降低了。至于ext格式是ext3还是ext4,不是很重要。使用ext4,并不会带来什么好处(译者注:有时候rom不支持ext4,反而麻烦)。


判断App2SD 和 App2SD+是否启用的方法
App2SD: 进入设置-应用程序-管理应用程序- 找一个支持App2SD的程序,例如 ES 文件浏览器, 点击进去 看一下 移至 SD 卡 按钮是否可以点, 如果可以点,代表系统支持 App2SD,如果不可以点 有可能是某些程序本身不支持App2SD或者系统不支持App2SD


App2SD+: 如果你的SD卡在刷系统之前已经存在 Ext分区, 那么在刷完带App2SD+的 Rom以后会自动开启App2SD+。判断是否成功开启App2SD+,可以通过下面的几种方法:
把手机连接到电脑上,然后再电脑上 输入 adb ls /system/sd/app/ 然后回车,查看该目录下是否有apk文件,如果有那么恭喜你,你的系统已经开启App2SD+,
或者通过Rom自带的文件浏览器进入 /system/sd/app/ 目录,查看这个目录下是否有apk文件,如果有那么恭喜你,你的系统已经开启App2SD+,
可以在手机上使用其他文件浏览器查看,或者在手机上使用终端软件输入命令 ls /system/sd/app/ 来查看。
下面介绍如何开启App2SD和App2SD+:先介绍App2SD,然后再详细介绍App2SD+。
开启和关闭2.2系统自带的App2SD在电脑上用输入下面的命令来开启或者关闭App2SD:
adb shell pm setInstallLocation 0
adb shell pm setInstallLocation 1
adb shell pm setInstallLocation 2
注释:
0 代表自动(这个是默认值,如果你曾经开启过App2SD,想关闭的话,通过adb shell pm setInstallLocation 0就可以关闭App2SD功能了)
1 代表手机存储
2 代表SD卡。
也可以通过adb shell pm getInstallLocation 来获取当前的设置。


DATA2SD和DATA2EXT:最新的扩展机身内存技术,类似与A2SD+之类的,相比之前的方案速度更快,空间更大,机器I/O性能提升明显。据网友测试,miui等超频类ROM象限跑分高达2000分,刷带有DATA2SD和DATA2EXT支持的ROM。如果是原来的A2SD+、apps2sd、app2sd+之类的也可以兼容,只是第二分区可能会浪费较多空间


当然要使用App2SD+,就要给SD卡分区,(省略)

用一种简单的方法让普通的rom实现a2sd+。
使用方法:
1. 禁用Froyo自带的app2sd功能(如何禁用请参阅相关帖子);
2. 推荐通过Recovery刷入,但是切勿wipe任何项目。熟悉adb shell的也可以用超级终端;
3. 刷完重启系统,默认激活system/app+system/data to ext3;如果希望cache to ext3,须在超级终端输入:a2sd cachesd 以激活该功能。