客户端与服务端之间的通信为了保证通信过程安全一般会使用 https 传输数据,https 里既有用到非对称加密,也有用到对称加密。
具体来说,客户端与服务端协商用什么加密算法的过程是非对称加密的,在协商完成之后,它们之间传输的数据是用对称加密的。
客户端与服务端之间的通信为了保证通信过程安全一般会使用 https 传输数据,https 里既有用到非对称加密,也有用到对称加密。
具体来说,客户端与服务端协商用什么加密算法的过程是非对称加密的,在协商完成之后,它们之间传输的数据是用对称加密的。
关于AIDL的使用,已经在之前的博客Android AIDL的基本用法
里介绍过,这次主要通过剖析AIDL生成的java文件来讲解AIDL机制。用的还是之前博客的例子,它在build目录下生成的 IMyAidlInterface.java 文件内容如下:
西藏,新疆,内蒙是国内我最想去的三个地方,它们分别对应着雪山,沙漠和草原,这次凑了7天假,连着两个周末,总共十一天,和朋友一起去西藏逛了一圈。
由于只有十一天的时间,不算长,所以没有选择坐火车进藏,而是先从南京飞到重庆,再到重庆转机,飞到拉萨,目前国内能直飞拉萨的好像只有成都,重庆,西宁,西安了。进拉萨的机票不算贵,南京到重庆 300 多,重庆到拉萨 600 多,总共才 1000 多一点。但是有个很坑的地方是飞出拉萨的机票特别贵,回去时买的拉萨飞西安的就差不多 1700 。所以如果有时间的话,最好还是飞机进藏,火车出藏,这样既能欣赏到火车穿出青藏高原的沿路美景,还比较省钱。
1 | public class Person<T> { |
打印结果:
1 | class com.test.Person |
1 | // 代理的接口 |
1 |
Android SDK 中有很多带有 @hide 注解的 api,这些API为系统隐藏的 api,上层应用无法直接调用。我们开发时如果必须使用有两种方式,一是利用java反射机制。二则是在我们项目中导入 Android 系统源码编译出的classes.jar 包,该 jar 包生成在out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar。这里我重点介绍Android Studio如何导入classes.jar.
本文以 ToggleButton 为例,介绍 Android 自定义属性的基本流程,代码在:https://github.com/qiracle/ToggleButton 。
在Android应用开发中,常用的布局方式主要有LinearLayout、RelativeLayout、FrameLayout等,通过这些布局可以实现各种各样的界面。我们需要知道如何高效地使用这些布局方式来组织UI控件,布局的好坏影响到绘制的时间,本节将通过减少Layout层级,减少测量、绘制时间,提高复用性三个方面来优化布局,优化的目的就是减少层级,让布局扁平化,以提高绘制的时间,提高布局的复用性节省开发和维护成本。