关于Android应用开发的一些安全注意事项
原文地址: http://www.javacodegeeks.com/2014/05/simple-tips-to-secure-android-app.html
http://developer.android.com/training/articles/security-tips.html
Android已经具有内置到操作系统的安全功能,显著减少应用安全问题的频次和影响,但作为应用程序开发者,我们也须要注意在开发应用程序时的安全问题. 安全级别是取决于应用程序的类型和域. 这里有我们须要注意的一些潜在的安全问题,我已经收集到了这篇文章中.
1.不要把私人或敏感数据储存在SD卡。
要存储在内部存储的文件,请使用下面的模式(Context.MODE_PRIVATE)openFileOutput&openFileInput方法。
假设你真的想将数据存储在SD卡,然后对它进行加密使用.
2.通过标识exported flag 为false限制ContentProvider的使用,当然并不一定每一个应用中都这样使用,仅仅是在没有与其它应用交互的情况下要标识为false.
3.限制的WebView来訪问本地数据。 HTML5和相关技术已经普遍应用在移动Web应用程序或混合型(Hybird)应用程序。
对于Hybrid採用的WebView从本地存储显示的HTML或从server获取HTML和的其它内容。对于webview重大安全问题是setAllowFileAccess()和setAllowContentAccess()方法.
4.通过BroadCastReceiver和Intent不传递敏感信息。
使用LocalBroadcastManager的进程内/应用程序的广播数据传递。 使用LocalBroadcastManager须要supportv4.jar.
5.不要在LogCat中打印敏感信息。
喜欢的username。password。Web服务的URL。请求或响应信息等细节.
6.在应用上线前去除没有必要的log日志
7.不接收处理一些恶意伪造的Intent.在之前的BroadcastReceiver的方法的OnReceive()方法中收到的Intent,验证调用者的包名。动作等信息。
8.给Service加上相应的自己定义权限.假设仅仅有自己的应用使用时能够加上 exported = false(同ContentProvider).
9.限制Activity的訪问,.假设仅仅有自己的应用使用时能够加上 exported = false.
10.应用公布之前确保debug mode 为false.
11.对于跨应用程序的功能。应用程序响应之前验证调用.
12.server验证方面能够使用基于Https的訪问.
13.当你认为某些变量或者方法在Java层easy破解的时候,能够把相应变量改为用JNI的方式去获取
14.使用ProGuard 文件混淆代码
15.移除from AndroidManifest.xml中不必要的权限.
16.慎用DexClassLoader 载入应用程序之外的dex文件.
关于Android应用开发的一些安全注意事项的更多相关文章
- Android N开发 你需要知道的一切
title: Android N开发 你需要知道的一切 tags: Android N,Android7.0,Android --- 转载请注明出处:http://www.cnblogs.com/yi ...
- Android游戏开发实践(1)之NDK与JNI开发03
Android游戏开发实践(1)之NDK与JNI开发03 前面已经分享了两篇有关Android平台NDK与JNI开发相关的内容.以下列举前面两篇的链接地址,感兴趣的可以再回顾下.那么,这篇继续这个小专 ...
- Android游戏开发实践(1)之NDK与JNI开发01
Android游戏开发实践(1)之NDK与JNI开发01 NDK是Native Developement Kit的缩写,顾名思义,NDK是Google提供的一套原生Java代码与本地C/C++代码&q ...
- Android游戏开发实践(1)之NDK与JNI开发02
Android游戏开发实践(1)之NDK与JNI开发02 承接上篇Android游戏开发实践(1)之NDK与JNI开发01分享完JNI的基础和简要开发流程之后,再来分享下在Android环境下的JNI ...
- 【转】Android 底层开发的几点
我干了3年Android sdk开发,觉得到了瓶劲没法更进一步,于是花了一年多点时间,大概摸到点门径.根据前辈的经验,Android底层完全入门需要两年. 先说下我的入门过程:第零步,下载源码,我下的 ...
- 《Android NFC 开发实战详解 》简介+源码+样章+勘误ING
<Android NFC 开发实战详解>简介+源码+样章+勘误ING SkySeraph Mar. 14th 2014 Email:skyseraph00@163.com 更多精彩请直接 ...
- Android安全开发之安全使用HTTPS
Android安全开发之安全使用HTTPS 1.HTTPS简介 阿里聚安全的应用漏洞扫描器中有证书弱校验.主机名弱校验.webview未校验证书的检测项,这些检测项是针对APP采用HTTPS通信时容易 ...
- Android安全开发之通用签名风险
Android安全开发之通用签名风险 作者:伊樵.舟海.呆狐@阿里聚安全 1 通用签名风险简介 1.1 Android应用签名机制 阿里聚安全漏洞扫描器有一项检测服务是检测APP的通用签名风险.And ...
- Android安全开发之浅谈密钥硬编码
Android安全开发之浅谈密钥硬编码 作者:伊樵.呆狐@阿里聚安全 1 简介 在阿里聚安全的漏洞扫描器中和人工APP安全审计中,经常发现有开发者将密钥硬编码在Java代码.文件中,这样做会引起很大风 ...
随机推荐
- 20155334 2016-2017-2 《Java程序设计》第七周学习总结
20155334 2016-2017-2 <Java程序设计>第七周学习总结 教材学习内容总结 第十二章:Lambda 认识Lammbda语法 Lambda去可以重复,符合DRY原则,而且 ...
- pycharm添加git ignore
pycharm现在提供了git ignore,很方便 从这里下载扩展 https://plugins.jetbrains.com/plugin/7495--ignore 放到pycharm根目录\pl ...
- 20145311 《Java程序设计》第4周学习总结
20145311 <Java程序设计>第4周学习总结 教材学习内容总结 第六章(继承与多态) 6.1继承 6.1.1-继承共同行为:如果在程序设计上存在着重复,那就需要修改,可以吧相同的程 ...
- 云主机搭建Kubernetes 1.10集群
一.基础环境 云主机 下载软件包 将所有软件下载至/data目录 # 链接:https://pan.baidu.com/s/13DlR1akNBCjib5VFaIjGTQ 密码:1l69 # 链接:h ...
- Pandas 练习题
1. 使用 pandas 中的函数,下载上证综指过去一段时间的数据,进行数据探索. 上证综指,全称是上海证券综合指数,是以上证所挂牌上市的全部股票为计算范围,以发行量为权数的加权综合股价指数.这一指数 ...
- shell 设置超时时间
等待20s后退出 a= b= while(true) do if [ $a -eq $b ] then echo "20s !!!" break else if [[ true ] ...
- 读写 Excel 工作表
导入诸如 CSV 之类文本格式的数据的优点是不需要依靠某些特定软件来读取数据,并且文件具有可读性,即软件中性.然而,它的缺点也很明显——我们不能直接对文本编辑器中的数据执行计算操作,因为这些内容是纯文 ...
- 常用 Math 属性及方法
Math 对象 Math.PI π 3.141592653589793 Math.ceil('2.5') Math.ceil(2.1) 向上取整 3 Math.floor ...
- Spring MVC文件上传教程 commons-io/commons-uploadfile
Spring MVC文件上传教程 commons-io/commons-uploadfile 用到的依赖jar包: commons-fileupload 1.3.1 commons-io 2.4 基于 ...
- 1003: [ZJOI2006]物流运输 最短路+dp
https://www.lydsy.com/JudgeOnline/problem.php?id=1003 数据范围很小,怎么瞎搞都行,n方dp,然后跑出最短路暴力转移,需要注意的是不能使用的可能有多 ...