2014-06-18 52 views
0

我試圖搜索這個特定的案例,但是還沒有發現任何東西。使用ContentProvider可以在兩個應用程序之間共享數據,並且您可以將protectionLevel設置爲signature,因此具有該簽名的應用程序可以訪問數據(同一發佈者)。在來自不同發佈商的應用程序之間共享數據

但是,如果方案如下:

  • 開發A和B發佈的應用程序。

  • 我,A和B決定一起做一些合作。我將提供我自己的應用程序,但我需要訪問A和B的私人信息。

這可能嗎? A和B將需要授予我的應用程序訪問他們讓我們說ContentProvider

謝謝。

回答

0

設置protectionLevelsignature將只允許訪問使用相同密鑰簽名的應用程序(在本例中爲A,B,並且您應該同意使用相同的密鑰簽署已發佈的應用程序)之間的數據。

如果不是這種情況,那麼A和B應該輸出他們的ContentProvider並(可選)提供讀取/寫入數據的權限。如果他們定義了權限,那麼你的客戶端應用程序應該在清單中指定這個權限。

參考文獻:

http://developer.android.com/guide/topics/manifest/provider-element.html http://developer.android.com/training/articles/security-tips.html

+0

做這樣一來,任何應用程序也可能獲得A和B的ContentProvider數據? – Niko

+0

是的。請記住,如果A和B導出其ContentProvider,則任何應用程序都可以訪問這些數據。如果他們定義了權限,那麼在安裝客戶端應用程序時由用戶來接受它們。 – aromero

+0

因此,沒有辦法授予對特定應用程序的訪問權限,無需與服務器通信即可獲得一些私有數據? – Niko

相關問題