米柚愛好者論壇

 找回密碼
 立即註冊
查看: 2894|回覆: 5
打印 上一主題 下一主題

[玩具快報] Android 4.4巨變:應用在SD卡上有了專屬區

[複製鏈接]

93

主題

3

好友

6263

積分

大四

Rank: 8Rank: 8Rank: 8Rank: 8

真實姓名
midaschen
跳轉到指定樓層
1#
發表於 2014-2-18 23:26:40 |只看該作者 |倒序瀏覽
Android 4.4巨變:應用在SD卡上有了專屬區

  


Android 4.4 KitKat雖然已經發佈很久了,還升級了好多次,但在浩如煙海的源代碼中,依然隱藏著大量的新東西等待挖掘,比如第三方應用對SD卡的訪問。

Android 系統手機有一套自己的存儲管理制度:幾乎任何類型的存儲設備都被稱為“外部存儲”(external storage),包括內部的NAND閃存,這個叫做“主要存儲”(primary storage),而其他的一切都是“次要存儲”(secondary storage),比如SD卡。

隨著 Android 系統的不斷升級,第三方應用對存儲的訪問權限控制經過了多次調整,詳細三說起來就複雜了,這裡重點說最早、最常用的寫入要求權限“ WRITE_EXTERNAL_STORAGE ”,它可以讓應用寫入主要存儲(內置閃存),但不能寫入次要存儲(SD卡)。

Android 4.4裡邊,對於對所有外部存儲,其上的文件屬性都改為基於文件夾結構,應用無需獲取WRITE_EXTERNAL_STORAGE權限,即可在外部存儲上管理與自己包名相關的文件夾。舉例來說,如果應用的包名是name com.example.foo,那麼外部存儲上的Android/data/com.example.foo/文件夾就是它的了,可隨意訪問。

這其中也包括SD卡,第三方應用可以在上邊創建一個屬於自己的專區,隨意讀寫、刪除,就像在內置存儲是各樣。

除此文件夾之外的其他地方,第三方應用仍然會被嚴格限制,得不到寫入和刪除權限。

不過這也存在一個潛在風險:SD卡是可以隨意插拔的,可以在電腦上訪問,因此可能會導致洩密。

另外需要特別注意的是,應用卸載的時候,在SD卡上創建的相應文件夾、數據都會被同時完全刪除,所以如果有照片、文檔等個人資料,應當避免這麼做。

最後,U盤等設備的訪問控制不在本文討論範圍之內。

最後的最後, Android 系統有自己的標準,OEM廠商、ROM開發者又有各自的一套,經常不會嚴格遵循Google制定的規則,因此剛才說的種種不一定會出現在你的手機裡。

[size=15.454545021057129px]內容由新浪北京提供



本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?立即註冊

已有 1 人評分經驗 收起 理由
日月光軍 + 2 讚!

總評分: 經驗 + 2   查看全部評分

195

主題

54

好友

1萬

積分

顧問團

Rank: 12Rank: 12

2#
發表於 2014-2-18 23:36:14 |只看該作者
我之前就一直在思考
為什麼系統不改成不限制 /data 下儲存資料
而是讓APP自己決定使用 /data 或是 外部儲存空間

雖然這樣會有安全性上的疑慮
但是其實兩個管道都開放,APP開發者自然會去考慮安全性的問題
而決定哪些資料要放在哪個區塊

Android 4.4 終於具體實現了
很多新手都會私訊問我問題。以後請統一在 問題求助 專區提問,在 @ 我 或是請其他人幫忙 @
一來我忙 時間不多,其他人會的話 會先協助您
二來是相關的討論內容,也可以給其他人當參考

68

主題

30

好友

1萬

積分

資源組

啾靠北的~~~啾啾

Rank: 12Rank: 12

3#
發表於 2014-2-18 23:53:53 |只看該作者
Google一直在擋,第三方一直在鑽....
柔弱生之徒,老氏誡剛強。

195

主題

54

好友

1萬

積分

顧問團

Rank: 12Rank: 12

4#
發表於 2014-2-18 23:57:25 |只看該作者
凱366 發表於 2014-2-18 23:53 static/image/common/back.gif
Google一直在擋,第三方一直在鑽....

是唷 我覺得這是比較好的方案耶

下班回家吃宵夜去
很多新手都會私訊問我問題。以後請統一在 問題求助 專區提問,在 @ 我 或是請其他人幫忙 @
一來我忙 時間不多,其他人會的話 會先協助您
二來是相關的討論內容,也可以給其他人當參考

62

主題

34

好友

2萬

積分

版主

論壇老灰阿

Rank: 12Rank: 12

5#
發表於 2014-2-19 00:01:01 |只看該作者
鸚鵡 發表於 2014-2-18 23:57 static/image/common/back.gif
是唷 我覺得這是比較好的方案耶

下班回家吃宵夜去

熊大( @愛米熊 )也該起床吃玻璃了
已有 1 人評分經驗 收起 理由
鸚鵡 + 3 無法同意你更多~

總評分: 經驗 + 3   查看全部評分

93

主題

3

好友

6263

積分

大四

Rank: 8Rank: 8Rank: 8Rank: 8

真實姓名
midaschen
6#
發表於 2014-2-19 00:10:50 |只看該作者
鸚鵡 發表於 2014-2-18 23:36 static/image/common/back.gif
我之前就一直在思考
為什麼系統不改成不限制 /data 下儲存資料
而是讓APP自己決定使用 /data 或是 外部儲存 ...

Android 4.4裡邊,對於對所有外部存儲,其上的文件屬性都改為基於文件夾結構,應用無需獲取WRITE_EXTERNAL_STORAGE權限,即可在外部存儲上管理與自己包名相關的文件夾。舉例來說,如果應用的包名是name com.example.foo,那麼外部存儲上的Android/data/com.example.foo/文件夾就是它的了,可隨意訪問。 應該是較開放了!

這其中也包括SD卡,第三方應用可以在上邊創建一個屬於自己的專區,隨意讀寫、刪除,就像在內置存儲是各樣。

除此文件夾之外的其他地方,第三方應用仍然會被嚴格限制,得不到寫入和刪除權限。

應該是為安全的問題!

總的來說還是不錯的!

已有 1 人評分經驗 收起 理由
鸚鵡 + 2 無法同意你更多~

總評分: 經驗 + 2   查看全部評分

您需要登錄後才可以回帖 登錄 | 立即註冊

手機版|米柚愛好者論壇

GMT+8, 2025-9-6 12:21 , Processed in 0.017314 second(s), 25 queries .

Powered by MIUI@EZBOX

© 2014-2025 EZBOX

回頂部