真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Android中如何在有序廣播中添加自定義權(quán)限-創(chuàng)新互聯(lián)

本文小編為大家詳細(xì)介紹“Android中如何在有序廣播中添加自定義權(quán)限”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“Android中如何在有序廣播中添加自定義權(quán)限”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來(lái)學(xué)習(xí)新知識(shí)吧。

創(chuàng)新互聯(lián)公司專(zhuān)注于弋陽(yáng)網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供弋陽(yáng)營(yíng)銷(xiāo)型網(wǎng)站建設(shè),弋陽(yáng)網(wǎng)站制作、弋陽(yáng)網(wǎng)頁(yè)設(shè)計(jì)、弋陽(yáng)網(wǎng)站官網(wǎng)定制、小程序開(kāi)發(fā)服務(wù),打造弋陽(yáng)網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供弋陽(yáng)網(wǎng)站排名全網(wǎng)營(yíng)銷(xiāo)落地服務(wù)。

Android 中在有序廣播中添加自定義權(quán)限的實(shí)例

有序廣播說(shuō)明:


有序廣播因?yàn)橐幚硐⒌奶幚斫Y(jié)果,所以要復(fù)雜一些。


* sendOrderedBroadcast(Intent intent, String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras);

如果只是想讓廣播可以按優(yōu)先級(jí)來(lái)收取,并不在意處理的結(jié)果,可以用下面的版本:


* sendOrderedBroadcast(Intent intent, String receiverPermission);

同樣,在多用戶環(huán)境下,也可以選擇給哪個(gè)用戶發(fā)廣播:


* sendOrderedBroadcastAsUser(Intent intent, UserHandle user, String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras);

首先我們要在AndroidManifest.xml中自定義一個(gè)權(quán)限,格式參考系統(tǒng)自帶的權(quán)限,Android.permission.XXXXX,只要是xxx.peimission.XXXXXX就行,如果不按照這個(gè)格式,那么這個(gè)權(quán)限可能沒(méi)法使用。


 
 
    
   
     
       
         
 
         
       
     
 
     
       
         
       
     
     
       
         
       
 
     
   
 
    

然后使用sendOrderedBroadcast(intent,"test.permission.TEST");就可以發(fā)送有序廣播了,當(dāng)然發(fā)送廣播之前還要指定一下接受者的優(yōu)先級(jí),優(yōu)先級(jí)越高,android:priority指定的數(shù)字就越大。取值的范圍是:-1000~1000這個(gè)就不詳細(xì)敘述了。


public class MainActivity extends AppCompatActivity { 
 
  @Override 
  protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    Button send= (Button) findViewById(R.id.send); 
    send.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
        Intent intent=new Intent(); 
        intent.setAction("hahaha"); 
 
        intent.putExtra("msg","一個(gè)簡(jiǎn)單的消息"); 
        sendOrderedBroadcast(intent,"test.permission.TEST"); 
      } 
    }); 
  } 
}

第一個(gè)BroadcastReceiver在接收到廣播的時(shí)候,如果想要添加一些自己的東西進(jìn)去,可以先創(chuàng)建一個(gè)Bundle對(duì)象,并且存入數(shù)據(jù)。
然后通過(guò)setResultExtras(bundle),把這個(gè)bundle添加到原來(lái)的消息中,


ublic class MyReceiver extends BroadcastReceiver { 
  public MyReceiver() { 
  } 
 
  @Override 
  public void onReceive(Context context, Intent intent) { 
    Toast.makeText(context,"接收到的Intent的Action為:"+intent.getAction()+"\n消息內(nèi)容是:"+intent.getStringExtra("msg"),Toast.LENGTH_LONG).show(); 
    Bundle bundle=new Bundle(); 
    bundle.putString("first","第一個(gè)BroadCast存入的消息!"); 
    setResultExtras(bundle); 
 
  } 
}

下一個(gè)BroadcastReceiver通過(guò)getResultExtras可以將信息提取出來(lái)。


ublic class MyReceiver2 extends BroadcastReceiver { 
  public MyReceiver2() { 
  } 
 
  @Override 
  public void onReceive(Context context, Intent intent) { 
    // TODO: This method is called when the BroadcastReceiver is receiving 
    Bundle bundle=getResultExtras(true); 
    String first=bundle.getString("first"); 
    Toast.makeText(context,"第一個(gè)BroadCast存入的消息為:"+first,Toast.LENGTH_LONG).show(); 
  } 
}

讀到這里,這篇“Android中如何在有序廣播中添加自定義權(quán)限”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過(guò)才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


文章名稱(chēng):Android中如何在有序廣播中添加自定義權(quán)限-創(chuàng)新互聯(lián)
文章出自:http://weahome.cn/article/dsopid.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部