亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android 廣播接受者

發布時間:2020-05-25 21:46:53 來源:網絡 閱讀:456 作者:老婆的寶寶 欄目:移動開發

廣播也是通過intent來傳遞的。

    廣播分為有序廣播和標準廣播。

        標準廣播是發送廣播后,所有的廣播接受者都可以去接收。

        有序廣播是發送廣播后,由高優先級的先接收廣播,處理后再往后廣播,同時高優先級的接受者可以中斷廣播。


        廣播注冊可以分為動態注冊和靜態注冊。下面就先將靜態注冊。靜態注冊是新建廣播接收者時,是通過new----->other------->Brodcast Receiver來實現的。AS會自動幫我們在Manifext.xml里注冊好,我們只需要添加intent-filter及在里面加入action即可。

    

    下面的例子是靜態注入,發送一條標準廣播,然后接收。

    

    1、MainActivity

    

package com.yuanlp.sendbroadcast;

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    public void click(View view){
        Intent intent=new Intent("com.yuanlp.sendBroadcast.MY_BROADCAST"); //設置intent的action
        sendBroadcast(intent);  //發送廣播
    }
}

    2、 activity_main.xml里

    

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.yuanlp.sendbroadcast.MainActivity">


    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="click"
        android:text="發送廣播"
        tools:layout_editor_absoluteX="137dp"
        tools:layout_editor_absoluteY="136dp"/>
</android.support.constraint.ConstraintLayout>

     3、MyReceiver

    

package com.yuanlp.sendbroadcast;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;

public class MyReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
        Toast.makeText(context,"接收到廣播",Toast.LENGTH_SHORT).show();
    }
}

        4、Manifext.xml

    

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.yuanlp.sendbroadcast">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>

                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>

        <receiver
            android:name=".MyReceiver"
            android:enabled="true"
            android:exported="true">
            <intent-filter>
                <action android:name="com.yuanlp.sendBroadcast.MY_BROADCAST"></action>
            </intent-filter>
        </receiver>
    </application>

</manifest>

    運行程序后,在點擊按鈕后,自定義的廣播 接受者會受到廣播,并彈出toast

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

白玉县| 抚顺县| 通州市| 儋州市| 英山县| 安吉县| 嘉义县| 大悟县| 静海县| 高密市| 泾源县| 大冶市| 友谊县| 濮阳县| 泸西县| 通化县| 苍南县| 仪陇县| 南华县| 江油市| 崇左市| 怀集县| 金川县| 双峰县| 商丘市| 姜堰市| 准格尔旗| 额济纳旗| 威信县| 洪湖市| 鄂尔多斯市| 东台市| 东乌珠穆沁旗| 林口县| 府谷县| 博白县| 呼伦贝尔市| 双柏县| 霍林郭勒市| 大埔县| 洛扎县|