文章总览 - 150
2024 年
鸿蒙APP开发学习01 - 项目结构说明
鸿蒙APP开发学习01 - 项目结构说明
好用工具第16期:纯粹的电视频道软件
好用工具第16期:纯粹的电视频道软件
2023 年
Windows程序安装目录及注册表信息
Windows程序安装目录及注册表信息
好用工具第15期: 无广告的WPS国内版
好用工具第15期: 无广告的WPS国内版
Windows多媒体开发 - DirectX
Windows多媒体开发 - DirectX
学习QT系列05 - Qt基本类型和常用类
学习QT系列05 - Qt基本类型和常用类
Windows系统Repo使用教程
Windows系统Repo使用教程
Git commit message check问题分析处理
Git commit message check问题分析处理
InnoSetup打包:静默安装
InnoSetup打包:静默安装
InnoSetup打包问题分析解决
InnoSetup打包问题分析解决
DirectX学习:显卡和其驱动的显示器
DirectX学习:显卡和其驱动的显示器
好用工具第14期: 无广告的WPS国际版及汉化
好用工具第14期: 无广告的WPS国际版及汉化
好用工具第13期: 电视播放阿里云盘资源工具对比
好用工具第13期: 电视播放阿里云盘资源工具对比
好用工具第12期: 在电视上播放阿里云盘资源
好用工具第12期: 在电视上播放阿里云盘资源
好用工具第11期: 使用Calibre打造自己的电子图书馆
好用工具第11期: 使用Calibre打造自己的电子图书馆
 智慧呼叫:拉人解难题,高效协作新玩法揭秘!
智慧呼叫:拉人解难题,高效协作新玩法揭秘!
群里提问的艺术
群里提问的艺术
好用工具第10期: 开源日常工具(一)
好用工具第10期: 开源日常工具(一)
好用工具第9期: WPS免费版本合集
好用工具第9期: WPS免费版本合集
学习QT系列04 - Qt的组件布局
学习QT系列04 - Qt的组件布局
好用工具第8期 - 开源开发者工具
好用工具第8期 - 开源开发者工具
学习QT系列03 - 应用、窗口和控件
学习QT系列03 - 应用、窗口和控件
学习QT系列02 - CMake
学习QT系列02 - CMake
好用工具第7期:小工具集合(二)
好用工具第7期:小工具集合(二)
好用工具第6期:小工具集合(一)
好用工具第6期:小工具集合(一)
引用、指针、句柄有什么区别?
引用、指针、句柄有什么区别?
提问的智慧
提问的智慧
托管C++、非托管C++、标准C++之间有什么不同?
托管C++、非托管C++、标准C++之间有什么不同?
C++种 const 与 constexpr 定义的常量有什么区别?
C++种 const 与 constexpr 定义的常量有什么区别?
C++中A a; 与 A* a = new A(); 有什么不同?
C++中A a; 与 A* a = new A(); 有什么不同?
好用工具第5期:使用VSCode+Codeium白嫖ChatGPT
好用工具第5期:使用VSCode+Codeium白嫖ChatGPT
Windows常用的设备接口 GUID 都有哪些?如何监听设备变化?
Windows常用的设备接口 GUID 都有哪些?如何监听设备变化?
C++ 种如何模拟Windows按键操作?
C++ 种如何模拟Windows按键操作?
好用工具第4期:全能播放器PotPlayer
好用工具第4期:全能播放器PotPlayer
好用工具第2期:手机电脑传文件LocalSend
好用工具第2期:手机电脑传文件LocalSend
好用工具第1期:手机电脑同屏QtScrcpy
好用工具第1期:手机电脑同屏QtScrcpy
2022 年
dotnet项目使用Cefsharp与Js互相调用函数
dotnet项目使用Cefsharp与Js互相调用函数
Git 操作 Gitea 出现 kex_exchange_identification: Connection closed by remote host
Git 操作 Gitea 出现 kex_exchange_identification: Connection closed by remote host
我的NAS方案及使用的功能
我的NAS方案及使用的功能
家用威联通NAS的硬盘方案
家用威联通NAS的硬盘方案
一个很好的 ASP.NET Core学习路线图
一个很好的 ASP.NET Core学习路线图
学习QT系列01 - 解决方案和项目结构
学习QT系列01 - 解决方案和项目结构
C#中一切皆对象,那么struct is object么?
C#中一切皆对象,那么struct is object么?
快速解决编译报错 "未知的生成错误“已添加了具有相同键的项
快速解决编译报错 "未知的生成错误“已添加了具有相同键的项
威联通nas使用Typecho搭建博客
威联通nas使用Typecho搭建博客
威联通nas搭建Frp实现内网穿透
威联通nas搭建Frp实现内网穿透
2020 年
Error information "SignerTimeStamp() failed." (-2146881277/0x80093103)
Error information "SignerTimeStamp() failed." (-2146881277/0x80093103)
mscordacwks.dll doesn't match desired version
mscordacwks.dll doesn't match desired version
EFCore使用(1) - 添加创建数据库
EFCore使用(1) - 添加创建数据库
Permissions 0777 for xxx are too open
Permissions 0777 for xxx are too open
Bad owner or permissions on ssh config
Bad owner or permissions on ssh config
git reset --hard not work
git reset --hard not work
学习WPF之解决方案和项目结构
学习WPF之解决方案和项目结构
log4net的配置和简单使用
log4net的配置和简单使用
常用学习网站推荐
常用学习网站推荐
WPF UI组件学习(一) - Window的外观实现及常用属性
WPF UI组件学习(一) - Window的外观实现及常用属性
WPF中的MVVM实现
WPF中的MVVM实现
WPF中Window如何设置为固定大小?
WPF中Window如何设置为固定大小?
Redundant 'object.tostring()' call 引发的思考
Redundant 'object.tostring()' call 引发的思考
C#与.NET Framework 和 Visual Studio 之间的版本对应关系
C#与.NET Framework 和 Visual Studio 之间的版本对应关系
.NET解决方案如何配置C#语言版本?
.NET解决方案如何配置C#语言版本?
2019 年
WPF APP项目添加资源文件夹
WPF APP项目添加资源文件夹
WPF自定义Slider样式踩坑记录
WPF自定义Slider样式踩坑记录
MSB3021 和 MSB3027 错误
MSB3021 和 MSB3027 错误
WPF中创建圆角无工具条的Window
WPF中创建圆角无工具条的Window
WPF布局
WPF布局
VLC播放PCM/WAV
VLC播放PCM/WAV
RPM解包
RPM解包
NDK历史版本下载
NDK历史版本下载
Java设计模式-代理模式
Java设计模式-代理模式
命令签名apk文件
命令签名apk文件
2018 年
Android App更新安装APK
Android App更新安装APK
键盘上的那个横线输入的是减号还是连字符?
键盘上的那个横线输入的是减号还是连字符?
如何查找第三方库(Gradle引用)的依赖?
如何查找第三方库(Gradle引用)的依赖?
如何在 Android 手机上无 Root 抓包?
如何在 Android 手机上无 Root 抓包?
为什么 HTTP Code 204 会导致 Retrofit 出现 NullPointerException?
为什么 HTTP Code 204 会导致 Retrofit 出现 NullPointerException?
AlertDialog 为什么要先调用 show() 才能 getButton()?
AlertDialog 为什么要先调用 show() 才能 getButton()?
如何自定义 AlertDialog 的样式?
如何自定义 AlertDialog 的样式?
如何在 BaseActivity 中封装 Toolbar ?
如何在 BaseActivity 中封装 Toolbar ?
 动态改变Retrofit的 base url和 rest 版本
动态改变Retrofit的 base url和 rest 版本
记录一次Git的rerset操作和恢复续-恢复远程分支
记录一次Git的rerset操作和恢复续-恢复远程分支
Android知识复习思维导图-Activity
Android知识复习思维导图-Activity
Android性能优化总结思维导图
Android性能优化总结思维导图
可兼容Android Studio 3.x版本的中文拼音输入法
可兼容Android Studio 3.x版本的中文拼音输入法
Python实现半自动化Fork Git仓库的某个分支
Python实现半自动化Fork Git仓库的某个分支
Fork Git仓库的某个分支
Fork Git仓库的某个分支
记录一次Git的rerset操作和恢复
记录一次Git的rerset操作和恢复
使用IDEA开发Gradle插件 : 采用Java语言编写
使用IDEA开发Gradle插件 : 采用Java语言编写
2017 年
采用Gradle构建的方式开发JavaWeb
采用Gradle构建的方式开发JavaWeb
Groovy中的GString与String的坑
Groovy中的GString与String的坑
Gradle学习思维导图
Gradle学习思维导图
centos查找已安装的jdk路径
centos查找已安装的jdk路径
centos6 install glibc-2.14
centos6 install glibc-2.14
使用IDEA开发Gradle插件 : 获取Android工程信息
使用IDEA开发Gradle插件 : 获取Android工程信息
使用IDEA开发Gradle插件 : 开发基本过程
使用IDEA开发Gradle插件 : 开发基本过程
检测Android Studio Project的编码配置
检测Android Studio Project的编码配置
解决Plugin with id 'jetty' not found问题
解决Plugin with id 'jetty' not found问题
centos7中安装Jenkins
centos7中安装Jenkins
centos7中安装gradle
centos7中安装gradle
centos7中安装Android SDK
centos7中安装Android SDK
centos7中安装JDK
centos7中安装JDK
Git flow工作流使用记录-建立新的功能分支
Git flow工作流使用记录-建立新的功能分支
Git flow 工作流使用记录-认识git flow工作流
Git flow 工作流使用记录-认识git flow工作流
Java集合的交集,并集和差集
Java集合的交集,并集和差集
RGB566与RGB888的区别
RGB566与RGB888的区别
Android Project 检查依赖库和插件版本
Android Project 检查依赖库和插件版本
解决Java代码创建RecyclerView无法显示滚动条的问题
解决Java代码创建RecyclerView无法显示滚动条的问题
RecyclerView的滚动事件研究之二
RecyclerView的滚动事件研究之二
Linux环境下解包system.new.dat
Linux环境下解包system.new.dat
Android Support Library各版本区别
Android Support Library各版本区别
Android架构师技能图谱(转载)
Android架构师技能图谱(转载)
Android ROM 开发技能图谱(转载)
Android ROM 开发技能图谱(转载)
Android App开发技能图谱(转载)
Android App开发技能图谱(转载)
使用本地Gradle加速构建Android项目
使用本地Gradle加速构建Android项目
解决多个Android工程统一配置问题
解决多个Android工程统一配置问题
Centos以rpm方式安装升级JDK
Centos以rpm方式安装升级JDK
2016 年
ListView的Adapter的getItemViewType()和getViewTypeCount()引起的异常
ListView的Adapter的getItemViewType()和getViewTypeCount()引起的异常
Android Support 包 BottomNavigationView的使用
Android Support 包 BottomNavigationView的使用
Android7.1图标快捷方式(AppShortcuts)实现Demo
Android7.1图标快捷方式(AppShortcuts)实现Demo
Fresco的使用及注意事项
Fresco的使用及注意事项
Fresco加载图片封装
Fresco加载图片封装
解决Android引用多个库的jni架构平台支持冲突的问题
解决Android引用多个库的jni架构平台支持冲突的问题
Android plugin is not compatible with Gradle
Android plugin is not compatible with Gradle
Android后台发送邮件进行日志反馈
Android后台发送邮件进行日志反馈
ButterKnife8使用指南
ButterKnife8使用指南
三种方式实现RecyclerView的Item点击事件
三种方式实现RecyclerView的Item点击事件
RecyclerView问题记录
RecyclerView问题记录
RecyclerView的ViewHolder和Adapter的封装优化
RecyclerView的ViewHolder和Adapter的封装优化
Retrofit测试接口
Retrofit测试接口
RecyclerView的滚动事件研究
RecyclerView的滚动事件研究
那些年我们错过的响应式编程
那些年我们错过的响应式编程
Typecho中添加分类页面
Typecho中添加分类页面
Git学习笔记-常用命令
Git学习笔记-常用命令
RecyclerView中Adapter和ViewHolder的封装
RecyclerView中Adapter和ViewHolder的封装
版本控制方案
版本控制方案
Retrofit使用教程(三):Retrofit与RxJava初相逢
Retrofit使用教程(三):Retrofit与RxJava初相逢
 Android项目版本控制提交忽略表
Android项目版本控制提交忽略表
Retrofit使用教程(二)
Retrofit使用教程(二)
Gradle中获取SVN版本号和Jenkins的Build号
Gradle中获取SVN版本号和Jenkins的Build号
Retrofit使用教程(一)
Retrofit使用教程(一)
Java设计模式---单例模式
Java设计模式---单例模式
简单通用的ViewHolder
简单通用的ViewHolder
2015 年
版本控制总结
版本控制总结
Android设备获取唯一识别码(转)
Android设备获取唯一识别码(转)
Android实现微信录制小视频的计时动画
Android实现微信录制小视频的计时动画
Android实现输入手机号时自动添加空格
Android实现输入手机号时自动添加空格
Android音乐播放模式切换-外放、听筒、耳机
Android音乐播放模式切换-外放、听筒、耳机
Java简易Log
Java简易Log
Android代码规范参考指南
Android代码规范参考指南
Android中Pcm文件转Amr文件
Android中Pcm文件转Amr文件