国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

廣播的一些用法

2019-11-10 22:40:02
字體:
供稿:網(wǎng)友

版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。

廣播的實(shí)現(xiàn):發(fā)送者和接受者

靜態(tài)廣播與動(dòng)態(tài)廣播 具體實(shí)現(xiàn):在安卓軟件程序中,靜態(tài)廣播都可以接收到發(fā)送者的信息,然而動(dòng)態(tài)廣播軟件程序中他后臺(tái)關(guān)閉后,不能接受到發(fā)送者的信息。

發(fā)送者 public class MainActivity extends AppCompatActivity {

PRivate EditText et_main_content;private Intent intent;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_main_content = (EditText) findViewById(R.id.et_main_content); intent = new Intent(); //設(shè)置廣播的名字(設(shè)置Action) intent.setAction("com.example.android20_sender.1008");}public void send(View view){ String content=et_main_content.getText().toString(); //攜帶數(shù)據(jù) intent.putExtra("data",content); //發(fā)送廣播(無序廣播) //sendBroadcast(intent); //發(fā)送黏性廣播 sendStickyBroadcast(intent);}

}

靜態(tài)廣播清單文件配置 這里寫圖片描述

java代碼接受者 public class MyReceived01 extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if(“com.example.android20_sender.1008”.equals(intent.getAction())){ String data=intent.getStringExtra(“data”); Log.i(“test”,”01號(hào)接受者收到廣播了:”+data); } } }

動(dòng)態(tài)廣播要用到黏性廣播(已過時(shí),可以用),解決后臺(tái)關(guān)閉后,接受發(fā)送者的信息,動(dòng)態(tài)廣播的優(yōu)先級(jí)大于靜態(tài)廣播

在發(fā)送者清單文件中添加發(fā)送黏性廣播的權(quán)限 這里寫圖片描述

動(dòng)態(tài)廣播跟靜態(tài)差不多,只是不在清單文件中配置,用Java代碼 public class MainActivity extends AppCompatActivity {

private MyReceived02 myReceived02;private IntentFilter intentFilter;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); myReceived02 = new MyReceived02(); intentFilter = new IntentFilter(); intentFilter.addAction("com.example.android20_sender.1008");}@Overrideprotected void onResume() { super.onResume(); //動(dòng)態(tài)注冊(cè)廣播 registerReceiver(myReceived02,intentFilter);}@Overrideprotected void onDestroy() { super.onDestroy(); //注銷動(dòng)態(tài)廣播 unregisterReceiver(myReceived02);}

}

Java代碼接受者 public class MyReceived02 extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if(“com.example.android20_sender.1008”.equals(intent.getAction())){ String data=intent.getStringExtra(“data”); Log.i(“test”,”02號(hào)接受者收到粘性廣播了:”+data); } } }

系統(tǒng)廣播 電話權(quán)限狀態(tài)

添加接受者電話的狀態(tài)

接受者的電話狀態(tài) public class MyPhoneState extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if(“android.intent.action.PHONE_STATE”.equals(intent.getAction())){ //獲取電話號(hào)碼 String number=intent.getStringExtra(“incoming_number”); Log.i(“test”,”有電話進(jìn)來了,”+number); Toast.makeText(context, “電話進(jìn)來了:”+number, Toast.LENGTH_SHORT).show();

//獲取電話狀態(tài) //電話管理者 TelephonyManager tm= (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); int state=tm.getCallState(); switch (state) { case TelephonyManager.CALL_STATE_RINGING: Log.i("test","表白前"); break; case TelephonyManager.CALL_STATE_OFFHOOK: Log.i("test","熱戀中"); break; case TelephonyManager.CALL_STATE_IDLE: Log.i("test","失戀了"); break; } }}

}


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 武功县| 玛纳斯县| 济源市| 武汉市| 社会| 增城市| 日喀则市| 勃利县| 大悟县| 大足县| 绿春县| 延安市| 兴仁县| 阜康市| 宣威市| 松江区| 称多县| 来安县| 乌恰县| 郸城县| 宽甸| 大洼县| 秦安县| 濮阳市| 当雄县| 二连浩特市| 台南市| 太原市| 嵊州市| 东兴市| 达州市| 襄汾县| 拜泉县| 固安县| 侯马市| 乐安县| 宜州市| 郎溪县| 萍乡市| 绥宁县| 乐安县|