我要创建一个application.Through我的应用程序用户可以阅读来电number.My活动有两个按钮,开和关。如果用户单击on按钮,则将执行以下代码。
IntentFilter filter=new IntentFilter(TelephonyManager.EXTRA_STATE);
registerReceiver(new MyPhoneReceiver(), filter);如果用户单击off按钮,则将执行以下代码。
unregisterReceiver(new MyPhoneReceiver());MyPhoneReceiver是我的broadcast name.If,当用户点击on按钮时,onReceive()方法将准备好读取来电号码并显示该number.Likewise。如果我点击off按钮,则广播将被注销。我的onRecieve()代码是
public void onReceive(Context context, Intent intent) {
System.out.println("am hereeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee");
Bundle extras = intent.getExtras();
if (extras != null) {
String state = extras.getString(TelephonyManager.EXTRA_STATE);
Log.w("sarath DEBUG", state);
System.out.println("state is:"+state);
if (state.equals(TelephonyManager.EXTRA_STATE_RINGING)) {
String phoneNumber = extras.getString(TelephonyManager.EXTRA_INCOMING_NUMBER);
Log.w("sarath DEBUG", phoneNumber);
System.out.println("phone no. is:"+phoneNumber);
}
}
}我的问题是,当我单击on按钮时,nothing is happening.when来电了,然后它也没有执行onRecive() code.please帮助我,朋友们
发布于 2011-12-21 14:19:39
请参阅本文:
Using PhoneStateListener to listen to state change in Android
Source code is here。
发布于 2011-12-21 14:15:48
此方法需要AndroidManifest.xml中的权限。您是否在应用程序中添加了任何权限?
https://stackoverflow.com/questions/8585550
复制相似问题