文章标题android来电通过广播实现电话自动挂断
2017-02-13 18:26
651 查看
第一步:在AndroidManifest.xml中,必须配置权限,
权限需要写在application外面,不然获取不到项目的权限
第二步:写个类MyPhone继承BroadcastReceiver,通过onReceive方法来进行数据传值,可以获取得到TelephonyManager.getITelephny方法的Method对象,在 调用getITelephny方法发挥ITelephny对象,结果进行判断。
//一些基本用法的图片
权限需要写在application外面,不然获取不到项目的权限
//获取数据电话的状态 <uses-permission android:name="android.permission.READ_PHONE_STATE" ></uses-permission> > //获取数据电话是否是打电话的状态 <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission> //需要配一下MyPhone类 <receiver android:name=".MyPhone"> <intent-filter android:priority="1000" > <action android:name="android.intent.action.PHONE_STATE"></action> </intent-filter>
第二步:写个类MyPhone继承BroadcastReceiver,通过onReceive方法来进行数据传值,可以获取得到TelephonyManager.getITelephny方法的Method对象,在 调用getITelephny方法发挥ITelephny对象,结果进行判断。
public class MyPhone extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { if("android.intent.action.PHONE_STATE".equals(intent.getAction())){ TelephonyManager telephonyManager= (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); int state=telephonyManager.getCallState(); switch(state){ case TelephonyManager.CALL_STATE_RINGING: //得到电话号码 String number=intent.getStringExtra("incoming_number"); Log.i("test",""+number); //获取得到TelephonyManager.getITelephny方法的Method对象 Class<TelephonyManager> telephonyManagerClass=TelephonyManager.class; try { //调用getITelephny方法发挥ITelephny对象 Method method=telephonyManagerClass.getDeclaredMethod("getITelephony",null); //允许访问私有方法 method.setAccessible(true); ITelephony telephony= (ITelephony) method.invoke(telephonyManager,null); //挂断谁的电话 if("15116396472".equals(number)) { telephony.endCall(); } } catch (NoSuchMethodException e) { e.printStackTrace(); } catch (InvocationTargetException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (RemoteException e) { e.printStackTrace(); } } } } }
//一些基本用法的图片
相关文章推荐
- 文章标题 android广播实现手机短信(smsMessages)自动回复的一些指令
- Android中通过来电转移实现“电话已关机”,“此号码已停机”等
- Android中通过来电转移实现“电话已关机”,“此号码已停机”等
- Android中通过来电转移实现“电话已关机”,“此号码已停机”等
- Android中通过来电转移实现“电话已关机”,“此号码已停机”等
- Android中通过来电转移实现“电话已关机”,“此号码已停机”等
- Android中通过来电转移实现“电话已关机”,“此号码已停机”等
- Android开发之实现自动接听电话(绝…
- Android拒绝来电的实现--ITelephony类的反射(结束电话)
- android 2.1 监听电话状态并自动接听来电
- android 通过局域网udp广播自动建立socket连接
- Android应用程序通过与服务器对比实现自动更新
- Android通过广播事件实现退出程序功能。
- android 2.1 监听电话状态并自动接听来电
- android 2.1 监听电话状态并自动接听来电
- Android实现Filterable通过输入文本框实现联系人自动筛选
- android 2.1 监听电话状态并自动接听来电
- android广播实现短信窃听器和开机自动启动activity
- Android实现Filterable通过输入文本框实现联系人自动筛选
- 通过PhoneStateListener实现Android电话监听