summaryrefslogtreecommitdiffstats
path: root/core/java/android/accounts
diff options
context:
space:
mode:
authorAmith Yamasani <yamasani@google.com>2013-04-19 19:10:02 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2013-04-19 19:10:02 +0000
commite37c8f781abb045ec4a0b872e5e6afe48eee021a (patch)
treee89e1f1ab0f59021c2b1974742f09b92dc93ebde /core/java/android/accounts
parent58156b4123acf92f2a03885136a3b6859801f000 (diff)
parent3b458ad9ee5f2d6b7cf28a13bc29123cdf540763 (diff)
downloadframeworks_base-e37c8f781abb045ec4a0b872e5e6afe48eee021a.zip
frameworks_base-e37c8f781abb045ec4a0b872e5e6afe48eee021a.tar.gz
frameworks_base-e37c8f781abb045ec4a0b872e5e6afe48eee021a.tar.bz2
Merge "Improve API and documentation" into jb-mr2-dev
Diffstat (limited to 'core/java/android/accounts')
-rw-r--r--core/java/android/accounts/AccountManager.java17
-rw-r--r--core/java/android/accounts/IAccountManager.aidl1
2 files changed, 18 insertions, 0 deletions
diff --git a/core/java/android/accounts/AccountManager.java b/core/java/android/accounts/AccountManager.java
index 241a64a..b4a12c4 100644
--- a/core/java/android/accounts/AccountManager.java
+++ b/core/java/android/accounts/AccountManager.java
@@ -405,6 +405,23 @@ public class AccountManager {
}
/**
+ * Returns the accounts visible to the specified package, in an environment where some apps
+ * are not authorized to view all accounts. This method can only be called by system apps.
+ * @param type The type of accounts to return, null to retrieve all accounts
+ * @param packageName The package name of the app for which the accounts are to be returned
+ * @return An array of {@link Account}, one per matching account. Empty
+ * (never null) if no accounts of the specified type have been added.
+ */
+ public Account[] getAccountsByTypeForPackage(String type, String packageName) {
+ try {
+ return mService.getAccountsByTypeForPackage(type, packageName);
+ } catch (RemoteException re) {
+ // possible security exception
+ throw new RuntimeException(re);
+ }
+ }
+
+ /**
* Lists all accounts of a particular type. The account type is a
* string token corresponding to the authenticator and useful domain
* of the account. For example, there are types corresponding to Google
diff --git a/core/java/android/accounts/IAccountManager.aidl b/core/java/android/accounts/IAccountManager.aidl
index 8141813..86e279f 100644
--- a/core/java/android/accounts/IAccountManager.aidl
+++ b/core/java/android/accounts/IAccountManager.aidl
@@ -32,6 +32,7 @@ interface IAccountManager {
AuthenticatorDescription[] getAuthenticatorTypes();
Account[] getAccounts(String accountType);
Account[] getAccountsForPackage(String packageName, int uid);
+ Account[] getAccountsByTypeForPackage(String type, String packageName);
Account[] getAccountsAsUser(String accountType, int userId);
void hasFeatures(in IAccountManagerResponse response, in Account account, in String[] features);
void getAccountsByFeatures(in IAccountManagerResponse response, String accountType, in String[] features);