记录所有用户帐户和密码?

时间:2011-12-14 17:14:39

标签: java android security

这仅用于测试目的。我没有把它构建成一个应用程序。

我正在尝试记录所有用户保存的帐户和密码

    AccountManager accountManager = AccountManager.get(this);   

    for(Account account : accountManager.getAccounts())
    {
        System.out.println(account.name + " : " + accountManager.getPassword(account));
    }

但我收到错误

  

E / AndroidRuntime(11944):java.lang.SecurityException:调用者uid XXXXX与身份验证者的uid不同

我已阅读this question但它并没有真正解释如何解决这个问题,只是为了避免它,至少我是这么认为的。

有没有解决这个问题的方法?

提前致谢

1 个答案:

答案 0 :(得分:2)

发生这种情况是因为您无法以这种方式获取设备的帐户。 这仅适用于您之前将帐户添加到AccountManager,并且您希望稍后检索它。

这就是为什么告诉你没有得到正确许可的原因。

要知道设备中添加的帐户应使用,例如:

AccountManager accountManager = AccountManager.get(this);
Account[] accounts = accountManager.getAccounts();
accountManager.getUserData(accounts[0], AccountManager.KEY_USERDATA);

希望它有所帮助。