[英]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.