随笔分类 - Android
摘要:
Okio最初是作为OkHttp的一个组件出现,是 OkHttp 实现HTTP协议数据构建、解析中使用到的底层 IO 库。其相比于传统的 java.io 和 java.nio ,其在文件、网络等数据读写操作更加便捷、高效。
阅读全文

摘要:
Android 13(API 33)于 2022年8月15日 正式发布(发布时间较往年早了一些),正式版Release源代码也于当日被推送到AOSP Android开源项目。
截止到笔者撰写这篇文章时,国内部分应用软件开发厂商已逐步接到手机厂商(华米OV等)的新版本适配要求。当前,对于Android应用开发者来说,Android 13 的软件兼容适配已需提上工作日程。
阅读全文

摘要:最近使用 Android Studio 从事项目开发时,发现对 implementation、api、embed 的用法了解的不是很清楚,这里准备一篇文章对其使用场景或者说是使用方式进行一个总结。 dependencies { // Moudle内可见:material对应的api,仅能在该Moud
阅读全文
摘要:Android 12(API 31)于2021年10月4日正式发布,正式版源代码也于当日被推送到AOSP Android开源项目。截止到笔者撰写这篇文章时,国内各终端厂商的在售Android设备,已经逐步开启了Android 12正式版本的更新。当前,对于Android应用开发者来说,Android 12 的软件兼容适配已迫在眉睫。
阅读全文
摘要:Android 12(API 31)引入了 SplashScreen 相关API,用于开发Android应用的启动页。 影响在Andorid 12设备上运行的所有应用: SplashScreen相关API的引入影响在Andorid 12设备上运行的所有应用。这一点对于应用开发者来说,无论你的应用ta
阅读全文
摘要:关于线程、协程两者的对比,可以简要叙述如下:
线程:线程由操作系统调度,线程切换或线程阻塞由操作系统和CPU调度实现;
协程:协程运行于操作系统的用户态,其依赖于线程来实现,通过用户态程序控制,尽量`减少或避免因线程阻塞造成的操作系统与CPU开销`。
与线程相比不同点在于,`协程挂起时不需要阻塞其运行的线程`。`协成挂起`期间,其对应的`线程可以被分配其他协程任务来执行`,待`该协程任务挂起结束再次开始时,将该协成再次交由某个线程来继续执行`(挂起期间,`类似于将该协程任务添加到了某个任务队列中`)
阅读全文
摘要:最近公司要求对App进行性能优化。考虑到既然是优化性能,那首先要获取App的相关性能指标,比如: 内存占用、CPU利用率、App启动时间、App耗电量 等情况,获取以上各指标后,才能针对性分析确定是否存在优化的可能。
阅读全文
摘要:Battery Historain是谷歌开发的Android耗电量分析工具,其开发语言为go语言。因此,若安装Battery Historain,首先需要配置go语言环境。本以为go语言与Battery Historain安装是一件很简单的事情,但事实却是安装过程举步维艰。 这篇文章仅用来记录Bat
阅读全文
摘要:Android开发中,偶然发现,用 百度地图分享出来的经纬度信息,再次用高德地图、腾讯地图打开,会出现几百米甚至几公里的偏移。 借用网络相关评论 分享出来的明明是山,换个地图打开变成海了 。
阅读全文
摘要:android:extractNativeLibs = true,gradle打包时会对工程中的so库进行压缩,最终生成apk包的体积会减小。但手机端安装apk时,系统会对压缩后的so库进行解压,从而造成用户安装apk的时间变长。
阅读全文
摘要:Android R(Android 11 API 30)于2020年9月9日正式发布,随国内各终端厂商在售Android设备的版本更新升级,应用软件对Android R 版本的兼容适配已迫在眉睫。
对于Android R的新特性,这里按照以下几个方面进行了归纳:`分区存储、权限、隐私、性能、安全`。
阅读全文
摘要:我们在用MAT(Memory Analyzer Tool)分析Android内存时,会发现大量的bitmap对象占了内存使用。但是很难定位究竟是哪张图片占用了内存,这里介绍一种查看bitmap的方法。 MAT、GIMP下载 MAT http://www.eclipse.org/mat/downloa
阅读全文
摘要:英文原文地址 "Memory optimization for feeds on Android" 读后感 在Java中HashSet只能存放继承自Objcet的对象,这中情况下“基本数据类型”转化为继承自Object的( 、`Long`等)会产生很多中间Object对象,占用过多的内存,从而引发垃
阅读全文
摘要:[译]How to handle background services in ANDROID O? 如何处理Android O的后台Service 前段时间公司项目中做Android O的适配。在了解Android O新功能时,看到这个文章,虽然介绍的是Android O的预览版,但读了一遍感觉不
阅读全文
摘要:Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。改文章,我们通过使用Jenkins自动化工具,定期打包我们的Android APK项目,方便研发与测试的协同。
阅读全文
摘要:从Support Library 23.2.0 开始,AppCompat 新增了主题:`Theme.AppCompat.DayNight`。其允许APP在 `深色主题` 和 `亮色主题` 之间切换;可以大幅减少耗电量(`OLED显示屏`的设备上,`深色主题`较`亮色主题` 有更加持久的续航能力);改善弱视以及对强光敏感的用户的可视性;让所有人都可以在光线较暗的环境中更轻松地使用设备,从而提升用户体验。
阅读全文
摘要:在Android 10开始版本中,官方的改动较大,相应的开发者适配成本还是很高的。
这里按照`2019.11.11 google android q workshop`流程,大概说明一下Android Q适配需要注意的内容。虽然是大概介绍,但应该是目前最全的适配攻略了...
阅读全文
摘要:Android 日志工具 最近项目开发中,遇到一个痛点: 项目模块较多,不同日志混合在一起;出现线上问题时,所有日志信息混合在一起,定位困难。 为解决这个问题,有了这个工具。这个工具有以下作用: + 开发模式 debug 为 true 时,打印在控制台,同时打印到文件; + 发版模式 debug 为
阅读全文