2011-09-22 51 views
1

我使用下面的代碼添加賬戶到賬戶列表讓來電者UID 10066是不同於認證的UID

final AccountManager accountMgr = AccountManager.get(this.getApplicationContext()); 
Account ac = new Account("my.id","com.google"); 
try{ 
     accountMgr.addAccountExplicitly(ac, "password", null);} 
catch(Exception e){ 
String str = e.getLocalizedMessage(); 
Log.e("err",str); 
} 

但得到以下錯誤每次: 「來電者UID 10066比認證的UID不同的」

回答

3

以下計算器問題似乎解決該問題:

SecurityException: caller uid XXXX is different than the authenticator's uid

它鏈接到的文章(http://loganandandy.tumblr.com/post/613041897/caller-uid-is-different)解釋了整個事情,但是花了我一分鐘才明白我的代碼中最後一個xml代碼片段所指的是哪一部分。

我最終將我的帳戶類型和身份驗證令牌類型存儲在我的strings.xml中,並根據需要在authenticator.xml和代碼中引用它們。

+0

好主意,只存儲一次,並從兩個地方引用它。 – poolie

+0

@Tzrlk你可以請你在做什麼時顯示一些代碼?謝謝! – Mbrevda

+3

因此即使我的XML文件中沒有不匹配,我仍然會發生這種崩潰。事實上,崩潰是在很少人的設備上隨機發生的。這一切發生在你們身上嗎? – clu