2012-03-19 35 views
1

我們如何訪問Android手機中的安全元素。 基本上我需要存儲一些安全的數據並檢索它,我只想要我的應用程序訪問這些數據。請讓我知道這些步驟。訪問Android中的安全元素

+0

「安全元素」是什麼意思?這可以是SIM卡,或者你已經用通信範圍內的nfc NFC標記標記了問題(或者你的意思是不同的東西)? – Robert 2012-03-19 16:20:49

+0

嗨羅伯特,我想知道是否有任何API找到安全元素(SIM或集成芯片等)的類型,如果是的話如何讀取/寫入數據的安全元素?聽說我們需要從MNO獲得證書,但我不知道如何實施它。根據AerandiR,Google不提供任何開箱即用的API。 – Shan 2012-03-21 07:42:46

回答

8

而Android不支持一個安全元件,並有一些代碼在內部關於它,有目前沒有相應的Java API(see available NFC APIs)。然而,有一種稱爲SEEK的努力,用於創建與SE(see the GitHub project)通信的開源堆棧,但這不是谷歌的官方實施。最後我聽說谷歌似乎傾向於不提供這樣的API。

+0

謝謝!似乎最好等到Google發佈一個API! – Shan 2012-03-21 07:28:31

+0

6年後,你的問題仍然相關。心靈恢復它嗎? – Giszmo 2018-03-03 01:18:54

-1

儲存於Android的SQLite數據庫數據。

這將存儲在應用程序沙箱,這樣,除非你給公共URI通過內容提供商對其進行訪問其它應用程序不能訪問它們。

+0

如果手機以某種方式植根或受到損害,該信息也將可用。安全元素沒有這個缺點。 – arnau 2017-03-13 08:55:58

-1

如果您有很少的元素來存儲..然後你可以嘗試使用共享偏好...他們是很容易創建,檢索和應用程序中修改值..和使他們的私人您application..use

getSharedPreferences(yourfile, MODE_PRIVATE); 
this make the file" your file" private for the application which created it.. 
現在

,如果你有大量的價值觀..然後SQLite數據庫是更好..

-1

默認情況下在安裝過程中的每個應用程序被分配一個唯一的Linux用戶ID(UID)。而且,在安裝過程中,會爲每個應用程序創建一個所謂的主文件夾(您可以將其想象爲普通Linux的用戶主文件夾)。在Linux中,只有該文件夾的所有者才能在Android中以相同方式默認訪問主文件夾(我們不考慮root用戶),只有具有特定UID的應用程序才能訪問主文件夾。因此,您的應用程序可以將數據存儲在其主文件夾中,而Linux內核將負責其他應用程序無法訪問該應用程序的此主文件夾。

因此,建議您可以將數據存儲在sqlite數據庫或sharedpreferences文件中,默認情況下它們存儲在應用程序的主文件夾中。