AndroidにおけるIntentの深い理解

1396 ワード

Intent中国語を翻訳するのは意図的ですが、もっと合理的な意味はメッセージングです.
1.IntentはAndroidで期限切れになったらどのように運行しますか?
メッセージングとしては、まず「マウント」と「アンインストール」のメッセージ能力を備えており、Androidソースコードでは、Intentは実際には通常のメッセージ小包(Buddle)でデータをロードしています.
コードはandroidから来たcontent.Intent.class
 public Intent putExtra(String name, CharSequence value) {
        if (mExtras == null) {
            mExtras = new Bundle();  //        
        }
        mExtras.putCharSequence(name, value);
        return this;//          
    }
    //      ,       
   public Intent putExtra(String name, Bundle value) {
        if (mExtras == null) {
            mExtras = new Bundle();
        }
        mExtras.putBundle(name, value);
        return this;
    }
    
    //       (  )
    public String getStringExtra(String name) {
        return mExtras == null ? null : mExtras.getString(name);
    }

ここではandroidのデータ部分のみを説明します
2.Intentデータ転送には方向が必要ですが、方向はどこですか?
ここで説明しなければならないのはIntentのメッセージが放送されているので、方向はシステム全体です.
3.Intentはどのように指定されたターゲットプログラムを見つけたのですか?
メッセージは送信されたと言えるが、適切なターゲットを見つけるためには、Action,Component,settype,Catagory,PackageNameからの検索が必要である.
Intentを送信すると、ActivityまたはBroadcastReceiverまたはアプリケーションのみが応答するとは限らないことがよく見られます.これは、Intentがブロードキャストされたメッセージであることを示しています.
4.まとめ
Intentはメッセージングの一種で、授業の設定とメッセージの取得
Intentは「すべてのプログラムに放送」され、条件に合ったプログラムをふるいにかける
Intentはプロセス間、アプリケーション間で転送できます.
Intentは検索条件を持っている