訪問 Android 私有數(shù)據(jù)

簡評:在開發(fā)調(diào)試過程中磨隘,總會免不了需要訪問到應(yīng)用的私有數(shù)據(jù)沸枯,這里就介紹下如何訪問非 root 設(shè)備的應(yīng)用私有數(shù)據(jù)。

Android 官方介紹中有下面這幾種方式來存儲數(shù)據(jù):

  • Shared Preferences :鍵值對的方式存儲私有數(shù)據(jù)。
  • Internal Storage:存儲在設(shè)備內(nèi)存中(私有數(shù)據(jù))奥此。
  • External Storage :存儲在共享的外部存儲中(公共數(shù)據(jù))。
  • SQLite Databases :結(jié)構(gòu)化的將數(shù)據(jù)存儲在設(shè)備數(shù)據(jù)庫中雁比。
  • Network Connection :使用網(wǎng)絡(luò)服務(wù)器存儲數(shù)據(jù)稚虎。

SharedPreferences 和 SQLite 數(shù)據(jù)庫中的數(shù)據(jù)都是私有的,無法被其他應(yīng)用和用戶訪問到偎捎,除非是模擬器或 root 后的設(shè)備蠢终。下面就介紹下如何在開發(fā)調(diào)試中訪問這些私有數(shù)據(jù)。

訪問私有文件

如果是模擬器或 root 后的設(shè)備茴她,就不需要多說了寻拂。你已經(jīng)有了訪問設(shè)備中私有文件的權(quán)限,可以直接通過 Android Device Monitor 或者命令行來進行訪問丈牢。

對于未 root 的設(shè)備祭钉,則可以使用命令行:

adb shell
run-as <app-package-name>
cd data/data/...

訪問 SQLite 數(shù)據(jù)庫文件

可以使用 SQLite browser 來查看數(shù)據(jù)庫內(nèi)容和執(zhí)行簡單的 SQL 腳本。也可以直接用 sqlite3 命令行工具:

adb shell
cd data/data/<your package-name>/databases/
sqlite3 <db-name>
.tables
.schema <table-name>

擦除應(yīng)用數(shù)據(jù)

當(dāng)我們想擦除應(yīng)用的 SharedPreferences 或 SQLite 數(shù)據(jù)庫數(shù)據(jù)時己沛,通常有兩個方法:

  • 卸載慌核、重裝應(yīng)用。
  • 到系統(tǒng)設(shè)置中找到你的應(yīng)用程序申尼,然后點擊存儲/清除數(shù)據(jù)垮卓。

但其實有一個 Android Studio 插件 - ADB Idea 能有效簡化這項工作。只需要在 Android Studio / Preferences / Plugins 中搜索 'ADB Idea' 安裝师幕,然后在 Tools / Android / ADB Idea 里面點擊相應(yīng)的選項就可以啦粟按。

另外,也可以使用 Facebook 的 Stetho 來訪問 Android 設(shè)備中的私有文件(無需 root),還能通過 Chrome Developer Tool 來調(diào)試 App钾怔,值得一試碱呼。

原文:Access Private Data on Android
歡迎關(guān)注知乎專欄「極光日報」,每天為 Makers 導(dǎo)讀三篇優(yōu)質(zhì)英文文章宗侦。

擴展閱讀:

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末愚臀,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子矾利,更是在濱河造成了極大的恐慌姑裂,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件男旗,死亡現(xiàn)場離奇詭異舶斧,居然都是意外死亡,警方通過查閱死者的電腦和手機察皇,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進店門茴厉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人什荣,你說我怎么就攤上這事矾缓。” “怎么了稻爬?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵嗜闻,是天一觀的道長。 經(jīng)常有香客問我桅锄,道長琉雳,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任友瘤,我火速辦了婚禮翠肘,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘辫秧。我一直安慰自己锯茄,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布茶没。 她就那樣靜靜地躺著,像睡著了一般晚碾。 火紅的嫁衣襯著肌膚如雪抓半。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天格嘁,我揣著相機與錄音笛求,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛探入,可吹牛的內(nèi)容都是我干的狡孔。 我是一名探鬼主播,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼蜂嗽,長吁一口氣:“原來是場噩夢啊……” “哼苗膝!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起植旧,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤辱揭,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后病附,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體问窃,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年完沪,在試婚紗的時候發(fā)現(xiàn)自己被綠了域庇。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡覆积,死狀恐怖听皿,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情技健,我是刑警寧澤写穴,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站雌贱,受9級特大地震影響啊送,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜欣孤,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一馋没、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧降传,春花似錦篷朵、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至段只,卻和暖如春腮猖,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背赞枕。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工澈缺, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留坪创,地道東北人。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓姐赡,卻偏偏與公主長得像莱预,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子项滑,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,510評論 25 707
  • afinalAfinal是一個android的ioc依沮,orm框架 https://github.com/yangf...
    passiontim閱讀 15,401評論 2 45
  • 時針走到了凌晨兩點悉抵,這座城市已經(jīng)進入了夢鄉(xiāng)。忙完工作的我摘完,原本也該跟這座城市一樣進入夢鄉(xiāng)姥饰,做一個甜美的夢。 很可惜...
    二木叮閱讀 515評論 0 2
  • 人生有很多種相遇孝治,而屬于你我的一段匆匆過往列粪,是否也該相信是緣的宿果?或許谈飒,世上有多少相識的際遇岂座,就會生出多少的離散...
    落之痕閱讀 178評論 0 5
  • 2017年10月26日星期四 距離18考研 57天 早餐6點50起床,7點40到教室杭措。 復(fù)習(xí)政治選擇題费什。 數(shù)學(xué)做了...
    sy_yunyi閱讀 169評論 0 0