Android無(wú)root,獲取其他應(yīng)用內(nèi)部存儲(chǔ)的數(shù)據(jù)

前言

最近在負(fù)責(zé)一個(gè)項(xiàng)目,需要獲取其他應(yīng)用的內(nèi)部存儲(chǔ)中的文件,即data/data/下的文件,并轉(zhuǎn)存到sdcard上。有一點(diǎn)Android基礎(chǔ)的都知道data/data/中的文件對(duì)其他應(yīng)用是不可見(jiàn)的,在沒(méi)有源碼的條件下,無(wú)法直接訪問(wèn)data/data中的文件。問(wèn)了公司的大佬,大佬提供了兩種思路,一種是run-as命令進(jìn)入data/data,直接copy;另一種是hook。具體怎么實(shí)施,且聽(tīng)我慢慢道來(lái)。

方法一,run-as命令

條件:

安裝包是debug包(release包也可以利用反編譯重新打包,變成debug包,網(wǎng)上有很多文章可以參考)

步驟:

1、連接手機(jī)到電腦,打開(kāi)usb調(diào)試

2、命令行中輸入 adb shell run-as <包名>

示例:

1.png

com.ss.android.ugc.aweme(抖音)不是debug包,無(wú)法使用run-as命令。

com.example.yilialin.jsonreport(我自己寫的app)是debug包,使用run-as命令可以進(jìn)入data/data目錄下,輸入ls,可以看到data/data目錄下的所有文件/文件夾

3、輸入 cat <文件名> > <sdcard中的文件名>?,直接拷貝到sdcard中

示例:

2.png

不出現(xiàn)任何提示,表明已經(jīng)成功拷貝到了sdcard中。

優(yōu)點(diǎn):

幾行命令直接搞定

缺點(diǎn):

1、需要手工敲命令,難以實(shí)現(xiàn)自動(dòng)化

2、debug包才能使用

方法二,hook神器——xposed插件

條件:

沒(méi)有限制,安裝包是release包或者debug包都可以,手機(jī)不需要root

步驟:

有關(guān)于xposed插件可以參考文章:https://blog.csdn.net/yzzst/article/details/47659479

https://blog.csdn.net/niubitianping/article/details/52571438

https://blog.csdn.net/niubitianping/article/details/52574650

其實(shí)無(wú)root也是可以使用virtualxposed的,將xposed插件和想要hook的app克隆到virtualxposed中就可以使用了。

優(yōu)點(diǎn):

不受root權(quán)限和debug包的限制

缺點(diǎn):

前期需要做的事情多,xposed插件編寫比較麻煩


后序

我研究了幾個(gè)星期的xposed hook,才學(xué)會(huì)了怎么使用,原理還不是特別明白,先用著吧==

聽(tīng)別人說(shuō)再多也只是紙上談兵,關(guān)鍵是要自己動(dòng)手操作,有很多問(wèn)題都是在實(shí)施的過(guò)程中出現(xiàn)并解決的,在問(wèn)題中學(xué)習(xí)不失為一種好方法。

干貨

奉上我的xposed插件,供學(xué)習(xí)參考,有什么不對(duì)的地方,還望不吝賜教!

https://github.com/Yiliayan/douyinxposed.git

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,036評(píng)論 25 709
  • 用兩張圖告訴你,為什么你的 App 會(huì)卡頓? - Android - 掘金 Cover 有什么料? 從這篇文章中你...
    hw1212閱讀 13,992評(píng)論 2 59
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,554評(píng)論 19 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,273評(píng)論 6 342
  • “天!茅十八就這么死了嗎?啊啊啊啊,不要啊~~” “淡定點(diǎn)淡定點(diǎn)…不就是電影嘛。馬上要下班了,快想想等會(huì)吃啥” “...
    三只咸魚閱讀 5,583評(píng)論 0 2

友情鏈接更多精彩內(nèi)容