着信番号を取得し、機能し、トーストで番号を表示するための簡単なアプリケーションを作成しますが、この変数を処理のためにメインアクティビティに渡したいです...たとえば、管理者番号に電話するときにSMSを送信します。このコードを試してみましたが、データはありません私のUIに表示...何かアイデアはありますか?これのヘルプはありますか?
public class IncomingCallReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();
if(null == bundle)
return;
Log.i("IncomingCallReceiver",bundle.toString());
String state = bundle.getString(TelephonyManager.EXTRA_STATE);
Log.i("IncomingCallReceiver","State: "+ state);
if(state.equalsIgnoreCase(TelephonyManager.EXTRA_STATE_RINGING))
{
String phonenumber = bundle.getString(TelephonyManager.EXTRA_INCOMING_NUMBER);
Log.i("IncomingCallReceiver","Incomng Number: " + phonenumber);
String info = "Detect Calls sample application\nIncoming number: " + phonenumber;
Intent intentsend=new Intent("update");//Send data to update UI
intentsend.putExtra( "data","Admin call..."+info);
context.sendBroadcast(intentsend);
Toast.makeText(context, info, Toast.LENGTH_LONG).show();
}
そして私の主な活動は....
@Override
public void onResume() {
super.onResume();
updateReceiver=new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intentsend) {
//get extras, do some stuff
String data = intentsend.getStringExtra("data");
textphone.setText(data);
}
};
IntentFilter updateIntentFilter=new IntentFilter("update");
registerReceiver(updateReceiver, updateIntentFilter);
}