2013-11-03 182 views
15

我正在將Micode的開源指南針集成到我正在製作的應用程序中。我很想知道,如果我明確地在我的清單中聲明瞭正確的拼寫,我該如何解決此處的權限錯誤。它仍然出現,我需要這種許可。我該怎麼做:這需要android.permission.INTERACT_ACROSS_USERS_FULL

這是我百思不得其解......

11-03 13:53:58.241: E/AndroidRuntime(8975): Caused by: \ 
    java.lang.SecurityException: Permission Denial: registerReceiver from \ 
    net.micode.compass asks to run as user -1 but is calling from user 0; this \ 
    requires android.permission.INTERACT_ACROSS_USERS_FULL 
+0

Raghav有權..這是一個簽名級別的權限,除非它具有相同的系統簽名,即您已經自己構建系統並且已使用自己的密鑰簽名,否則不能在您的應用中使用它。順便說一句,你能告訴我哪一段代碼產生了這個異常嗎?我只是好奇而已.. –

回答

27

android.permission.INTERACT_ACROSS_USERS_FULL是簽名級別的權限。除非它與系統具有相同的簽名,否則您的應用程序將無法使用它。

+10

除非你是創建者或者系統構建者,否則你不可能獲得這些東西,或者與他們合作使他們願意用你的證書籤名你的apk。換句話說,這對大多數開發人員來說是不受限制的。 –

+8

那該怎麼辦?爲什麼發生這種情況? – 5er

+0

如何添加此權限...?這是正確的方式嗎? Vlad

6

我有同樣的問題,我做了項目 - >清潔。它現在有效。