簡體   English   中英

如何找出哪個活動啟動了觸發BroadCastReceiver的意圖?

[英]How to find out which activity started the intent that triggered your BroadCastReceiver?

我有一個應用程序,當您按下按鈕時可以撥打一些電話。 我打一個電話:

Intent callIntent = new Intent(Intent.ACTION_CALL);

callIntent.setData(Uri.parse("tel:"+o.getTel()));
startActivity(callIntent);  

我有一個廣播接收器,可以檢測到通話結束。 但是,此廣播接收器還會接收從其他應用程序(例如,撥號器應用程序)發起的呼叫。

我該如何區分其他應用發起的通話和我的發起的通話?

特納克斯

在調用sendBroadcast(intent)之前,請向該意圖添加一個額外的內容,

例如i.putExtra(“ sender”,“我的標識符”)

然后在接收器的onReceive

字符串encodingType = intent.getStringExtra(“ sender”);

然后,您可以測試該字符串。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM