Java学习者论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

恭喜Java学习者论坛(https://www.javaxxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,购买链接:点击进入购买VIP会员
JAVA高级面试进阶视频教程Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程

Go语言视频零基础入门到精通

Java架构师3期(课件+源码)

Java开发全终端实战租房项目视频教程

SpringBoot2.X入门到高级使用教程

大数据培训第六期全套视频教程

深度学习(CNN RNN GAN)算法原理

Java亿级流量电商系统视频教程

互联网架构师视频教程

年薪50万Spark2.0从入门到精通

年薪50万!人工智能学习路线教程

年薪50万!大数据从入门到精通学习路线年薪50万!机器学习入门到精通视频教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程 MySQL入门到精通教程
查看: 774|回复: 0

开发交流:AppTOSD Android应用到SD卡详细说明

[复制链接]

该用户从未签到

发表于 2011-10-24 10:51:30 | 显示全部楼层 |阅读模式
AppTOSD Android应用到SD卡详细说明

Android 2.2已经自动默认开启AppTOsd了,但是现在的Android 2.1、Android 2.01、Android 1.6和Android 1.5系统都默认只能将软件游戏安装在有限的系统空间里。如果要实现将程序安装到存储卡上,必须对手机AppTOsd才行。

什么是AppTOsd?
Android手机的软件为了安全性和稳定性都是默认安装到手机内存里,但是手机内存有限,所以我们会做AppTOsd操作,来让我们安装的软件放到sd卡上,而Google的Android系统是基于Linux的,所以存储卡上本身的Fat格式是不会被识别的,所以我们要分区(第二分区)出来,格式化成Linux认识的ext2或3或4格式,在用链接命令,把这个分区映射成一个系统文件夹system/sd,把所有的软件装到这个“文件夹”下,这就是AppTOsd的操作,需要ROM支持并开启AppTOsd功能。

Android手机通用的App2sd教程

之所以说是通用的,是因为Android手机构架基本上都一样。整个App2sd过程需要较多的动手操作过程,但并不繁琐,按照以下教程即可。

第一步、将SD卡分区

先下载安装分区必备软件:AcronisDiskDirector10下载(单击下载)

安装以后,接下来启动软件。确保已经将SD卡连接至电脑。

第二步、打开软件,选择视图-手动模式


分区软件AcronisDiskDirector截图

第三步、右键你的SD卡-选择重新调整


分区软件AcronisDiskDirector调整分区截图

减少你原来分区500MB-1.5GB的空间,这些减少的空间就是用来装软件的,另外ext2尽量不要超过1.4GB。

第四步、右键未分配选择创建分区


AcronisDiskDirector创建分区截图


AcronisDiskDirector创建分区格式截图

第五步、检查SD系统格式,如果有同学的SD本身不是Fat32文件系统的需要转换成Fat32文件系统,总之最后效果如图所示


AcronisDiskDirector分区截图

第六步、提交挂起操作,整个分区过程就完成了。

注意:Ext2千万不要设置盘符,而Fat32一定要设置盘符,方法是右键-高级-转换盘符,同时Fat32分区必须是第一个主分区完成后同样要点小旗子,然后挂起操作。

第七步、里程碑需要先获取root权限。

第八步、用USB连接你的里程碑

手机端:进行如下操作
进入调式模式:Settings-Applications-Development-check USB Debugging(中文为设置-应用程序-开发-USB调试)勾选,连到电脑上即可。

电脑端方法一:
打开设备管理器,如发现新硬件有黄色叹号,请先装驱动。

第九步、安装ADB命令(sdk中的adb工具)

第十步、下载App2sd文件(点击下载)

解压出来的App2sd目录拷贝到手机sd卡的根目录,确保sd:\app2sd目录下有install.sh, ext2.ko等文件。

第十一步、USB连接电脑

在windows中,开始-运行-cmd.exe,依次输入如下指令:

1
adb shell(进入手机的命令行)
2
su(获取root权限,回车之后手机屏幕上回出提示,点yes或者always)
3
cd /sdcard/app2sd/(进入到刚才解压好的app2sd目录)
4
sh install.sh
进行app2sd的操作,运行时电脑屏幕上出现yes和no的提示,按提示输入y回车

1
reboot选Y(选择后,手机将自动重启)
之后用手机上的超级终端,运行“su”命令,出现“#”提示即为获取了root权限。

如果有机友使用的是黯然失色beta4版本的机油,跳过第五步按以下步骤(前提是你没有删除sd卡里的itfunzupdate这个文件夹)。

1
su
2
cd /sdcard/itfunzupdate/bin
3
sh install.sh
待完成后重启手机即可。

总结:以上为Android手机的App2sd过程,可能很多机友乍一看相当麻烦,实际上过程还还是比较容易操作的,小编在测试过程中,root这一步相对较麻烦一些,经常提示错误,不过小心仔细一些,还是能够比较顺利的完成App2sd过程以及root权限的获取。

电脑端方法二:
1,利用sdk中的adb工具实现apptosd!!!

2,以下为简化的apptosd电脑端令命:
只有apptosd
进入cmd输入:
adb shell
su
busybox df -h
(如果你的卡成功分区的话。在这里会看到 system/sd 前面的大小会是你分出来ext2的大小。如下图第十一行。如果不是的话。那说明你的卡很可能分错了。要重来。)

3,如图:图中为机子的8g卡。
留意第十一行 416.8M 11.0M 385.0M 3% /system/sd


这是卡中的一个416.8m的EXT2分区。如果你也有这一项。那你可以完成接下来的工作了。

4,注意!
一定要先查看有没有ext2分区。即 /system/sd/ 和你的ext2分区应一样大小 才能继续下面的步骤。不然很可能会出错。
mkdir
/system/sd/app
cp -a /data/app /system/sd
rm -r /data/app
ln -s /system/sd/app /data/app
reboot

5,只做apptosd不而要缓存也放入sd的请直接跳过这一步骤!
以下指令比较复杂。是把缓存也放入sd中。做完上面的指令可无视以下的。也不建议大家使用下面的。仅作参考!
adb shell
su
busybox df
-h
(如果你的卡成功分区的话。在这里会看到 system/sd 前面的大小会是你 分出来ext2的大小。如下图第十一行。如果不是的话。那说明你的卡很可能分错了。要重来。)

6,如图:图中为机子的8g卡。
留意第十一行 416.8M 11.0M 385.0M 3% /system/sd


这是卡中的一个416.8m的EXT2分区。如果你也有这一项。那你可以完成接下来的工作了。
mkdir /system/sd/app
(红色部份为app to sd )
cp -a /data/app /system/sd/
cp -a/data/app-private /system/sd/
(缓存也放到sd会减慢系统速度。也不建议大家用。)
cp -a /data/dalvik-cache /system/sd/
(灰色部份。如果你不想把缓存也放到sd可以不用这几个 。)
cp -a /data/data /system/sd/
exit
exit

7,完成后,重启手机并进入recovery mode 就是HOME + PROWER。

8,然后ALT + X进入recovery terminal
按下手机键盘上的ENTER。
然后在手机上输入以下指令:
mount data
(红色部份为app to sd )
rm -rf /data/app
ln -s /system/sd/app /data/app
rm -rf /data/app-private
(灰色部份为cache to sd )
ln -s /system/sd/app-private /data/app-private
(如果你之前跳过了把缓存放到sd卡请不要输入。)
rm -rf /data/data
ln -s /system/sd/data /data/data
rm -rf /data/dalvik-cache
ln -s /system/sd/dalvik-cache /data/dalvik-cache

reboot

9,如何知道成功没有:在重启后装入一个软件。
利用adb工具输入以下指令 :
adb shell ls /system/sd/app/

10,如果看到你刚装入的软件那你就ok啦!!!
以后刷机。只要刷回apptosd版本只要重覆
adb shell
su
busybox df -h
cd /data
cp -a app /system/sd
rm -r app
ln -s /system/sd/app /data/app
reboot
以上的adb 指令。
装在sd卡的app就能回覆。
不用重装了。

转载请注明出处:http://www.onexin.net/apptosd-an ... he-sd-card-details/
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|Java学习者论坛 ( 声明:本站资料整理自互联网,用于Java学习者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

GMT+8, 2025-1-11 07:41 , Processed in 0.395208 second(s), 48 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表