2011-03-22 74 views
1

我试图找回谷歌帐户的密码,但得到 安全异常上检索配置邮件的密码。如何将Android手机

此外,我已授予androidManifest.xml到 权限account_manager,aunthenticator,get_account,管理帐户。

android.accounts.Account[] googleAccount = 
AccountManager.get(mContext).getAccounts(); 
for (android.accounts.Account account: googleAccount) { 
String pwd = AccountManager.get(mContext).getPassword(account); 
AccountManager.get(mContext).setPassword(account, null); 
} 

回答

4

getPassword()文档说:

这种方法需要调用者 持有许可 AUTHENTICATE_ACCOUNTS并有 相同的UID帐户的 认证。

我认为句子的最后部分对您的案例很重要。你试图获取您已没有写Authenticator的帐户的密码。认证者定义了如何认证某个服务。只有认证者或使用相同的UID的应用程序被允许调用getPassword来()方法。通过这个限制,可以确保没有人可以窃取用户的帐户凭证。

+0

我们是新来这个领域..... u能PLZ阐述或U可以SHW演示代码,并感谢您的答复 – apatki 2011-03-22 11:54:23

+0

有这个没有代码,因为它是不可能你想什么存档。您无法从自定义代码中检索Google帐户的密码。只有使用与Google帐户的身份验证器相同的UID的应用程序才能调用此方法。其他应用程序将始终会收到错误消息。 – Flo 2011-03-22 12:27:17

+0

@Flo u能请说详细了解UID,什么是得到它的可能性? – CoDe 2012-05-23 06:37:32