监听

在android中监听呼出电话(电话拦截、修改呼出电话)

旧时模样 提交于 2019-12-23 11:41:03
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 在android中向外拨打电话时系统会发出一个有序广播,虽然该广播最终会被拔号器里的广播接收者所接收并实现电话拔打,但我们可以在广播传递给拔号广播接收者之前先得到该广播,然后清除传递给拔号广播接收者的电话号码,在拔号广播接收者接收到该广播时,由于电话号码为null,因此取消电话拔打。 具体实现: 1.定义广播接收者接收 android.intent.action.NEW_OUTGOING_CALL <receiver android:name=".OutgoingCallReceiver"> <intent-filter android:priority="1"> <action android:name="android.intent.action.NEW_OUTGOING_CALL"/> </intent-filter> </receiver> 2.添加权限 < uses-permission android:name = "android.permission.PROCESS_OUTGOING_CALLS" /> 3.实现代码 public class OutgoingCallReceiver extends BroadcastReceiver { public void onReceive

Android应用如何监听自己是否被卸载

吃可爱长大的小学妹 提交于 2019-12-09 14:43:38
Android应用如何监听自己被卸载呢,Android系统没有提供这个回调方法。想想感觉是不可能监听到的,自己的代码都被卸载掉了,怎么来执行操作来监听呢。后来看到360这个流氓大哥,还真实现了,还挺稳定的。于是,在网上各种搜索。网上还是有很多人讨论,说怎么怎么着,来弄。我也是研究了很久。 网上的方案总结说来有 1.广播,只能监听到别人卸载。自己被卸载的时候,早就收不到广播了 2.监听log。这样听起来很靠谱,我写代码试过,能稳定监听到,但是发送操作不靠谱。我反正没发出去。 最后,在这里找到了一个靠谱的方案。思想就是监听/data/data/自己的package路径。 当Android卸载你的时候,会先删除这里的文件。 可以轮询监听,这个地方他也给了一个优化的方案就是采用Android的文件监听服务,这样只用等待文件监听服务的回调。没有什么性能问题。 还有就是必须得用C来写,我用Java写过,是不行的。Java能监听到,但是执行请求的时候太慢了。请求发不出去。 这是我按照他的方案写的demo。测试通过。完美运行。 https://github.com/sevenler/Uninstall_Statics/commits/master 这个原文连接地址: http://www.cnblogs.com/zealotrouge/p/3157126.html http://www