Afficher les paramètres dans les comptes et le menu de synchronisation de l'application Android
-
11-12-2019 - |
Question
Je suis implémentant un synchronisation pour une application Android et souhaitez effectuer les paramètres du compte disponibles dans le menu "Comptes & Sync".J'ai vu cela fait dans l'application Dropbox (comme indiqué ci-dessous), mais je n'ai pas pu trouver de la documentation sur la façon de faire cela.J'ai été comptabilisé ajouté, je veux simplement ajouter un lien vers les paramètres de compte dans ce menu.
La solution
Dans votre manifeste Android, vous devez avoir une section comme celle-ci pour définir votre compte authentificateur:
<service android:name="AccountAuthenticatorService"
android:exported="true" android:process=":auth">
<intent-filter>
<action android:name="android.accounts.AccountAuthenticator" />
</intent-filter>
<meta-data android:name="android.accounts.AccountAuthenticator"
android:resource="@xml/authenticator" />
</service>
La balise méta-données ci-dessus doit indiquer un fichier XML qui définit votre compte, comme celui-ci:
<account-authenticator xmlns:android="http://schemas.android.com/apk/res/android"
android:accountType="fm.last.android.account"
android:icon="@drawable/icon"
android:smallIcon="@drawable/icon"
android:label="@string/app_name"
android:accountPreferences="@xml/account_preferences"/>
L'Android: AccountPreferences Attribut Attribut ci-dessus Points à un fichier XML qui définit votre écran de préférences, comme si:
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory
android:title="General Settings" />
<PreferenceScreen
android:key="account_settings"
android:title="Account Settings"
android:summary="Sync frequency, notifications, etc.">
<intent
android:action="fm.last.android.activity.Preferences.ACCOUNT_SETUP"
android:targetPackage="fm.last.android"
android:targetClass="fm.last.android.activity.Preferences" />
</PreferenceScreen>
</PreferenceScreen>
Les préférences ci-dessusScreen lanceront une intention d'afficher un écran de paramètres, mais vous pouvez également définir les paramètres directement dans le fichier XML.
Autres conseils
Si je comprenais correctement, vous souhaitez afficher l'écran "Comptes et paramètres de synchronisation" dans votre application.Pour cela, vous devez tirer une intention de paramètres.Code d'utilisation indiqué ci-dessous:
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setComponent(new ComponentName("com.android.providers.subscribedfeeds","com.android.settings.ManageAccountsSettings"));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
J'espère que cela a aidé ...