0

私はAndroidのサイトの開発ドキュメントからサンプルコードを読んでいます、具体的にはこれ:

http://developer.android.com/resources/samples/SampleSyncAdapter/src/com/example/android/samplesync/authenticator/AuthenticatorActivity.html

これがサンプルアプリの唯一のアクティビティです。onCreateこれは、メソッドのインテントを指します。この意図がどこから来ているのか、またはこれがアプリが利用する唯一のアクティビティである場合に何を含めるべきかがわかりません。

Log.i(TAG, "loading data from Intent");
        final Intent intent = getIntent();
        mUsername = intent.getStringExtra(PARAM_USERNAME);
        mAuthtokenType = intent.getStringExtra(PARAM_AUTHTOKEN_TYPE);
        mRequestNewAccount = mUsername == null;
        mConfirmCredentials = intent.getBooleanExtra(PARAM_CONFIRM_CREDENTIALS, false);

これが、インテントで機能するコードのブロックです。アプリ内の唯一のアクティビティを意図しているのはなぜですか?このアプリは変わった方法で呼び出されますか?マニフェストには、アクティビティのインテントフィルターは含まれていません...私はこのすべてに少し迷っていると思います!誰かが私をまっすぐにすることができれば、それは素晴らしいことです、ありがとう。

4

2 に答える 2

1
  1. アプリ内の唯一のアクティビティを意図しているのはなぜですか?

    getIntent()このアクティビティを開始した意図を取得します。

  2. このアプリは変わった方法で呼び出されますか?

    このアクティビティは、追加のデータが渡されているため、別のアプリまたはアクティビティからプログラムで呼び出されていると思います。これは、アクティビティgetStringExtra()を開始したインテントからデータを抽出するために使用されます。putExtra..アクティビティの開始時にアクティビティ間でデータをgetExtra..渡す方法です。

于 2011-03-05T23:31:18.013 に答える
0

In that specific example, the intent is sent from the addAccount method in Authenticator.java. That method is called by the OS when you click the Add Account button in the Accounts & sync settings screen and choose your account type.

于 2011-06-21T14:53:04.937 に答える