1. 隐士 Intent 劫持
如果发现有隐士意图,至于要改为显示即可,启动 Service 时,使用隐士 Intent 启动 bindService(),系统就会报这个异常。
2. 未移除测试代码
打包的时候没有把关于日志打印的 Log关 掉,把相应的关闭即可。
3. activity ,Service BroadcastReceiver 组件暴露
如果组件不需要与其他 app 共享数据或交互,请将 AndroidManifest.xml 配置文件中设置该组件为 exported = “False”。
4. Fragment 注入
1.如果应用的 Activity 组件不必要导出,或者组件配置了 intent filter 标签,建议显示设置组件的 “android:exported” 属性为 false
2.重写 isValidFragment 方法,验证 fragment 来源的正确性
5.为防御屏幕录制
在涉及用户隐私的 Acitivity 中(例如登录,支付等其他输入敏感信息的界面中)增加WindowManager.LayoutParams.FLAG_SECURE 属性,该属性能防止屏幕被截图和录制。
例如:getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE,WindowManager.LayoutParams.FLAG_SECURE)
6.未关闭备份模式
在 AndroidManifest.xml 配置文件中显式配置 android:allowBackup=false。项目