Lean OpenWrt 编译使用小记

Lean OpenWrt 是 Lean 大佬修改的 OpenWrt 开源版本,和 KoolLede 是国内两个比较有名的分支。Lean OpenWrt 不提供预编译文件,所以想使用的话需要自己编译一遍。

编译需要使用 Ubuntu 系统,不要使用 WSL 会出问题。 编译没什么好说的,README 里面写的很详细一步步来就行了,推荐使用这个脚本白嫖下 Github 的服务器来云编译。

编译选项[……]

>> 接着看呗

中文移动开发所想—火山平台为例

此文写于偶然间发现火山安卓平台发布了 libGDX 类库的即兴思考,组织较为混乱,也可能包含技术或事实错误,还请指正。

部分观点较为主观,无引战意思,还望海涵,请勿撕逼。

引言

说起中文编程,易语言绝对是领导者。尽管其有着数不清的槽点,也因此被专业人士嘲讽,但事实胜于雄辩——易语言至今还拥有相对活跃的社区,众多非科班的业余开发者照样使用易语言做出了优秀的软件,也在不少接单平台[……]

>> 接着看呗

Android 磁盘最近最少缓存实现 – DiskLruCache 源码分析


DiskLruCache 是一个 Android 端使用广泛的磁盘 LRU (最近最少使用)缓存算法的实现库,甚至在 AOSP 中都有使用。

基础使用

为了对整体架构有个印象,方便找分析入口,先看看基本的使用。

实例化:

val cache = DiskLruCache.open(cacheFile, version, valueCount, maxSize)

写入:

val e[......]

>> 接着看呗

Git HTTP+SSH 代理配置

本来是没有什么技术含量的东西。奇怪的是网上答案千篇一律而且大部分都是错的,不知道要坑坏多少人:smiling_imp:。

HTTP 代理

HTTP 代理相对简单

# HTTP 代理
git config --global http.proxy http://127.0.0.1:1080
git config --global https.proxy http://127.0.0.1:1080[......]

>> 接着看呗

Android 自定义 View 的默认属性值(四个构造函数的作用)

常见的套路

自定义 View 同学们一定或多或少都接触过,毕竟设计给出的样式往往从来不是系统默认的🙂。 自定义 View 时往往遵守下面这样的套路:

  1. attrs.xml 中声明自定义属性(或使用系统预定义属性),经常用 declare-styleable 包裹起来。
  2. 继承一个 View 并写两个构造函数:constructor(context: Context), constructor[......]

    >> 接着看呗

Android 事件分发机制

Android 事件分发机制一直让人头痛,之前也是面向 GitHub 编程得过且过。今天下定决心了解一下,以便后面自己定制 View 效果。Android 触摸事件有三个基本类型:ACTION_DOWN, ACTION_MOVE, ACTION_UP,后两者的传递顺序取决于 DOWN 的传递结果,所以就从 ACTION_DOWN 开始分析。

ACTION_DOWN

全景

借用一张下面参考[……]

>> 接着看呗

Jenkins+Github 持续测试

说明下环境:

  • Windows 10 (因为还需要跑其他一些东西)
  • Jenkins 2.204.1 LTS
  • 内置 Jenkins war 2.217

配置 GitHub

鉴权

Jenkins 的安装过程很简单就不写了。首先需要安装 GitHub Plugin 插件,如果安装 Jenkins 时选择了安装常用插件那么应该已经装好了,否则就去手动安装一下。

为了和 GitHub 账户连接,[……]

>> 接着看呗