主题:【原创】请尽量避免用你的Android设备翻墙 -- letmein
刚才家里路由器重启了,突然感觉手机有点慢,在手机管家里一看,一个常玩的游戏竟然已经在后台启动了,一想就明白原因,因为西西河常被封,翻墙用户估计不少,也提醒各位一下。
原因:Android APP可以注册监听器,在网络状态发生变化(如开启VPN)时自动启动。
以微信为例,下载地址为http://dldir1.qq.com/weixin/android/weixin703android1400.apk,MD5为cad927e843b4382f3c757ebe8a95722b,解包后发现AndroidManifest.xml里确实注册了网络状态变化的监听器:
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
</intent-filter>
</receiver>
测试方法:
- 在微信里点击“我-设置-退出-关闭微信”,在对话框中取消选中“有新消息时在通知栏提醒”,点击“关闭微信”,退出微信;
- 在手机管家类APP中查看正在运行的APP,列表中没有微信,说明微信已经成功退出;
- 打开飞行模式,待手机切换到飞行模式后再关闭飞行模式;
- 在手机管家类APP中查看正在运行的APP,列表中如果有微信,就说明微信已经自动启动了。
这个测试不一定准确,根据厂商不同,有的手机会很激进地杀后台进程,即使APP自动启动了也马上会被杀掉。自动启动也不意味着APP就一定会干坏事,这是安卓系统本身提供的便利功能,微信全球用户数早就破十亿了,安全性是肯定没问题的,大家可以放心使用,需要提防的是不知来头的APP,比如那些直接用apk文件安装,而不是从各大应用市场安装的,要是万一潜伏着等你开启VPN时自动后台启动向警察叔叔举报……
面向 Android 7.0 开发的应用不会收到 CONNECTIVITY_ACTION 广播,即使它们已有清单条目来请求接受这些事件的通知。
https://developer.android.com/about/versions/oreo/background.html
针对 Android 8.0 的应用无法继续在其清单中为隐式广播注册广播接收器。
Android 7.0是2016年发布的,出于减少电量消耗的目的,静态注册监听网络变化没用了,Android 8.0 是2017年8月发布的,对广播限制的更严格,但这些限制都只是针对“专门面向新版本Android设计的APP”,“没有针对新版Android系统设计的APP”在新版本Android上还是照旧,因此这个问题可能会一直延续下去。
再发散思考一下,APP能拍照就能做人脸识别,能访问网络就能把用户信息上传到自己的服务器,也许,换个苹果手机会安全的多?
- 相关回复 上下关系8
🙂【原创】请尽量避免用你的Android设备翻墙
🙂待认可未通过。偏要看
🙂待认可未通过。偏要看
🙂不会翻墙也能上西西河的 2 goodgunner 字83 2019-03-03 04:37:04
🙂有几次上不了之后我也使百度到了新址 桥上 字0 2019-03-03 23:42:13
🙂最近华为更新了系统,原来的翻墙手段都失效了 1 掷骰子 字45 2019-03-01 22:27:46
🙂倒是印证了华为那条用iphone发的tweet 2 shinji 字129 2019-03-01 19:57:49
🙂其实,这些没那么要紧 8 南宫长万 字935 2019-03-01 05:23:52