C/C++ 随手记 c++ 中的 header 文件 通过 header 文件来 声明,只需要 include 相对应的 header 文件就可以 正确的链接到对应的函数 log.h 123456#ifndef LOG#define LOGvoid Log(const char* message);#endif log.cpp 12345678#include <iostream>#include &q 2024-09-22 C/C++ #C/C++ 学习
Jetpack Compose 中的性能优化 Jetpack Compose 中的性能优化 在创建一个 Composable 功能时,开发人员不必考虑 Compose 在后台是如何工作的,这很好。然而,这样做有一个缺点——声明性降低了透明度和对正在发生的事情的理解,有些事情开始看起来像“魔法”。 Jetpack Compose 中的界面是使用 Composable 函数图构建的。 每次函数参数的值发生变化时,都会发生重组,即重新执行函数。在大 2024-08-04 Android 开发 #Android Compose
AirBnb Mavericks 框架探究 Mavericks 是 Airbnb 的 Android MVI 框架,是一种响应式的 UI 框架。 Mavericks 建立在以下现有技术和概念之上: Kotlin 语言 Android Architecture Components(Lifecycle、ViewModel 等) Kotlin Flow React (概念) Mavericks 吸收了来自 React 的响应式思想,同时 M 2024-07-13 Android 开发 #Mavericks
QuickAnimate DSL 一句话描述: 使用 Kotlin DSL (Domain-Specific Language,领域特定语言)和 ValueAnimator 实现一个动画框架,以 DSL 的方式来方便、快速的实现对 view 的各种属性动画。 通过 Kotlin DSL 的方式来组合针对 view 的多个属性的动画,用于快速、简单的实现复杂的组合动画效果。简单又好用——使用示例: 12345678910111213 2024-07-13 Android 开发 #Android
Android 构建流程(笔记流) Android的Apk构建流程主要包括资源的编译和代码的编译。梳理清楚打包构建过程能够帮助我们理解为什么编译耗时久以及如何去优化。我们可以从以下两个方面去理解Android的Apk打包构建的过程: Apk构建步骤 Apk自动化构建中的Gradle Task Apk构建步骤 Apk的构建主要包括以下几个步骤: 资源文件的编译,包括通过aapt工具编译(AndroidManifest.xml, 2024-07-06 笔记 #Android
写代码的一些原则(笔记流) 我们都曾经瞟一眼自己亲手造成的混乱,决定弃之而不顾,走向新的一天。我们都曾经看到自己的烂程序居然能运行,然后断言能运行的烂程序总比什么都没有强。我们都曾经说过有朝一日再回头清理。当然,在那些日子里,我们都没听过勒布朗(LeBlanc)法则:稍后等于永不(Later equals never)— Clean Code 随着需求的不断增加和变更,业务逻辑越来越复杂,参与开发的人也越来越多,多人协作 2024-07-06 笔记 #设计模式
马服如此恶心,如何玩上韩服DNF? 最近,国服 DNF 上线,非常火爆,想玩玩看韩服是什么样子的,由于国内环境问题,想玩上韩服DNF 还是要费上一番功夫的。这里记录下 Android 设备是怎么下载DNF 游戏安装包以及注册 韩服 DNF 账号的。 首先,需要创建一个未绑定任何地区的 google 账号。 账号注册需要海外手机号,这里使用 wild card 海外手机号 接收注册验证码的功能。指路:WildCard | 一分钟注册 2024-06-30 工作之外 #账号问题
Android Keyboard 高度监听实践 最近遇到一个需求,需要输入框布局附着在软键盘上面,随着软键盘的上移下移动画而移动。要做到这一点,需要监听键盘的高度,而且最好是在键盘弹起的时候,每一帧都有一个高度的回调,这样,我们监听键盘高度的变化,对我们的输入框布局做transY动画 ,即可实现 输入框附着在键盘之上随之上下移动的动画效果了。 想要实现的效果: 但是,经过对android 键盘高度监听相关方法的了解,发现事情并没有那么简单。 2024-06-30 Android 开发 #Android
MAC 目录不区分大小写问题 在苹果文件系统 APFS (Apple File System) 中,默认情况下是不区分大小写的,这意味着文件和文件夹的名称不区分大小写。例如,”Document.txt” 和 “document.txt” 被视为相同的文件。这种行为适用于大多数用户,并且是 macOS 和 iOS 设备的默认设置。 最近遇到了一个该特性导致的问题,在往 git 仓库提交文件时,两个人分别创建了两个同名的不区分大 2024-06-02 开发问题记录 #MAC系统
Hexo 博客中的图片怎么管理? 一般来讲,我们的博客中会有很多的图片,如果都提交到 Hexo 项目中进行发布的话,会导致我们的 Hexo 静态网站项目非常臃肿,极不推荐使用这种方式来管理博客中的图片。 如果是我们本地写 Markdown 笔记,图片一般会保存到本地目录,如果是在 Notion or 一些云笔记网站上写,图片会上传到它们的服务器进行保存。 对于 Hexo 博客,这里推荐使用 图床 的方式来进行管理。 首先,介绍一下 2024-06-02 HEXO 相关 #hexo建站