 方案一、aar架包集成 最简单直接的方案,卡片侧实现,打成aar包提供到launcher显示 方案二、AppWidget 原生的桌面小组件方案,被限制无法自定义view 底层通过BroadcastReceiver实现 方案三、插件方案 插件方案有好几种,实现原理都是通过配置实现,其中有Service ...
                        
                    方案一、aar架包集成 最简单直接的方案,卡片侧实现,打成aar包提供到launcher显示 方案二、AppWidget 原生的桌面小组件方案,被限制无法自定义view 底层通过BroadcastReceiver实现 方案三、插件方案 插件方案有好几种,实现原理都是通过配置实现,其中有Service ...
                
                        
                             车模桌面加载成功后,需要各种交互 切换桌面处理 先补充如何切换桌面,初始化需要指定一个默认桌面,初始化其实两个桌面都会一起加载,假设默认是车模桌面,地图将不会初始化操作,但是地图桌面会内嵌到Launcher中 两个桌面是互斥的,基于这种模式下,就需要隐藏另一个桌面,因为切换动效的缘故,这里直接使用s ...
                        
                    车模桌面加载成功后,需要各种交互 切换桌面处理 先补充如何切换桌面,初始化需要指定一个默认桌面,初始化其实两个桌面都会一起加载,假设默认是车模桌面,地图将不会初始化操作,但是地图桌面会内嵌到Launcher中 两个桌面是互斥的,基于这种模式下,就需要隐藏另一个桌面,因为切换动效的缘故,这里直接使用s ...
                
                        
                             3D车模通过TaskView显示在Launcher,首先需要知道,为什么要用TaskView,而不是Activity,然后在说加载流程 1、surface比activity等效率更高,特别是针对车模跟地图等重量级场景 2、切换桌面等场景时,可以更精确的控制暂停恢复 3、进程隔离,更精细的生命周期管理 ...
                        
                    3D车模通过TaskView显示在Launcher,首先需要知道,为什么要用TaskView,而不是Activity,然后在说加载流程 1、surface比activity等效率更高,特别是针对车模跟地图等重量级场景 2、切换桌面等场景时,可以更精确的控制暂停恢复 3、进程隔离,更精细的生命周期管理 ...
                
                        
                             hue查找:整体偏差不会很大,但是对于亮度较高存在误差,精准度不够 lab查找:整体一般,但是精准度较好,不过算法复杂,增加耗时 hue色相查找存在误差,在有限的256色中,匹配的规则需要调整 这里使用lab算法提高精准度 RGB转Lab fun rGBToLab(r: Int, g: Int, b ...
                        
                    hue查找:整体偏差不会很大,但是对于亮度较高存在误差,精准度不够 lab查找:整体一般,但是精准度较好,不过算法复杂,增加耗时 hue色相查找存在误差,在有限的256色中,匹配的规则需要调整 这里使用lab算法提高精准度 RGB转Lab fun rGBToLab(r: Int, g: Int, b ...
                
                        
                             《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上剪辑视频,方便开发者更好地开发类似剪映那样的视频剪辑软件。那么在Android系统上还有一款国产的开源视频裁剪框架Android-Video-Trimmer,通过该框架可以 ...
                        
                    《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上剪辑视频,方便开发者更好地开发类似剪映那样的视频剪辑软件。那么在Android系统上还有一款国产的开源视频裁剪框架Android-Video-Trimmer,通过该框架可以 ...
                
                        
                             氛围灯并不支持所有的颜色,只能支持256色,所以在取到图片颜色后需要根据结果颜色去跟氛围灯所支持的256色对比,取最接近的结果色,然后同步到氛围灯显示 取色流程 取色需要用到原生 Palette.from(bitmap).generate() 方法,通过量化算法分析位图的像素颜色分布,提取最具代表性 ...
                        
                    氛围灯并不支持所有的颜色,只能支持256色,所以在取到图片颜色后需要根据结果颜色去跟氛围灯所支持的256色对比,取最接近的结果色,然后同步到氛围灯显示 取色流程 取色需要用到原生 Palette.from(bitmap).generate() 方法,通过量化算法分析位图的像素颜色分布,提取最具代表性 ...
                
                        
                             在应用开发中,有些内容是固定的,例如“设置”中的菜单项;而有些内容会不断变化,比如新闻应用中的标题、来源或发布时间。为了让这些变化自动更新,而不是每次都修改代码,我们需要使用 变量(variable)。  学习目标 了解什么是变量,并学会定义和更新变量 掌握如何为变量选择合适的数据类型 学会在代 ...
                        
                    在应用开发中,有些内容是固定的,例如“设置”中的菜单项;而有些内容会不断变化,比如新闻应用中的标题、来源或发布时间。为了让这些变化自动更新,而不是每次都修改代码,我们需要使用 变量(variable)。  学习目标 了解什么是变量,并学会定义和更新变量 掌握如何为变量选择合适的数据类型 学会在代 ...
                
JH-ViewInspector - Android 控件ID/控件详情获取工具 这是一个轻量级的 Android 应用,通过悬浮窗实时获取和分析任意应用的控件信息和ID。 功能特点 实时控件捕获:通过无障碍服务获取当前页面所有控件信息 层级结构展示:树形结构清晰显示控件嵌套关系 智能筛选:支持文本 ...
                        
                             原文地址: Android app的16KB支持的自测和适配-Stars-One的杂货小窝 注: 本文以app使用其他SDK的情况为例,不涉及NDK和C层代码的适配工作 由于公司app还是上架谷歌市场,上架app要求必须支持Android15,但Android15需要强制要求适配16KB,记录下步骤 ...
                        
                    原文地址: Android app的16KB支持的自测和适配-Stars-One的杂货小窝 注: 本文以app使用其他SDK的情况为例,不涉及NDK和C层代码的适配工作 由于公司app还是上架谷歌市场,上架app要求必须支持Android15,但Android15需要强制要求适配16KB,记录下步骤 ...
                
                        
                             本文针对桌面挂件加载GIF难的问题,介绍和分析现有ViewFlipper和AnimatedImageDrawable方案的优劣,提出新方案:通过网络下发GIF,逐帧解析后使用ViewFlipper渲染,解决了不增大包体即可展示GIF动画的痛点。 ...
                        
                    本文针对桌面挂件加载GIF难的问题,介绍和分析现有ViewFlipper和AnimatedImageDrawable方案的优劣,提出新方案:通过网络下发GIF,逐帧解析后使用ViewFlipper渲染,解决了不增大包体即可展示GIF动画的痛点。 ...
                
                        
                             本文记录如何使用 Fiddler 和 MuMu 模拟器对安卓应用进行抓包 一、配置 Fiddler 并导出证书 如果没有安装 Fiddler 的话,可以通过官方直链下载:https://www.telerik.com/download/fiddler/fiddler2 1. 打开 Fiddler,点 ...
                        
                    本文记录如何使用 Fiddler 和 MuMu 模拟器对安卓应用进行抓包 一、配置 Fiddler 并导出证书 如果没有安装 Fiddler 的话,可以通过官方直链下载:https://www.telerik.com/download/fiddler/fiddler2 1. 打开 Fiddler,点 ...
                
                        
                             《FFmpeg开发实战:从零基础到短视频上线》一书的“第5章 FFmpeg处理音频”介绍了如何使用FFmpeg处理和转换音频,“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上剪辑视频,二者结合起来即可开发音频剪辑App。那么在Android系统上还有一款国产的开源音频特效 ...
                        
                    《FFmpeg开发实战:从零基础到短视频上线》一书的“第5章 FFmpeg处理音频”介绍了如何使用FFmpeg处理和转换音频,“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上剪辑视频,二者结合起来即可开发音频剪辑App。那么在Android系统上还有一款国产的开源音频特效 ...
                
                        
                             《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上播放视频,基于FFmpeg的国产播放器开源框架也有很多了,前有哔哩哔哩的ijkplayer,后有小红书的RedPlayer,参见之前的文章《使用国产的ijkplayer播放 ...
                        
                    《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上播放视频,基于FFmpeg的国产播放器开源框架也有很多了,前有哔哩哔哩的ijkplayer,后有小红书的RedPlayer,参见之前的文章《使用国产的ijkplayer播放 ...
                
                        
                             原文地址: Jetpack架构学习(7)——使用DataStore存储配置信息-Stars-One的杂货小窝 这里由于开发的app使用的compose架构,比较适合与DataStore一起使用,所以稍微学习了使用方法,顺便记录下 其实DataStore和SharePreference使用方式类似,就 ...
                        
                    原文地址: Jetpack架构学习(7)——使用DataStore存储配置信息-Stars-One的杂货小窝 这里由于开发的app使用的compose架构,比较适合与DataStore一起使用,所以稍微学习了使用方法,顺便记录下 其实DataStore和SharePreference使用方式类似,就 ...
                
                        
                             原文地址: Android Studio找回已记住密码的签名证书的密码-Stars-One的杂货小窝 情况: Android Studio内置已经记录有密码,但是忘记密码是什么,应该如何找回密码? 如下图: 这里发现有个插件可以直接找回 先去签名密码找回插件-github找到对应的文件,并下载jar ...
                        
                    原文地址: Android Studio找回已记住密码的签名证书的密码-Stars-One的杂货小窝 情况: Android Studio内置已经记录有密码,但是忘记密码是什么,应该如何找回密码? 如下图: 这里发现有个插件可以直接找回 先去签名密码找回插件-github找到对应的文件,并下载jar ...
                
                        
                             《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上剪辑视频,方便开发者更好地开发类似剪映那样的视频剪辑软件。那么在Android系统上还有一款国产的开源视频剪辑框架RxFFmpeg,通过该框架可以更快地开发剪辑App,下面就 ...
                        
                    《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上剪辑视频,方便开发者更好地开发类似剪映那样的视频剪辑软件。那么在Android系统上还有一款国产的开源视频剪辑框架RxFFmpeg,通过该框架可以更快地开发剪辑App,下面就 ...
                
Android Gradle 国内主流镜像仓库全局配置方案 以下是整合了国内主流镜像仓库的全局配置方案,包括阿里云、华为云、腾讯云等多个可靠镜像源。 方案一:项目级 build.gradle 完整配置 (推荐) buildscript { repositories { // 阿里云镜像 maven ...
                        
                             《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上播放视频,基于FFmpeg的国产播放器开源框架也有很多了,前有哔哩哔哩的ijkplayer,后有小红书的RedPlayer,参见之前的文章《使用国产的ijkplayer播放器 ...
                        
                    《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上播放视频,基于FFmpeg的国产播放器开源框架也有很多了,前有哔哩哔哩的ijkplayer,后有小红书的RedPlayer,参见之前的文章《使用国产的ijkplayer播放器 ...
                
Android 监听时间变化 在Android应用中,有几种方式可以监听系统时间的变化。以下是几种常见的方法: 1. 使用BroadcastReceiver监听时间变化广播 Android系统会在时间发生变化时发送以下广播: public class TimeChangeReceiver exten ...
Android车载系统时间同步方案具体实现 下面我将详细介绍各种时间同步方案的具体实现代码,包括完整的实现逻辑和关键代码片段。 一、NTP时间同步实现 完整实现类 public class NtpTimeSync { private static final String TAG = "NtpTim ...
 
                 
                    
                    