Common account picker similar to the standard framework account picker introduced in ICS:
newChooseAccountIntent.
| class | AccountPicker.AccountChooserOptions | Options for building an appropriate intent to launch the Account Picker. | |
| static Intent |
newChooseAccountIntent(AccountPicker.AccountChooserOptions
options)
Returns an intent to an
Activity
that prompts the user to choose from a list of accounts.
|
| static Intent |
newChooseAccountIntent(Account
selectedAccount, ArrayList<Account>
allowableAccounts, String[]
allowableAccountTypes, boolean alwaysPromptForAccount, String
descriptionOverrideText, String
addAccountAuthTokenType, String[]
addAccountRequiredFeatures, Bundle
addAccountOptions)
This method is deprecated. use
newChooseAccountIntent(AccountChooserOptions)
|
Returns an intent to an Activity that
prompts the user to choose from a list of accounts. The caller will then typically
start the activity by calling startActivityForResult(intent, ...);.
On success the activity returns a Bundle with the account name and type specified
using keys
KEY_ACCOUNT_NAME and
KEY_ACCOUNT_TYPE.
NOTE: for API level O:
The activity only shows accounts visible to Google Play services as opposed to
newChooseAccountIntent. If chosen account has Google type it is marked as
visible to the caller and will be returned by
getAccountsByType(String).
The most common case is to call this with one account type, e.g.:
Intent intent =
AccountPicker.newChooseAccountIntent(
new AccountChooserOptions.Builder()
.setAllowableAccountsTypes(Arrays.asList("com.google"))
.build());
startActivityForResult(intent, SOME_REQUEST_CODE);
The account picker activity will return when the user has selected and/or created an
account, and the resulting account name can be retrieved as follows:
protected void onActivityResult(final int requestCode, final int resultCode,
final Intent data) {
if (requestCode == SOME_REQUEST_CODE && resultCode == RESULT_OK) {
String accountName = data.getStringExtra(AccountManager.KEY_ACCOUNT_NAME);
}
}
| options | that controls the behavior and style of the AccountPicker. |
|---|
This method is deprecated.
use
newChooseAccountIntent(AccountChooserOptions)
Returns an intent to an Activity that
prompts the user to choose from a list of accounts. The caller will then typically
start the activity by calling startActivityForResult(intent, ...);.
On success the activity returns a Bundle with the account name and type specified
using keys
KEY_ACCOUNT_NAME and
KEY_ACCOUNT_TYPE.
NOTE: for API level O:
The activity only shows accounts visible to Google Play services as opposed to
newChooseAccountIntent. If chosen account has Google type it is marked as
visible to the caller and will be returned by
getAccountsByType(String).
The most common case is to call this with one account type, e.g.:
Intent intent = AccountPicker.newChooseAccountIntent(null, null, new String[]{"com.google"},
false, null, null, null, null);
startActivityForResult(intent, SOME_REQUEST_CODE);
The account picker activity will return when the user has selected and/or created an
account, and the resulting account name can be retrieved as follows:
protected void onActivityResult(final int requestCode, final int resultCode,
final Intent data) {
if (requestCode == SOME_REQUEST_CODE && resultCode == RESULT_OK) {
String accountName = data.getStringExtra(AccountManager.KEY_ACCOUNT_NAME);
}
}
| selectedAccount | if specified, indicates that the Account
is the currently selected one, according to the caller's definition of
selected. |
|---|---|
| allowableAccounts | an optional ArrayList
of accounts that are allowed to be shown. If not specified then this field will not
limit the displayed accounts. |
| allowableAccountTypes | an optional string array of account types. These are used both to filter the shown accounts and to filter the list of account types that are shown when adding an account. |
| alwaysPromptForAccount | if set, the account chooser screen is always shown, otherwise it is only shown
when there is more than one account from which to choose or the calling app doesn't
have the GET_ACCOUNTS
permission. |
| descriptionOverrideText | if non-null this string is used as the description in the accounts chooser screen rather than the default. |
| addAccountAuthTokenType | this optional string is passed as the
addAccount(String, String, String[], Bundle, Activity, AccountManagerCallback,
Handler) authTokenType parameter. Current implementation does not check
this value. |
| addAccountRequiredFeatures | this optional string array is passed as the
addAccount(String, String, String[], Bundle, Activity, AccountManagerCallback,
Handler) requiredFeatures parameter. Current implementation does not
check this value. |
| addAccountOptions | This optional Bundle is
passed as the
addAccount(String, String, String[], Bundle, Activity, AccountManagerCallback,
Handler) options parameter. Can be null if sending no extra
options. |
Intent
that can be used to launch the ChooseAccount activity flow.