国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Intent 使用詳解

lifesimple / 2504人閱讀

摘要:注意類別指示此的圖標(biāo)應(yīng)放入系統(tǒng)的應(yīng)用啟動(dòng)器。如果元素未使用指定圖標(biāo),則系統(tǒng)將使用元素中的圖標(biāo)使用方法對(duì)象是對(duì)象的包裝器。主要應(yīng)用于以下場(chǎng)景通知應(yīng)用小部件定時(shí)任務(wù)使用注意事項(xiàng)適用于啟動(dòng)的。

極力推薦文章:歡迎收藏
Android 干貨分享

閱讀五分鐘,每日十點(diǎn),和您一起終身學(xué)習(xí),這里是程序員Android

Intent 是一個(gè)消息傳遞對(duì)象,主要用于組建之間的通訊,例如:?jiǎn)?dòng)Activity、啟動(dòng)Service、傳遞Broadcast

本篇文章主要介紹 Android 開發(fā)中的部分知識(shí)點(diǎn),通過閱讀本篇文章,您將收獲以下內(nèi)容:

Intent 主要用途、流程圖

Intent 分類

隱式 Intent 接收過濾類型

PendingIntent 使用方法

Intent 7 大常用屬性

使用ADB調(diào)試 Intent

Intent 常用方法使用總結(jié)

Intent 流程圖

1. Intent 主要用途 1. 啟動(dòng)Activity

startActivity()

無返回值,直接啟動(dòng)Activity

startActivityForResult()
有返回值,返回值在onActivityResult() 回調(diào)

2. 啟動(dòng)Service

startService()

一次性操作

bindService()

綁定組件,隨組件生命周期結(jié)束而結(jié)束

3. 傳遞 Broadcast

sendBroadcast()

普通無序廣播

sendOrderedBroadcast()

有序廣播

sendStickyBroadcast()

持續(xù)黏性廣播

2. Intent 分類 1.顯示 Intent

按名稱(完全限定類名)指定要啟動(dòng)的組件。
例如:

                    Intent intentActivity = new Intent(MainActivity.this,
                            ActivityMethods.class);
                    startActivity(intentActivity);
2.隱式 Intent

不會(huì)指定特定的組件,而是聲明要執(zhí)行的常規(guī)操作,從而允許其他應(yīng)用中的組件來處理它
例如:

    /**
     * 發(fā)送短信
     * **/
    public static void SendMms(Context context, String mmsString) {

        Intent sendIntent = new Intent();
        sendIntent.setAction(Intent.ACTION_SEND);
        sendIntent.putExtra(Intent.EXTRA_TEXT, mmsString);
        sendIntent.setType("text/plain");
        // sendIntent.setData(Uri.parse("smsto:"));
        // This ensures only SMS apps respond
        // 修改 Intnent 選擇器Tittle
        String title = context.getResources().getString(R.string.hello_world);
        Intent chooser = Intent.createChooser(sendIntent, title);

        // 驗(yàn)證是否有Activity 接收
        if (sendIntent.resolveActivity(context.getPackageManager()) != null) {
            context.startActivity(chooser);
        }
    }
3. 隱式Intent 接收過濾類型

應(yīng)用可以接收哪些隱式 Intent,請(qǐng)?jiān)谇鍐挝募惺褂? 元素為每個(gè)應(yīng)用組件聲明一個(gè)或多個(gè) Intent 過濾器。每個(gè) Intent 過濾器均根據(jù) Intent 的操作、數(shù)據(jù)和類別指定自身接受的 Intent 類型。 僅當(dāng)隱式 Intent 可以通過 Intent過濾器之一傳遞時(shí),系統(tǒng)才會(huì)將該 Intent 傳遞給應(yīng)用組件。

name 屬性中,聲明接受的 Intent 操作。該值必須是操作的文本字符串值,而不是類常量。

例如:
java 代碼中啟動(dòng)的IntentAction

Intent sendIntent = new Intent("String_action");

Androidmanfest.xml 中過濾標(biāo)簽如下:

使用一個(gè)或多個(gè)指定數(shù)據(jù) URI 各個(gè)方面(scheme、host、port、path 等)和 MIME 類型的屬性,聲明接受的數(shù)據(jù)類型。

name 屬性中,聲明接受的 Intent 類別。該值必須是操作的文本字符串值,而不是類常量。

例如:

禁止其他應(yīng)用通過Intent 掉起自己組件

android:exported="false"

應(yīng)用主要入口點(diǎn)Action

Launcher 圖標(biāo)入口Action

以下兩個(gè)元素必須配對(duì)使用,Activity 才會(huì)顯示在應(yīng)用啟動(dòng)器中。

注意:

CATEGORY_LAUNCHER 類別指示此 Activity 的圖標(biāo)應(yīng)放入系統(tǒng)的應(yīng)用啟動(dòng)器。 如果 元素未使用 icon 指定圖標(biāo),則系統(tǒng)將使用 元素中的圖標(biāo)

4. PendingIntent 使用方法

PendingIntent 對(duì)象是 Intent 對(duì)象的包裝器。PendingIntent 的主要目的是授權(quán)外部應(yīng)用使用包含的 Intent,就像是它從您應(yīng)用本身的進(jìn)程中執(zhí)行的一樣。

主要應(yīng)用于以下場(chǎng)景

通知

NotificationManager

應(yīng)用小部件

AppWidget

定時(shí)任務(wù)

AlarmManager

PendingIntent 使用注意事項(xiàng):

1.PendingIntent.getActivity()

適用于啟動(dòng) Activity Intent

2.PendingIntent.getService()

適用于啟動(dòng) Service Intent

3.PendingIntent.getBroadcast()

適用于啟動(dòng) BroadcastReceiver Intent

5. Intent 7 大屬性

1 . Component Name(目標(biāo)組件的全類、組件名稱)

setComponent(),
getComponent(),
setClass() ,
setClassName()

2 . Action (intent 將執(zhí)行的動(dòng)作)

setAction()
`getAction()
`

3 . Data (用于向Action 屬性提供操作數(shù)據(jù))

URI對(duì)象scheme://host:port/path (協(xié)議頭,主機(jī),端口,路徑)

4 . Type 分類

指定Data所指定的Uri對(duì)應(yīng)的MIME類型,不指定會(huì)根據(jù)數(shù)據(jù)自動(dòng)推導(dǎo)

5 . Category 類別

Action 提供額外的附件類別信息,可以有多個(gè)Category,但必須有一個(gè)default

   

6 . Extra 數(shù)據(jù)載體

通過鍵值對(duì)進(jìn)行數(shù)據(jù)存儲(chǔ),用于多個(gè)Action之間提供數(shù)據(jù)交換.

7 . Flags 標(biāo)記

標(biāo)記組件如何啟動(dòng),以及啟動(dòng)后如何對(duì)待 FALG_ACTIVITY_SINGLE_TOP
FALG_ACTIVITY_CLEAR_TOP等等)

6. 使用ADB調(diào)試 Intent

語(yǔ)法

adb shell am start -a  -t  -d  
  -e   -n 

eg :

adb shell am start -a android.intent.action.DIAL 
  -d tel:555-5555 -n org.example.MyApp/.MyActivity
7.Intent 常用方法使用總結(jié)

由于總結(jié)內(nèi)容較多,已經(jīng)另開文章講述。

Intent 常用方法使用總結(jié)

至此,本篇已結(jié)束,如有不對(duì)的地方,歡迎您的建議與指正。同時(shí)期待您的關(guān)注,感謝您的閱讀,謝謝!

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/75830.html

相關(guān)文章

  • Activity 使用詳解

    摘要:極力推薦文章歡迎收藏干貨分享閱讀五分鐘,每日十點(diǎn),和您一起終身學(xué)習(xí),這里是程序員本篇文章主要介紹開發(fā)中的部分知識(shí)點(diǎn),通過閱讀本篇文章,您將收獲以下內(nèi)容生命周期簡(jiǎn)介必須在中注冊(cè)啟動(dòng)的方法啟動(dòng)帶返回值的結(jié)束方法狀態(tài)保存,恢復(fù)的方法面 showImg(https://upload-images.jianshu.io/upload_images/5851256-0b56fc8e812963d7...

    Caicloud 評(píng)論0 收藏0
  • Service 使用詳解

    摘要:只能執(zhí)行單一操作,無法返回結(jié)果給調(diào)用方,常用于網(wǎng)絡(luò)下載上傳文件,播放音樂等。綁定模式此模式通過綁定組件等調(diào)用啟動(dòng)此服務(wù)隨綁定組件的消亡而解除綁定。 showImg(https://segmentfault.com/img/remote/1460000019975019?w=157&h=54); 極力推薦文章:歡迎收藏Android 干貨分享 showImg(https://segme...

    freewolf 評(píng)論0 收藏0
  • Intent以及IntentFilter詳解

    摘要:,表明執(zhí)行操作的字符串。,這個(gè)屬性可以指示系統(tǒng)如何啟動(dòng)一個(gè),以及啟動(dòng)之后如何處理。是一個(gè)字符串,例如這里的的構(gòu)造函數(shù)傳入了兩個(gè)參數(shù),和組件名,調(diào)用了方法后,會(huì)在當(dāng)前的應(yīng)用中啟動(dòng)這個(gè)服務(wù)。 1. 前言 ? ? ? ?在Android中有四大組件,這些組件中有三個(gè)組件與Intent相關(guān),可見Intent在Android整個(gè)生態(tài)中的地位高度。Intent是信息的載體,用它可以去請(qǐng)求組件做相應(yīng)...

    mrcode 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

lifesimple

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<