大象笔记

Android SQLDelight (六) 查看 Android Room 创建的 SQLite 数据库建表语句

为了将一个 Android App 由 Room 迁移到 SQLDelight 方案,首先需要了解既有 app 的表结构。 使用 Android Studio 自带的 App Inspection 将 Room 创建的 SQLite

Android Studio 解决 Gradle 编译失败 Unsupported class file major version 61

今天在编译一个 2021 年写的一个 Jetpack Compose 应用时,报错: > Unsupported class file major version 61 ## Android Studio 版本 Androi

jetpack compose,xml layout 与 flutter 的选型问题

这个周末无论是去公司团结的路上,还是一家去永旺吃饭的间隙,我都在纠结这个事情。也是用这些零碎的时间片段在手机上整理了这篇笔记。 ## 纠结的原因 计划将一个一年前用 jetpack compose 写的练手 android ap

Gorm select 表里所有数据包括已经软删除的数据

又写了一天的 bug ... 被 ORM 折腾死。 没关系,又活了一天,已经很厉害了。。。 ## Bug 的根源 一个设备信息管理系统的表,里面会自动给设备生成设备 ID。 格式: - 前6位为生产如期,如:211

新版本 Android Studio settings.gradle 中切换国内源

从 Android Studio Dolphin 2021.3.1 之后,国内源的切换配置就从 build.gradle 文件改到了 settings.gradle 文件。 修改之后,执行一下 Sync 就可以了。 但是如果遇到

Google Adsense 替代品 - 万维广告收益评测,收益还不错

上周一时兴起[申请并接入了万维广告](/baidu-union-google-adsense-alternative-wwads),测试了几天,效果还不错。直接上数据吧。 ![广告收益数据](https://cdn.sunzhongw

TeamsACS 在处理 BootStrap 事件时, 如何生成的密码

TeamsACS 是一个开源的 tr069 ACS 实现。其在处理 CPE 发送的 BootStrap 事件时,逻辑有点绕。 ## BootStrap 处理逻辑 1. 判断 CPE 请求的 body 非空时,如果是 BootSt

Android Studio flamingo 使用 jetpack compose 模板新建项目

今天将 Android Studio 升级到了最新版本 Android Studio Flamingo 2022.2.1 Patch 1。 但是新建项目的时候发现找不到 Jetpack Compose 的模板选项了,印象中之前版本是明

通过 Makefile 及 ssh 远程执行命令,实现服务器线上服务的自动部署

最近一直写接口文档,基于 [swaggo](/tag/swagger) 实现的文档服务。由于要跟前端配合,所以每天都要频繁更新接口文档,非常麻烦。之前是半自动化状态: 1. makefile 中 scp 文档程序到服务器 2. 手动

android 系统上关联文件类型与编辑器,用 kotlin 自动实现

起因是,我想保存一个 golang 代码源文件到 Android 手机上,方便在等车的时候继续阅读代码。但是我发现 Android 系统上居然没有一个类似纯文本编辑器的 app,小米系统内置的阅读器排版混乱,且无法编辑,默认诱导去下载 WP