日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > Android >内容正文

Android

Android不刷机下的app2sd方法(dex cache占空间解决篇)

發(fā)布時(shí)間:2024/3/12 Android 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android不刷机下的app2sd方法(dex cache占空间解决篇) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

抱著5年的HTC G7這個(gè)古董,一直沒(méi)有想法去換換。

最近微信、支付寶什么的apk應(yīng)用都開(kāi)始走程序巨型化,一次性就來(lái)個(gè)50MB的空間占用,讓還是Android 2.2的手機(jī)如何吃的消?

看看100多MB的空間,這家里家外都用微信,得裝一個(gè)吧;大家一起出去吃飯,一人付賬,AA結(jié)得有支付寶;還有12306火車票啦,手機(jī)銀行什么的;

加上pm setInstallLocation 2也沒(méi)有解決dex cache占空間的問(wèn)題。

于是隨著需求的日益強(qiáng)烈,終于要想辦法把Android的存儲(chǔ)空間擴(kuò)展下了。網(wǎng)上好多刷機(jī)的教程啊,我個(gè)人倒不喜歡刷機(jī),刷錯(cuò)一次還得再改再重新刷,太麻煩。

所以準(zhǔn)備好環(huán)境:

- 玩具筆記本Acer一臺(tái),裝有Ubuntu,Android SDK和NDK

- HTC G7手機(jī),裝有原版Android 2.2


首先,我們簡(jiǎn)單過(guò)一下存儲(chǔ)擴(kuò)展的原理:

- Android 2.2中,app應(yīng)用分別裝在兩個(gè)地方,一個(gè)是/system/app中,一個(gè)是/data/app中。

- 官方的app都帶有odex文件加速應(yīng)用啟動(dòng),一般在/system/app里;以后下載安裝的app一般在/data/app,手機(jī)啟動(dòng)到桌面后apk應(yīng)用程序(apk實(shí)際就是個(gè)zip,16進(jìn)制看下magic是PK便是)里的內(nèi)容會(huì)被解壓,其中最重要的就是dex文件,會(huì)被放入/data/dalvik-cache中,程序的數(shù)據(jù)會(huì)放入/data/data中。

為了所有程序的穩(wěn)定,決定不動(dòng)/data/data;轉(zhuǎn)而進(jìn)攻的方向就是/data/app和/data/dalvik-cache,它們是在手機(jī)內(nèi)置存儲(chǔ)里的,目標(biāo)就是把這兩個(gè)目錄指向sdcard,這樣以后安裝的apk就直接進(jìn)sdcard了。


Step 1. ROOT權(quán)限

這里就不多敘述如何ROOT了,其實(shí)你不ROOT,手機(jī)關(guān)機(jī),按住音量減開(kāi)機(jī)就進(jìn)入recovery模式,這時(shí)連上電腦用adb shell進(jìn)去就是root。當(dāng)然一鍵ROOT方便了不少。

大家還可以學(xué)習(xí)一下ROOT相關(guān)的代碼:https://github.com/ChainsDD/su-binary

其實(shí)改改那個(gè)su.c,用NDK編譯一下,扔進(jìn)/system/bin,chmod 6777,就可以隨時(shí)ROOT了,只是把驗(yàn)證把關(guān)去掉不太安全,還是加個(gè)apk,過(guò)一下列表比較好。


Step 2. 準(zhǔn)備磁盤空間

網(wǎng)上一堆格式化磁盤分區(qū)的做法,把sdcard變?yōu)閑xt2等格式,那我還得備份數(shù)據(jù)啊,太討厭。

在Ubuntu上建一個(gè)磁盤文件,用loop設(shè)備就比較輕松(這里給它們總共500MB,應(yīng)該能裝不少應(yīng)用了吧,改天Hack下看怎么在arm上編LXC玩,順便把以前編譯好的vim也放進(jìn)去,后面就可以隨時(shí)編輯文本了):

dd if=/dev/zero of=app.img count=1 bs=300MB dd if=/dev/zero of=cache.img count=1 bs=200MB mkfs.ext2 app.img mkfs.ext2 cache.img

Step 3. 編寫切換腳本

手機(jī)USB連接,把那倆img文件放進(jìn)sdcard里,比如放在/sdcard/extraspace/app.img /sdcard/extraspace/cache.img:

adb shell mkdir /sdcard/extraspace exitadb push app.img /sdcard/extraspace/ adb push cache.img /sdcard/extraspace

(話外:順便提一下,最好在recovery模式下把busybox取出來(lái)放到/system/bin里,HTC G7 Android 2.2那個(gè)toolbox實(shí)在是太…

adb reboot recovery # 等待手機(jī)啟動(dòng)到recovery模式 adb shell mount /system cp /sbin/busybox /system/bin cd /system/bin # 下面兩個(gè)工具很重要 ln -s busybox mknod ln -s busybox losetup # ls -l 看看哪些常用命令經(jīng)常用,把toolbox替換為busybox rm cat ls cp mount umount mv df ln -s busybox cat ln -s busybox ls ln -s busybox cp ln -s busybox mount ln -s busybox umount ln -s busybox mv ln -s busybox df)

下面就是寫個(gè)腳本從內(nèi)置存儲(chǔ)切換到sdcard模式:

#!/bin/sh#loop的0和1被占用了,從2開(kāi)始用,這里我用3 4 mknod /dev/loop3 b 7 3 mknod /dev/loop4 b 7 4 losetup /dev/loop3 /sdcard/extraspace/app.img losetup /devv/loop4 /sdcard/extraspace/cache.img mount -o loop -t ext2 /dev/loop3 /data/app mount -o loop -t ext2 /dev/loop4 /data/dalvik-cache # 記得給權(quán)限,如果保留為root:root,升級(jí)程序,它還是原來(lái)的,刪除apk程序,重啟手機(jī)又回來(lái)了 chown system:system /data/app chown system:system /data/dalvik-cache # 重新加載一遍所有apk程序,關(guān)了好多程序,終于給我逮著了 PID=$(ps | grep "/system/bin/servicemanager" | grep -oE "system +[0-9]+" | grep -oE "[0-9]+") kill -9 $PID要是想切換回去: umount /data/app umount /data/dalvik-cache losetup -d /dev/loop3 losetup -d /dev/loop4 rm /dev/loop3 /dev/loop4 PID=$(ps | grep "/system/bin/servicemanager" | grep -oE "system +[0-9]+" | grep -oE "[0-9]+") kill -9 $PID以上的腳本是要在ROOT下運(yùn)行的,就是su過(guò)了

Step 4. 驗(yàn)收

把切換那個(gè)腳本寫為app2sd.sh,然后adb push到/data/local/tmp。之后安裝個(gè)Terminal的apk應(yīng)用,在手機(jī)上: su cd /data/local/tmp sh app2sd.sh 啟動(dòng)畫面結(jié)束后,使用一下:adb install com.tencent.mm-1.apk,OK安裝完畢,內(nèi)置容量幾乎不減少了,登錄下瞬間又少了8MB(我暈,騰訊,你是要吃我磁盤的么;阿里支付寶也是如此…),因?yàn)闆](méi)有把/data/data也映射到sdcard,據(jù)說(shuō)手機(jī)會(huì)變很慢,所以有空間用就好了,下面裝了一堆應(yīng)用,貌似那個(gè)100多MB的植物大戰(zhàn)僵尸也可以安裝了。 今天就玩到這里了,昨天二號(hào)玩具TP-LINK來(lái)了,看看OpenWRT,想想怎么hack DIY自己的路由器吧。哈哈,下禮拜從亞馬遜買的其他玩具也要陸續(xù)來(lái)啦。
J.Y.Liu 20141025







總結(jié)

以上是生活随笔為你收集整理的Android不刷机下的app2sd方法(dex cache占空间解决篇)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 户外少妇对白啪啪野战 | 亚洲午夜视频在线 | 欧美日韩一区二区三区69堂 | 成人网在线播放 | 精品福利三区3d卡通动漫 | 制服诱惑一区二区三区 | 久草成人在线 | 男人猛吃奶女人爽视频 | 狠狠插狠狠操 | 美女扣逼喷水视频 | 在线观看日批视频 | 中国美女黄色一级片 | 国产无遮挡又黄又爽 | 天堂资源网| 精品少妇视频 | 精品亚洲国产成av人片传媒 | 久久国产这里只有精品 | 亚洲成a人片77777精品 | 一区二区三区日本视频 | 巨乳免费观看 | 91精品视频一区二区三区 | 久久久久久久久一区 | 欧美日免费| 日日狠狠久久偷偷四色综合免费 | 亚洲区国产区 | 日本不卡高字幕在线2019 | 在线播放a | 免费成人高清在线视频 | 国产乱人伦精品一区二区 | 国产ts系列| 免费视频网站在线观看入口 | 色999在线观看 | 久久伊人99 | 国产欧美精品一区二区色综合朱莉 | 在线国产黄色 | 欧日韩av| 婷婷久久精品 | 激情亚洲视频 | 成人精品一区二区三区电影 | 超碰人体 | 欧美福利视频在线观看 | 欧美丰满老熟妇xxxxx性 | 爱情岛论坛自拍亚洲品质极速最新章 | 国产剧情av在线 | 欧美人狂配大交3d | 师生出轨h灌满了1v1 | 欧美裸体xxx | 欧美日b片 | 黄色国产在线播放 | 欧美激情性做爰免费视频 | 超碰网站在线观看 | 好吊操精品视频 | 国产乱国产 | 欧美午夜大片 | 羞羞羞网站| 国产欧美在线视频 | 一级毛毛片 | 国产一区二区三区视频播放 | 亚洲欧洲一区二区三区 | 免费男女乱淫真视频免费播放 | 香蕉视频99 | jizz日本18 | 欧美黑丝少妇 | 99热思思 | 手机av在线看 | 色优久久 | 在线日韩 | 波多野结衣一区二区三区四区 | 欧美成人精品一区二区综合免费 | 懂色av一区二区三区四区五区 | 青青草这里只有精品 | 伊人久久免费视频 | 91一起草 | 国产一级特黄毛片 | 成人福利视频导航 | 久久免费在线观看视频 | 无码精品国产一区二区三区 | 国产精品系列在线播放 | 香蕉在线观看 | 免费成人深夜小野草 | 精品二区在线 | 久久网站免费 | 日韩一二三区 | 天堂无乱码 | 国产三级精品三级在线 | 日韩有码中文字幕在线 | 日韩一区二区三区四区 | 久久久久久久久久久网 | 国产女主播在线观看 | 日韩无 | 黑人玩弄人妻一区二区绿帽子 | 欧美黑人性受xxxx精品 | 人妻av无码一区二区三区 | 国产香蕉尹人视频在线 | 婷婷色基地 | 中国色老太hd | 美女午夜视频 | 中文一区二区在线观看 | 亚洲黄色小说网 |