(本人也是新人,刚买手机一个月,所以有说错的地方望高手改正,谢谢)
Android手机官方Ruu刷机系统添加a2sd+攻略
    对于为android手机添加a2sd+的能已经是老生常谈了,在网上一搜一大堆,但是基本上都是针对已经刷了支持a2sd+Rom而言,提供了如何添加a2sd+补丁包如何打开a2sd+功能的教程,而针对不支持a2sd+Rom(比如官方的rom)提及不多。
    本文将对以上情况做一个补充,好多东西也是自网上得来,只不过用笔者的语言阐述而已。因为时间关系,省略了好多分支操作步骤说明方法,请自行查。
一. 基础知识
1. app2sd 也可以说是官方的app2sd功能,就是在安装完程序后,在应用程序管理点击进入程序,会有一个 移至SD 的选项,就是把程序移动到sd卡的FAT32分区,从而达到节省手机内存的目的,但是经过验证,并不是所有的程序都能移至SD卡,部分数据和缓存还是在手机内存里,而且当我们用USB线连接电脑并选择可移动磁盘模式时,SD卡即被电脑占据,从而在手机上就无法运行安装在SD卡内的程序了,只是在桌面显示了一个失效的链而已。
2. app2sd+(a2sd+) 这种方式完美的解决了上边的app2sd的不足,首先,它要在SD卡上多分出一个ext(推荐ext3)分区,另一个分区则是我们的普通fat32分区,也就是在电脑上可以看到的可移动磁盘分区。这样做的目的就是要把软件都安装到ext分区上,程序的数据和缓存也可以都放到此ext分区目录里,而且当以可移动磁盘模式连接电脑时,系统便把SD卡的fat32分区的使用权移交给电脑,而ext分区还是由手机来使用,这样,在可移动磁盘中做任务操作也不会影响到ext分区的程序。
3. app2sd+原理
上边只是说了实现a2sd+后会所程序安装到ext分区,具体原理没说明白。
大家都知道在windows下有一种文件叫做快捷方式吧,同样,在android系统里也可实现此功能。比如,在android系统中,系统把程序放在了/data/app文件夹里,把程序缓存放入/data/dalvik-cache文件夹,把程序用到的数据放到了/data/data文件夹,而/data/app-private放置的是一些加密程序数据,而android又根本不支持转移data下边的这几个目录到sd卡,怎么办呢,有民间高手就想到把windows里的快捷方式的原理搬到这里,在sd卡的ext分区中建立以上几个目录,并用link方式把这几个目录挂载到手机内存中的/data/…中的几个目
录里,也就是说现在存放在/data/中的几个目录只是指向sdext分区中的目录的快捷方式,当手机安装程序到内存中的/data/app时,就会立即被快捷方式指向了sd卡的ext分区目录,而手机操作系统却还以为安装到的是自身的内存目录中,同理其它几个目录也一样,这样就以通过这种方式对操作系统进行欺骗,从而达到节省手机内存的目的。
二. A2sd+的开启条件和具体实现方法
先说说实现a2sd+功能的几个条件:
root 获取超级权限(相当于电脑的管理员) 这个不用说了吧,大部分机油拿到手机做的第一件事就是获取root权限
rom支持  刚刷过官方系统后,它的rom是不支持a2sd+的,甚连ext分区都无法识别
a2sd+程序 也就是一个a2sd+的补丁包,它包含了开启a2sd+的一些命令
实现方法(本文主要是针对不支持a2sd+的官方的Ruu来操作)
    注:如果你的手机已经做过下述的某项操作,你可以跳过该步骤开始后续操作
        如果你的手机不是天生S-OFF,建议关闭本窗口,刷出问题本人概不负责
    先说下我的操作环境:
    手机:型号 HTC G7 (水货白卡机 销售地 法国)
完全刷入8月初官方放出的android 2.3.3版本的RUU
(在刷入这个ruu的时候,记得在ruu刚启动时先别操作去C盘也就是系统盘的根目录到“C:\Documents and Settings\当前用户名\Local Settings\Temp”位置,再去里边的一串很很字符串的目录,在它的二级子目录里有个rom.zip,把这个文件复制出来备用,可以直接搜索系统盘,然后到大约是160M左右的rom.zip)
          Recovery 替换成了 clockmod 3.0.2.7
    电脑:windowsXP 系统
          安装好adb驱动(手机以仅充电模式连接电脑时所用的驱动)
安卓系统下载
          安装 HBoot驱动,手机进入hboot模式并用USB连接电脑时所用的驱动
1. 开启超级权限(root)
在网上有N多的一键root工具,听里说android2.3.3可能一次不能成功多用几次,总有一次能成功,不知是否可行,所以本人用的是下边的方法,100%成功:
a) 下载附件 “Android 2.3.3 Root工具包.rar”并把其中的root文件夹移动C盘根目录
b) 依次点击开始-运行弹出对话框中输入“cmd”回车,进入到dos命令行窗口
c) 手机关机, 同时按 音量减 + 电源 键进入到hboot模式,等一会,再用音量减键把光标移动到fastboot菜单,点击电源键进入到fastboot界面,此时如果没装hboot驱动会提示安装,选择我们下载的驱动文件夹即可。一定要在设备管理器中看到Android Phone 这个设备才算安装成功。
d) 驱动装好后把光标移动到BOOTLOADER菜单并选择,返回到HBOOT界面,选择RECOVERY菜单,等待手机重启进入到RECOVERY模式,我的手机是RECOVERY 3.0.2.7(仅以此版本做操作说明)
e) 进入到RECOVERY后完全用轨迹球可以操作,其它手机自已测,选择“mounts and storage”- “mount /system”挂载system分区,同样点击“mount /data”“mount /sdcard”挂载data分区和sd卡的fat32分区,这时拨出数据线再插入。
f) 电脑操作:在我们刚刚打开的dos窗口中依次输入以下命令:
Adb shell
Adb push su /sdcard
Adb push superuser.apk /sdcard/superuser.apk
Adb push psneuter /data/local/tmp/psneuter
Adb shell chmod 777 /data/local/tmp/psneuter
Adb shell /data/local/tmp/psneuter
执行后,在手机上点击返回键一直回到RECOVERY主目录,然后点击reboot now重启手机到桌面系统。
这时应该就可以root完成了,可以试试用root explorer看看能不能获取root权限,如果不行,在网上下载一个superuser.apk(授权管理)最新版安装后即可授权成功
2. 修改 boot.img让系统支持开启a2sd+
这步比较复杂,需要操作人员有更进一层的电脑知识
在电脑上安装Linux虚拟机(我用的是Virtual Box,网上自行下载),下载一个linux光盘镜像安装到虚拟机里,以上内容省略,只说下边的如何解压
安装好Linux系统后先关掉linux虚拟机,在配置里分西好数据空间,比如我们可以在D盘的根目录下建一个名字为“linshi”的文件夹,然后把这个文件夹配置成虚拟机的数据空间,启动虚拟机,点击设备-安装增强功能等待安装完成。
在网上搜索为虚拟机实现root权限,在此就略过了
获取虚拟机的root权限后,点击左上角的应用程序-附件-终端打开命令行窗口
输入:su  回车
mkdir /mnt/linshi 回车
      mount -t vboxsf linshi /mnt/linshi 回车 把数据空间挂载到了/mnt/linshi目录
windows中把我们之前从Ruu里提取出来的rom.zip解压,把里面的boot..img拷贝到linshi目录
windows中将下载的解压打包工具中的两个文件(split_bootimg.pl mkbootfsmkbooting三个)先放入linshi,再去虚拟机中把linshi目录里的这两个文件拷贝到/bin目录下
反回命令行继续输入
输入:cd /mnt/linshi 回车
split_bootimg.pl boot.img 回车 
此时linshi目录中多出了两个文件boot.img-kernel
输入:
Mkdir ramdisk;cd ramdisk  回车 建立ramdisk目录并进入
gzip -dc ../ | cpio –i 回车  解压这个文件
这时在ramdisk目录里就是解压出来的文件,我们要修改里面的default.prop文件
至于修改哪些地方大家可以把下载的附件和刚刚解压出来的文件进行对比,然后把这两个文件替换了即可。
打包文件
输入cd ..退回到linshi目录
输入 mkbootfs ramdisk |gzip & 回车
这里linshi目录里多出一个文件,这就修改过后的文件
输入 mkbootimg --kernel boot.img-kernel -- --base 0x20000000 -o boot.img 回车
重新把内核和打包成boot.img文件
这时再把boot.img文件做成刷机包刷入手机
刷入:
boot.img放入C盘根目录的root文件夹
重启手机进入recovery,按第1步中的e)步,加载system,data,sdcard
电脑运行
Cd\root 回车
adb push flash_image /sdcard/flash_image flash_image文件推送到SD
adb push boot.img /sdcard/boot.img      boot.img 推送到SD
adb shell                              进入手机命令行
cp /sdcard/flash_image /system/bin/      复制flash_image到系统目录
flash_image boot /sdcard/boot.img        刷入boot.img
重启手机后,此系统便支持a2sd+的开启
   
3. 刷入a2sd+补丁包
将下载的a2sd.zip通过recovery刷入手机并重启手机到桌面
Recoveryzip不用我说了吧
4. 开启a2sd+功能
手机开机到桌面,以仅充电的模式连接电脑

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。