
Android
文章平均质量分 87
韩曙亮
中国人民大学硕士 , 专注于 移动开发 领域 , 博客专家 , 2023 年博客之星 TOP1 , 2021 年博客之星 TOP9 , 华为云 云享专家 , 阿里云社区 专家博主 , 51CTO 专家博主 ;
展开
-
【Android】Android 悬浮窗开发 ( 动态权限请求 | 前台服务和通知 | 悬浮窗创建 )
一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后返回处理二、悬浮窗 前台服务和通知1、前台服务 启动 悬浮窗 的必要性① 保持悬浮窗存活② 悬浮窗的要求③ 悬浮窗版本兼容2、其它类型服务简介① 前台服务② WorkManager 服务③ JobScheduler 服务④ AlarmManager 服务三、前台服务 创建 通知 和 悬浮窗1、启动前台服务2、前台服务通知3、创建浮动窗口四、完整代码示例原创 2025-02-20 10:37:58 · 11885 阅读 · 15 评论 -
【错误记录】Android 悬浮窗开发报错 ( Context.startForegroundService() did not then call Service.startForeground )
android.app.ForegroundServiceDidNotStartInTimeException: Context.startForegroundService() did not then call Service.startForeground(): ServiceRecord{d586da8 u0 hsl.floatingwindow/.FloatingWindowService}原创 2025-02-20 10:29:18 · 1368 阅读 · 2 评论 -
【Android】手机 与 蓝牙耳机 之间的延迟问题 ( 蓝牙耳机延迟分析 | 不同的蓝牙版本的延迟 | 蓝牙解码器的延迟 | 蓝牙耳机 延迟 与 音质 之间的关系 | 低延迟蓝牙耳机案例 )
一、蓝牙耳机延迟分析1、不同的蓝牙版本的延迟2、蓝牙解码器的延迟3、蓝牙耳机在不同场景的延迟分析① 音频播放② 打电话③ 视频播放④ 游戏电竞二、蓝牙耳机 延迟 与 音质 之间的关系1、延迟与音质的平衡 - 低延迟方向2、延迟与音质的平衡 - 高音质方向3、延迟与音质的平衡三、低延迟 蓝牙耳机 示例 分析原创 2025-01-03 23:00:00 · 3292 阅读 · 5 评论 -
【Android 腾讯地图】腾讯地图开发记录 ① ( 地图基础显示 | 创建应用和申请key | 配置远程依赖库 | 配置腾讯地图 Key | 同意隐私协议 | 布局设置 | 覆盖自定义地图图片 )
一、创建应用和申请key1、创建应用2、申请 key二、配置应用1、配置远程依赖库基础配置完整配置2、配置腾讯地图 Key三、地图开发1、同意隐私协议2、布局文件3、地图显示 Activity 类设置4、覆盖自定义地图图片原创 2024-04-20 23:15:00 · 4724 阅读 · 4 评论 -
【错误记录】Android Studio 布局文件报错 ( View with id -1: xx.MyView#onMeasure() did not set the measured dime )
View with id -1: xx.MyView#onMeasure() did not set the measured dimension by calling setMeasuredDimension()原创 2023-04-25 16:07:27 · 1237 阅读 · 2 评论 -
【错误记录】Android WebView 报错 ( 网页无法打开 位于 baiduboxapp://speec... 的网页无法加载, 因为 net::ERR_UNKNOW_URL_SCHEME )
一、错误记录二、解决方案三、开发通过自定义的 URL 协议启动的应用原创 2023-04-18 11:03:06 · 2655 阅读 · 7 评论 -
【错误记录】Android WebView 报错 ( 网页无法打开 位于 http://... 的网页无法加载, 因为 net::ERR_CLEARTEXT_NOT_PERMITTED )
网页无法打开位于 http://... 的网页无法加载, 因为 net::ERR_CLEARTEXT_NOT_PERMITTED ;原创 2023-04-18 09:10:28 · 9443 阅读 · 0 评论 -
【Android】WebView 应用模版 ( WebView 设置 | 设置 WebSettings | 启用调试模式 | 设置 WebChromeClient )
一、Android WebView 设置1、设置 WebSettings启用 JavaScript启用 DOM 存储启用内置缩放控件启用 http 和 https 混合加载设置页面自适应设置宽视图端口模式部分代码示例2、启用调试模式3、设置 WebChromeClient4、设置 WebViewClient5、加载网页二、Kotlin 代码 ( WebView 设置 )三、全屏设置四、网络权限设置五、AndroidManifest.xml 清单文件原创 2023-04-17 17:04:06 · 1481 阅读 · 17 评论 -
【Android】Android Studio 开发工具 / Android Gradle Plugin 插件 / Gradle 构建工具版本兼容问题 ( 2023 年 4 月 17 日更新 )
一、Android Gradle Plugin 插件版本 与 所需的最低 Gradle 构建工具版本 对应关系二、Android Gradle Plugin 插件版本 与 Android Studio 开发工具 对应关系原创 2023-04-17 14:14:34 · 1761 阅读 · 0 评论 -
【Android 应用开发】Android 无障碍开发简介 ( Android 无障碍开发辅助技术 | 启用 TalkBack 无障碍功能 | TalkBack 无障碍开发 示例 )
一、Android 无障碍开发辅助技术二、启用 TalkBack 无障碍功能三、TalkBack 无障碍功能代码示例原创 2023-04-01 15:03:29 · 3832 阅读 · 1 评论 -
【约束布局】ConstraintLayout 屏幕适配案例 ( 使用代码生成约束布局控件属性 )
一、ConstraintLayout 屏幕适配案例、二、使用代码生成约束布局原创 2022-06-07 09:24:09 · 1038 阅读 · 0 评论 -
【Android NDK 开发】CMake 中查找链接 Android 自带动态库位置说明 ( ndk-bundle\platforms\android-29\arch-arm\usr\lib )
一、BuildType#javaCompileOptions 配置、二、CMakeLists.txt 完整带注释配置原创 2022-05-02 20:39:12 · 2093 阅读 · 0 评论 -
【Android NDK 开发】CMake 中查找链接 Android 自带动态库位置说明 ( ndk-bundle\platforms\android-29\arch-arm\usr\lib )
一、BuildType#javaCompileOptions 配置、二、CMakeLists.txt 完整带注释配置原创 2022-09-18 11:36:22 · 1114 阅读 · 0 评论 -
【Android 应用开发】Canvas 精准绘制文字 ( 文本边界坐标解析 | 绘图位置 )
一、文本边界坐标解析、二、绘图位置、原创 2021-11-18 20:10:29 · 3029 阅读 · 1 评论 -
【Android 应用开发】Canvas 精准绘制文字 ( 测量文本真实边界 | 将文本中心点与给定中心点对齐 )
一定要确定两个概念 , 下图 红色矩形框 的区域 是 绘图区域 , 下图 蓝色矩形框的区域 是文本区域 ;绘图区域 不等于 文本区域 , 文本一定在绘图区域中 , 但是具体在哪 , 不确定 , 可能在中心 , 可能在下方 , 可能在右上角 , 这是根据文本的特性确定的 , 如有的文本时 abcd 类型的 , 下方没有超出基线 , 有的文本属于 jqpy 类型的 , 下方超出基线了 , 还有可能有特殊符号如度数符号 , 百分号等 , 造成了真实文本与绘图区域的差异 ;绘图区域 与 真实文本区域 的差异原创 2021-11-17 20:34:49 · 1952 阅读 · 0 评论 -
【FFmpeg】Windows 搭建 FFmpeg 命令行运行环境
一、下载 FFMPEG、二、拷贝可执行文件、三、拷贝动态库文件、四、运行 ffmpeg 命令、原创 2021-06-09 20:55:33 · 6156 阅读 · 9 评论 -
【Android 安全】DEX 加密 ( Application 替换 | ActivityThread 中的 mAllApplications 集合添加 Application )
一、 当前 Application 替换进度、二、 ActivityThread 中的 mAllApplications 集合添加 Application原创 2021-04-02 10:45:25 · 850 阅读 · 0 评论 -
【Android 安全】DEX 加密 ( Application 替换 | 加密不侵入原则 | 替换 ActivityThread 的 mInitialApplication 成员 )
一、 加密不侵入 Application 原则、二、 替换 ActivityThread 中的 Application mInitialApplication 成员、原创 2021-04-02 10:17:48 · 1090 阅读 · 0 评论 -
【Android NDK 开发】NDK C/C++ 代码崩溃调试 - Tombstone 报错信息日志文件分析 ( 获取 tombstone_0X 崩溃日志信息 )
一、崩溃信息描述、二、手机命令行操作、三、电脑命令行操作、四、Tombstone 内容原创 2020-11-12 09:07:14 · 4440 阅读 · 7 评论 -
【Android】Pixel 2 Android 9 系统 ROOT 操作 ( TWRP 下载 | Magisk Manager 下载 | 线刷包下载 | 线刷 9.0 系统 | ROOT 操作 )
一、下载 TeamWin - TWRP、二、下载 Magisk Manager、三、下载 Android 9.0 镜像、四、线刷 Android 9.0 系统、五、ROOT 操作、六、可能用到的命令、原创 2020-11-11 19:46:15 · 10841 阅读 · 6 评论 -
【Android】Source Insight 基本用法 ( 导入 Android 源码 | 设置字体 | 显示行号 | 搜索功能 | 快捷键设置 )
一、导入 Android 源码、二、配置字体、三、显示行号、四、Tab 键字符个数、五、搜索功能、六、打开文件列表、七、快捷键设置、原创 2020-07-08 22:27:26 · 2587 阅读 · 0 评论 -
【Android】Handler 机制 ( Handler | Message | Looper | MessageQueue )
I . Handler 机制简介II . Handler 机制 Handler Message Looper MessageQueue 四组件对应关系III . Handler ( 消息处理者 )IV . Looper ( 消息遍历者 )V . Looper 子线程VI . Handler 发送 消息 种类VII . Handler 机制总结原创 2020-05-29 10:22:22 · 718 阅读 · 0 评论 -
【Android】Pixel 2 解锁 Bootloader
I . Pixel 2 解锁 bootloader 前提II . Pixel 2 解锁 bootloaderIII . 解锁成功原创 2020-02-28 12:01:30 · 7324 阅读 · 5 评论