<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[csfchh的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/csfchh</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; csfchh]]></copyright><item><title><![CDATA[【ADB系列】开发者选项开关]]></title><link>https://blog.csdn.net/csfchh/article/details/142852682</link><guid>https://blog.csdn.net/csfchh/article/details/142852682</guid><author>csfchh</author><pubDate>Fri, 11 Oct 2024 14:12:59 +0800</pubDate><description><![CDATA[通过adb命令开启常用开发者选项开关]]></description><category></category></item><item><title><![CDATA[【NDK系列】使用ndk-build构建可在Android设备运行的ELF可执行文件]]></title><link>https://blog.csdn.net/csfchh/article/details/136424222</link><guid>https://blog.csdn.net/csfchh/article/details/136424222</guid><author>csfchh</author><pubDate>Sat, 02 Mar 2024 23:49:20 +0800</pubDate><description><![CDATA[介绍如何使用NDK开发一个最简单的可在Android设备运行的可执行程序]]></description><category></category></item><item><title><![CDATA[【NDK系列】Android tombstone文件分析]]></title><link>https://blog.csdn.net/csfchh/article/details/136421047</link><guid>https://blog.csdn.net/csfchh/article/details/136421047</guid><author>csfchh</author><pubDate>Sat, 02 Mar 2024 22:20:42 +0800</pubDate><description><![CDATA[Android native crash分析方法及工具使用介绍]]></description><category></category></item><item><title><![CDATA[PlantUML基础使用教程]]></title><link>https://blog.csdn.net/csfchh/article/details/134411011</link><guid>https://blog.csdn.net/csfchh/article/details/134411011</guid><author>csfchh</author><pubDate>Wed, 15 Nov 2023 01:17:24 +0800</pubDate><description><![CDATA[PlantUML插件的使用及其语法简介]]></description><category></category></item><item><title><![CDATA[Shell脚本案例：jar包启动和运行管理]]></title><link>https://blog.csdn.net/csfchh/article/details/122817276</link><guid>https://blog.csdn.net/csfchh/article/details/122817276</guid><author>csfchh</author><pubDate>Tue, 13 Jun 2023 00:55:35 +0800</pubDate><description><![CDATA[使用shell脚本管理jar应用，支持：启动、重启、停止、是否运行等简单功能
]]></description><category></category></item><item><title><![CDATA[Mac安装使用CoolTerm]]></title><link>https://blog.csdn.net/csfchh/article/details/129420764</link><guid>https://blog.csdn.net/csfchh/article/details/129420764</guid><author>csfchh</author><pubDate>Tue, 30 May 2023 01:16:45 +0800</pubDate><description><![CDATA[本文介绍了coolterm的在macOS上的安装和配置方法]]></description><category></category></item><item><title><![CDATA[Shell脚本案例：获取自己上周git提交记录]]></title><link>https://blog.csdn.net/csfchh/article/details/129696111</link><guid>https://blog.csdn.net/csfchh/article/details/129696111</guid><author>csfchh</author><pubDate>Tue, 21 Mar 2023 20:21:55 +0800</pubDate><description><![CDATA[日常工作周报需要总结上周的主要工作，开发了哪些需求解决了哪些bug，通过git提交日志来呈现是比较客观的，本文介绍如何使用shell调用git命令获取自己上周的git提交记录]]></description><category></category></item><item><title><![CDATA[Android开发中的服务发现技术]]></title><link>https://blog.csdn.net/csfchh/article/details/128268494</link><guid>https://blog.csdn.net/csfchh/article/details/128268494</guid><author>csfchh</author><pubDate>Sat, 10 Dec 2022 20:23:05 +0800</pubDate><description><![CDATA[可以根据是否使用反射把这类技术分为有反射和无反射两大类（或动态和静态）]]></description><category></category></item><item><title><![CDATA[Shell脚本案例：安装指定路径下的所有apk到安卓设备]]></title><link>https://blog.csdn.net/csfchh/article/details/126662985</link><guid>https://blog.csdn.net/csfchh/article/details/126662985</guid><author>csfchh</author><pubDate>Fri, 02 Sep 2022 14:51:26 +0800</pubDate><description><![CDATA[工作中经常涉及的操作流程如下：`解bug`->`打release包`->`安装apk到手机`->`验证bug`，在之前的文章中已经介绍了如何做复杂工程的打包自动化方案，本篇解决的是`安装apk到手机`这个步骤的自动化操作。]]></description><category></category></item><item><title><![CDATA[Shell脚本案例：Git规范commit-msg]]></title><link>https://blog.csdn.net/csfchh/article/details/122841214</link><guid>https://blog.csdn.net/csfchh/article/details/122841214</guid><author>csfchh</author><pubDate>Tue, 09 Aug 2022 11:44:19 +0800</pubDate><description><![CDATA[git本身自带hooks入口，支持用户通过脚本的方式在git命令执行前后进行一些检查工作，使用的脚本语言为Shell。相关hook脚本需放在本地.git/hooks目录下，打开该目录可以看到很多示例脚本，我们要用到的正是commit-msg这个。

只需要将对应脚本的后缀.sample去掉即可启动该脚本，然后我们将脚本内容修改为自己的脚本逻辑即可：
#!/bin/sh

COMMIT_MSG=`cat $1 | egrep "^(feat|fix|docs|chore)\(\w+\)?:\s(\S|\w)+]]></description><category></category></item><item><title><![CDATA[Android混淆那些事儿]]></title><link>https://blog.csdn.net/csfchh/article/details/125814752</link><guid>https://blog.csdn.net/csfchh/article/details/125814752</guid><author>csfchh</author><pubDate>Sat, 16 Jul 2022 01:02:01 +0800</pubDate><description><![CDATA[介绍proguard基础语法和逆混淆工具的使用]]></description><category></category></item><item><title><![CDATA[Shell脚本案例：Android多模块构建和发布]]></title><link>https://blog.csdn.net/csfchh/article/details/125664989</link><guid>https://blog.csdn.net/csfchh/article/details/125664989</guid><author>csfchh</author><pubDate>Thu, 07 Jul 2022 18:45:09 +0800</pubDate><description><![CDATA[在安卓模块化和组件化开发的趋势下，一个构建物往往依赖会依赖其他构建物进行进行编译，而构建物也可能发布到多个不同的仓库，此时采用手动构建和发布的方式就会非常影响开发效率，我们期望构建和发布可以自动化和批量化...]]></description><category></category></item><item><title><![CDATA[【NDK系列】CMake使用指南]]></title><link>https://blog.csdn.net/csfchh/article/details/119105043</link><guid>https://blog.csdn.net/csfchh/article/details/119105043</guid><author>csfchh</author><pubDate>Tue, 14 Jun 2022 19:31:52 +0800</pubDate><description><![CDATA[CMake作为C/C++的构建工具，其地位和作用类似于安卓中的gradle，因此具备安卓开发能力的开发者可以将两者对比着学习有助于理解和记忆。CMake旨在实现编写一次CMakeLists.txt可以在不同操作系统上完成可执行程序或者链接库的构建，CMakeLists.txt于CMake相当于build.gradle之于gradle。
......]]></description><category></category></item><item><title><![CDATA[SQL：快速入门]]></title><link>https://blog.csdn.net/csfchh/article/details/124588335</link><guid>https://blog.csdn.net/csfchh/article/details/124588335</guid><author>csfchh</author><pubDate>Thu, 19 May 2022 01:10:32 +0800</pubDate><description><![CDATA[本文是2016年的学习笔记，最近工作用到了SQL，顺手调整了下格式分享出来。]]></description><category></category></item><item><title><![CDATA[Android如何设计一个flutter容器]]></title><link>https://blog.csdn.net/csfchh/article/details/121332467</link><guid>https://blog.csdn.net/csfchh/article/details/121332467</guid><author>csfchh</author><pubDate>Thu, 12 May 2022 15:44:23 +0800</pubDate><description><![CDATA[Android端flutter页面容器实现思路

]]></description><category></category></item><item><title><![CDATA[Android原生图表库调研]]></title><link>https://blog.csdn.net/csfchh/article/details/124599618</link><guid>https://blog.csdn.net/csfchh/article/details/124599618</guid><author>csfchh</author><pubDate>Thu, 05 May 2022 23:55:43 +0800</pubDate><description><![CDATA[曾经由于项目需要使用过一些开源的安卓原生图表库，但是没有系统整理过，最近又遇到这个需求，遂整理一下省得日后重蹈覆辙。

]]></description><category></category></item><item><title><![CDATA[Gradle案例：apk构建、安装、启动一体化]]></title><link>https://blog.csdn.net/csfchh/article/details/124384276</link><guid>https://blog.csdn.net/csfchh/article/details/124384276</guid><author>csfchh</author><pubDate>Sun, 24 Apr 2022 17:55:16 +0800</pubDate><description><![CDATA[背景
我们知道在调试时，只需要点击一下运行按钮就会自动为我们执行build-&gt;install-&gt;launch三个动作，非常方便，然而到了release阶段，AS就没有为我们提供类似的快捷操作了。本文的初衷就是希望在release阶段实现与AS run App类似的一键操作，提高自测阶段的工作效率。
技术点
首先需要了解build-&gt;install-&gt;launch这三个动作是如何实现的：

build：就是构建apk，相关的task为assemble&lt;VariantName&gt]]></description><category></category></item><item><title><![CDATA[Git patch的使用方法和场景]]></title><link>https://blog.csdn.net/csfchh/article/details/123902952</link><guid>https://blog.csdn.net/csfchh/article/details/123902952</guid><author>csfchh</author><pubDate>Fri, 01 Apr 2022 17:13:45 +0800</pubDate><description><![CDATA[Git补丁在同步不同分支的代码时应用较多，且比较灵活，比如修复了基线的一个bug，同步到各个版本的发布分支。本文介绍两种生成和应用补丁的方案。]]></description><category></category></item><item><title><![CDATA[flutter解决方案：支持动态多语言资源]]></title><link>https://blog.csdn.net/csfchh/article/details/123816927</link><guid>https://blog.csdn.net/csfchh/article/details/123816927</guid><author>csfchh</author><pubDate>Tue, 29 Mar 2022 11:48:35 +0800</pubDate><description><![CDATA[通常对于一个flutter组件来说，其多语言支持有两种情况：一是仅支持中文不支持多语言，二是多语言仅支持英文。当涉及到组件需要提供给海外业务使用时，就不能满足需求了，但我们在编码时就在组件提供所有语言资源是不现实的，理想情况是像原生一样支持在打包时通过添加多语言资源文件的方式，在不修改组件代码的前提下增加多更多语种的支持。本文提供了一种实现方案，介绍如下。]]></description><category></category></item><item><title><![CDATA[github项目下载单个文件夹的办法]]></title><link>https://blog.csdn.net/csfchh/article/details/123668687</link><guid>https://blog.csdn.net/csfchh/article/details/123668687</guid><author>csfchh</author><pubDate>Tue, 22 Mar 2022 21:53:02 +0800</pubDate><description><![CDATA[GitHub上有的个别项目过大，但只需要下载其中一个文件夹，下载整个项目要很久而且没必要。下面介绍使用SVN实现部分文件夹的下载。
]]></description><category></category></item></channel></rss>