什么是Socket?
- 即套接字,是一个对 TCP / IP协议进行封装 的编程调用接口(API)
首先实现插件式换肤需要知道以下几个流程:
Groovy 是一种动态语言,它和 Java 类似(算是 Java 的升级版,但是又具备脚本语言的特点),都在 Java 虚拟机中运行。当运行 Groovy 脚本时它会先被编译成 Java 类字节码,然后通过 JVM 虚拟机执行这个 Java 字节码类
每次构建(build)至少由一个 project 构成,一个 project 由一到多个 task 构成。每个 task 代表了构建过程当中的一个原子性操作,比如编译,打包,生成javadoc,发布等等这些操作
我们首先先看下这个效果是怎么样的,如果有人见过百度音箱或者是小米音箱,就应该对这个会清楚一些,也就是图示中我们是自定义了一个下拉状态栏,并没有使用系统原生的,那么我们就可以根据需求实现我们自定义的下拉状态栏 UI,比如音乐通知,时间、天气显示信息等等。不过这种需要自定义的情况一般是针对于 Android 定制化的地方会用到的多一些,但本文更多的是牵扯的是如何将这个下拉状态栏运行在独立进程中,以及进程之间的通信,这样的话即使下拉状态栏崩溃了,也不会影响主进程。
OKHttp 是作为 Android 开发人员使用最多的网络库之一, 接下来从最基础的使用来介绍 OkHttp 源码里面是如何工作的。
首先需要添加OKHttp的依赖
1
|
implementation 'com.squareup.okhttp3:okhttp:3.5.0' |
阅读本文前,需要对事件分发机制所有了解,建议先阅读 Android 事件分发机制源码流程分析,但是解决这个问题之前,首先我们要知道,滑动冲突是怎么来的,为什么会存在滑动冲突呢 ?
其实在 Android 中,只要是在界面中内外两层 View 可以同时滑动的时候,这个时候,就会产生滑动冲突了,或者可以理解在同一方向一个 View 上只能响应一组事件序列。当然了,部分情况下,会看到同时滑动的情况,可能是通过特殊的方式,将自己的事件序列传递给其他 View 上面了。
假设我们的 Activity 中的布局是这样的
Android 官方文档中的描述是:协程是一种并发设计模式,可以在 Android 平台上使用它来简化异步执行的代码。或者通俗的讲:协程就是一套轻量级线程框架,使用方便,拥有一系列的语法糖
Android 中如果要使用协程,必须添加如下依赖库:
|
|
如何开启一个协程,最简单的方式就是使用 GlobalScope.launch 函数,如下所示:
|
|
在这里先看一下我们项目中之前写的日志打印工具