2011-12-14 1 views
0

これは厳密にテストのためのものです。私はこれをアプリケーションに組み込んでいません。すべてのユーザーアカウントとパスワードを記録しますか?

私は、すべてのユーザーの保存されたアカウントとパスワード

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

明白なセキュリティ上の理由から、これを行うことはできません。 – ethan

+0

マニフェストに必要な権限を入れましたか? – user1032613

答えて

2

あなたがこの方法でデバイスのアカウントを取得できないため、この起こっ中

感謝。 以前はAccountManagerにアカウントを追加しておき、後で取得したい場合にのみ機能します。

これは、正しい許可が得られていないことを伝える理由です。デバイスに追加したアカウントを知っている

には、例えば、使用する必要があります。

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

はそれがお役に立てば幸いです。

関連する問題