Android中使用相机从来就不是一件容易的事。Camera1要自己管理Camera相机实例,要处理SufraceView相关的一堆东西,还有预览尺寸跟画面尺寸的选择,页面生命周期切换等等问题 后来推出了Camera2,从官方Demo 就上千行代码来看,Camera2并不解决用起来复杂的问题,它提供
前言 Lifecycle是生命周期感知组件,可以对Activity或者Fragment的生命周期的状态变化做出响应,帮助开发者写出更好组织的,轻量级的代码,更容易维护。 为什么需要Lifecycle 举个栗子,在应用开发过程中,处理Activity或者Fragment的生命周期不可避免,先看官方文
前言 Android系统推出到现在已经有十多年了,发展也越来越成熟了。但是刚开始,开发Android的框架还是比较少的,也没有什么规范,大多数代码都是自己写,后来推出了一系列的框架帮助开发者开发,比如网络请求,从开始的Volley,到后来的OkHttp,Retrofit等,再比如图片加载框架,从开始
在移动端开发中安全性设置非常重要,尤其是目前非常流程H5混合式开发APP,在Android开发中,我们可以通过证书锁定的方式来增加客户端与服务端的安全保障,本文主要介绍SSL数字证书在Android开发中的证书锁定(SSL/TLS Pinning) 常规SSL证书设置 通常由CA权威机构签发的证书
Android HTTPS抓包 常规https抓包方案便是通过内置代理证书来进行抓包的。 其中在7.0以下,如果应用不做证书强校验,直接通过https进行请求是可以进行抓包的。 而到了7.0及以上,由于更新了安全机制,导致应用默认不信任用户手动安装的证书,所以即使是没有主动做证书强校验也是抓不了包
背景 使用(Annotation Processing Tool)即注解处理器,无论怎么Build都不能自动生成所需要的文件 添加注解 Annotation为Java library Module,很简单 @Target(ElementType.FIELD) //作用于属性上 @Retenti
手动搜索路径:https://play.google.com/store/apps/details?id=包名 权限 Google Play会对那些app里使用了相关硬件权限的情况做处理(比如: android.permission.CAMERA),某些设备就不能直接从Google Play下载ap
Android系统的碎片化很严重,并且手机日期不正确、手机根证书异常、WebView BUG等各种原因,都会导致WebViewClient无法访问HTTPS站点。SSL错误的处理方式十分关键,如果处理不当,可能导致中间人攻击,黑客窃听数据,进而引发安全事故。 严谨地处理onReceivedSslE
WebViewClient onReceivedSslError Android中使用WebView加载html,在html中使用ajax请求Https服务,如何进行证书的安全校验呢?本文主要讲解WebView实现Https自制证书的校验。 我们使用Android的WebView的时候会设置一个We
引入HTTPS是为了解决HTTP所带来的三个问题: HTTP是明文传输,数据容易被窃取,因此要加密数据以防止数据中途窃取 认证服务器身份,确保数据发送到正确的服务器 维护数据的完整性,防止数据在传输中被改变,如中间人攻击 所以本章主要是讲述如何使用OkHttp或HttpUrlConnectio
什么是静态注册 静态注册是根据JNI的方法名字来实现与Java方法的映射对应关系。如下所示,方法名的组成是根据JNIEXPORT jstring JNICALL Java_+包名+_类名+_方法名组成。包名直接要用_连接。 JNIEXPORT jstring JNICALL Java_com_co
OKHttp的CertificatePinner类用于约束哪些证书是可信的。锁定证书可以防止对证书颁发机构相关的攻击。它还阻止通过用户已知或未知的中间证书颁发机构建立的连接。这个类目前锁定了一个证书的主题公钥信息,如Adam Langley的博客所述。公钥不是HTTP公钥锁定(HPKP)中的base
为了防止中间人攻击,我们需要证书固定技术 Android:https://developer.android.com/training/articles/security-ssl.html#Pinning OKHttp CertificatePinner: https://square.github
基本使用 private TextView mTvBirthday; private MyDatePicker mBirthdayPicker; private String today; @Override protected void onCreate(Bundle savedInstance
现象:Activity recreate重建导致Fragment多次初始化,甚至造成Fragment白屏 参考:http://www.apkfuns.com/fragmentactivity-recreate-cause-multiple-initialization/ 起因 我们先来看段代码(仅