Kotlin 代码样式指南
在学习完语言语法后,要学好和用好一门开发语言,代码风格和单元测试是最基础的两个内容。其中单元测试在每个语言中基本相同,而代码风格或代码样式则需要以每个语言的推荐风格为标准,保持统一和规范使用,这在团队协作和开源项目中非常重要。
Android 工程的 Vagrant Gitlab Runner
Gitlab runner 是一个优秀的持续集成工具,通过 runner 我们可以执行自动化编译、静态代码检查、单元测试、UI 测试,发布等操作,是高效快速迭代开发的必要工具。 GitLab Runner 独立运行于 Gitlab 实例,可以非常容易的扩展和安装。
Android 应用内存数据分析方法
内存优化是 Android 开发中一个非常重要的环节,如果不注意就可能出现内存泄漏,内存溢出,应用运行缓慢,效率低下等问题,严重影响用户体验。本文主要介绍 Android 应用内存的抓取和内存数据分析方法。
代码仓库服务之 GitLab
GitLab 是一个优秀的协作代码仓库服务,拥有几乎所有 GitHub 的功能,可以当作后者的开源实现。不同于纯 git 仓库服务, GitLab 主打社区和自动化 Pipeline 功能,拥有众多优秀扩展如 CI/CD,Pages,Issue board 等。
Android 外置 SD 卡写入权限问题
最近升级到 Android 9.0 后,发现文件管理器在写入外置 SD 卡时出现了写入失败的问题,定位到 File.canWrite() 方法,发现返回了 false。经过讨论追踪定位,发现是由于 Google 的一个更改导致的,这里的修改移除了 WRITE_MEDIA_STORAGE 相关权限,导致了外部 SD 卡存储不可写的问题。
MotionLayout 实现顶部栏拉伸效果
MotionLayout 是 google 新推出的 UI 组件,是 ConstraintLayout 2.0 库的一个大更新。它继承自 ConstraintLayout 可以方便的制作复杂动画界面,通过在 xml 中设置起始状态,关键帧,结束状态,快速实现界面动效或动画效果。
域名转移到 CloudFlare Registrar 和掉年问题
CloudFlare 是一家优秀的 CDN 服务提供商,同时提供 DNS 解析服务。最近又推出了域名注册服务CloudFlare Registrar,因为只收取注册局的费用而没有中介费,可以说是最便宜的域名注册服务商了。同时以 CloudFlare 的强大实力和服务质量,相信可以非常放心的将域名托管在这里。
自建稍后阅读服务之 Wallabag
Wallabag 是一款优秀的开源免费稍后阅读工具,可以将网络上的文章保存并分类,再稍后阅读。类似于 Pocket 和 Instapaper 等商业服务,是它们的可靠替代品。
密码管理工具之 keeweb
keeweb 是一款优秀的免费开源密码管理软件,兼容 KeePass 数据库,跨平台,也可以托管在任何静态网页服务上作为 web 应用使用。数据库文件可以方便的同步到 Dropbox 。
Cleaner 应用工程及架构设计
Cleaner 是一个新开发的工具类应用,主要集成了内存、通知、应用、大文件、冗余文件、相册清理等功能。同时提供对外的数据提供者接口和 Deeplink 入口。
Android 开发人员自动化测试
编写测试的目的是为了验证程序是否正确执行、行为无误及是否稳定可用。同时,拥有充分测试代码的项目易于维护,便于交接、团队协作。
Android 屏幕控制工具 scrcpy
scrcpy 是 Genymobile 出品的一款优秀 Android 屏幕控制软件,可以通过 adb 连接或 adb over TCP/IP 控制手机屏幕。