0

私のアカウント オーセンティケータは魅力的に機能し、その xml は多かれ少なかれ次のように見えます。

<account-authenticator xmlns:android="http://schemas.android.com/apk/res/android"
    android:accountType="lorenzoff_account"
    android:icon="@drawable/nice_icon"
    android:smallIcon="@drawable/nice_icon"
    android:label="@string/app_name" 
    android:accountPreferences="@xml/account_preferences" />

このオーセンティケーターにより、複数のアカウントを管理できます。account_A、account_B とします。2 つのアカウントを定義したら、[アカウントと同期] 設定にアクセスしていずれかをクリックすると、相対的な account_preferences 画面が開きます。その xml は多かれ少なかれ次のようになります。

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
   <PreferenceCategory android:title="@string/title_fmt" />
   <PreferenceScreen
        android:key="key1"
        android:title="click me"
        android:summary="dont be afraid, click!">
        <intent
            android:action="com.lorenzoff.authenticator.ACTION_UNKNOWN"
            android:targetPackage="key1.package"
            android:targetClass="key1.class" />
    </PreferenceScreen>
</PreferenceScreen>

私の問題は、インテント受信クラスで 2 つのアカウントを区別する方法がわからないことです。account_A または account_B をクリックすると、どちらの場合も、受信クラスは com.lorenzoff.authenticator.ACTION_UNKNOWN アクションを正しく受け取りますが、account_A または account_B がクリックされたかどうかを確認するにはどうすればよいですか?

4

1 に答える 1

1

いくつかの実験では、標準の Android 設定アプリが、アクティビティ"account"を起動するインテントに付属するエクストラ バンドルのキーを介してターゲット アカウントを渡すことが示されています。android:accountPreferences

残念ながら、これが常に正しいかどうかを保証するドキュメントも見当たりません。誰かがそうでないことを証明できれば素晴らしいことです。

于 2014-02-05T01:57:17.807 に答える