新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > Android文件訪問權限問題

        Android文件訪問權限問題

        作者: 時間:2016-09-12 來源:網絡 收藏

        在android開發,對于文件的訪問權限中說明我感覺不是很清楚,用了一個小例子來說明android創建文件,用另外一個應用去訪問創建的文件。

        本文引用地址:http://www.104case.com/article/201609/305202.htm

        在android文件創建的模式中使用MODE_PRIVATE創建文件,API中的解釋如下:

        File creation mode: the default mode, wherethe created file can only be accessed by the calling application (or allapplications sharing the same user ID)。

        對于我的理解,對于一個應用以MODE_PRIVATE模式創建的文件只能被調用的應用(或是共享相同的用戶ID的應用)訪問。

        context.MODE_PRIVATE:是默認的操作模式,它代表這個文件是私有的,只能被應用本身訪問。(網上這樣解釋的)

        save方法是通過filename,content來保存文件。

        public void save(String filename, String content) throws Exception{

        out = context.openFileOutput(filename, Context.MODE_PRIVATE);

        out.write(content.getBytes());

        out.close();

        }

        按照context.MODE_PRIVATE的解釋該filename的文件只能由該應用本身訪問。我嘗試另外寫了一個應用來對其該應用創建的文件進行訪問,創建的文件為123.txt,其屬性如下:

        //testAccessOtherAppFile()方法對123.txt進行訪問;位于另一項目中

        public class FileotherActivityTest extends AndroidTestCase {

        private static final String TAG = FileotherActivityTest;

        public void testAccessOtherAppFile() throws Exception{

        String path =/data/data/com.android/files/123.txt;

        File file = new File(path);

        FileInputStream in =new FileInputStream(file);

        byte[] buffer = new byte[1024];

        int len = 0;

        ByteArrayOutputStream out = new ByteArrayOutputStream();

        while(-1 != (len = in.read(buffer))){

        out.write(buffer, 0, len);

        }

        //得到文件的二進制數據

        byte[] data = out.toByteArray();

        out.close();

        in.close();

        Log.i(TAG, new String(data));

        }

        }

        testAccessOtherAppFile方法應用不能訪問到123.txt,但是在運行這個androidjunit testcase的時候logcat正常輸出了文件內容:

        簡單的分析了下原因,在這兩個應用中是不是說明API中的all applications sharing the same user ID,private模式創建的文件可以由創建該文件的應用訪問以及與使用user ID的所有應用所訪問,這里的user ID,我理解的是:物理機器的環境或是同一模擬器。所以,正常訪問到另一應用創建的文件。

        兩個項目的目錄結構:



        關鍵詞:

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 桐柏县| 汨罗市| 竹北市| 罗源县| 修武县| 玉溪市| 广州市| 时尚| 桃源县| 曲水县| 驻马店市| 丰台区| 密山市| 安乡县| 都昌县| 和田市| 景泰县| 宿迁市| 建始县| 什邡市| 牟定县| 亳州市| 张北县| 曲麻莱县| 嵩明县| 永丰县| 东乌珠穆沁旗| 富锦市| 广河县| 弋阳县| 工布江达县| 广东省| 花莲县| 金乡县| 高清| 将乐县| 湘阴县| 雅安市| 习水县| 裕民县| 玉树县|