收藏本版 |訂閲

Android开发论坛 今日: 0|主題: 680|排名: 82 

  • Launcher 桌面源码笔记一
    3D车模通过TaskView显示在Launcher,首先需要知道,为什么要用TaskView,而不是Activity,然后在说加载流程 1、surface比activity等效率更高,特别是针对车模跟地图等重量级场景 2、切换桌面等场景时,可以更精确的控制暂停恢复 3、进程隔离,更精细的生命周期管理跟控制 4、taskView中SurfaceControl的跨进程绑定机制(rep ...
    0126 斯蒂芬大强库里 发表于 2025-10-24 Android开发论坛
  • Android Compose 状态的概念及实际应用
    目录Jetpack Compose 中的状态一、什么是“状态”?二、状态和“组合/重组”的关系三、可组合项里怎么存状态?(2个核心API)1. remember:负责“存储状态”2. mutableStateOf:负责“让状态可观察”四、声明 MutableState 的3种方式(语法糖,按需选)五、传递对象和传递值的区别 ...
    0107 西北亮 发表于 2025-10-22 教程
  • 氛围灯动态屏保取色方案二
    hue查找:整体偏差不会很大,但是对于亮度较高存在误差,精准度不够 lab查找:整体一般,但是精准度较好,不过算法复杂,增加耗时 hue色相查找存在误差,在有限的256色中,匹配的规则需要调整 这里使用lab算法提高精准度 RGB转Lab fun rGBToLab(r: Int, g: Int, b: Int): DoubleArray { // 处理负值(如-2563864 ...
    083 张罗欢 发表于 2025-10-22 Android开发论坛
  • Android Handler 机制原理解析
    目录一、 概述二、 核心组件1. Handler(处理器)2. MessageQueue(消息队列)3. Looper(循环器)4. Message(消息)三、工作原理1. 整体流程图2. 详细执行过程1. 初始化 Looper(子线程示例)2. 消息发送机制3. 消息处理流程四、源码分析(精简版)1. Looper 核心实现2. MessageQueue 关键方法enqueueMessage()—&md ...
    0132 网络爱好者 发表于 2025-10-20 教程
  • FFmpeg开发笔记(八十三)国产的视频裁剪框架AndroidVideoTrimmer
    ​《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章  FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上剪辑视频,方便开发者更好地开发类似剪映那样的视频剪辑软件。那么在Android系统上还有一款国产的开源视频裁剪框架Android-Video-Trimmer,通过该框架可以更快地裁剪视频片段,下面就来介绍如何在App工程 ...
    0125 小夭夭 发表于 2025-10-18 Android开发论坛
  • 几种常见的Android性能与内存优化策略
    目录1. 减少布局层级2. 图片资源优化3. 避免内存泄漏4. 使用ProGuard混淆代码5. 优化数据库操作6. 利用性能监控工具1. 使用 ​​RecyclerView​​ 而不是 ​​ListView​​2. 使用 ​​Glide​​ 或 ​​Picasso​​ 加载图片3. 避免内存泄漏4. 使用 ​​ProGuard​​ 进行代码混淆和优化5. 使用 ​​LeakCanary​​ 检测内 ...
    058 罗将军的恩情还不完 发表于 2025-10-18 教程
  • 氛围灯动态屏保取色方案一
    氛围灯并不支持所有的颜色,只能支持256色,所以在取到图片颜色后需要根据结果颜色去跟氛围灯所支持的256色对比,取最接近的结果色,然后同步到氛围灯显示 取色流程 取色需要用到原生 Palette.from(bitmap).generate() 方法,通过量化算法分析位图的像素颜色分布,提取最具代表性的颜色组合,也有异步获取方法,下面方法都 ...
    076 眼看着你们堕落 发表于 2025-10-16 Android开发论坛
  • Android Studio 2025 下载安装教程及配置环境(含下载地址+配置教程)
    一、前言(新手必看) 不管你是刚学安卓开发的学生,还是想自己做 APP 的爱好者,Android Studio 2025 都是绕不开的工具 —— 毕竟这是 Google 官方唯一认的安卓开发 IDE。很多新手第一次装会踩坑,比如把软件装 C 盘导致电脑卡、SDK 路径设错开不了项目、不知道在哪下安全的安装包,这篇教程会把这些问题都讲透,跟着步骤 ...
    082 牛向东 发表于 2025-10-16 Android开发论坛
  • Android使用ViewPager2实现简单的轮播图的代码示例
    目录一、轮播图的简单介绍二、轮播图的实现步骤1.绘制轮播图页面2.设置ViewPager2的子布局3.编写ViewPager2的适配器4.编写Carousel类具体实现轮播图5.实现自动轮播6.触摸时停止自动轮播三、完整代码一、轮播图的简单介绍 轮播图(Carousel)是一种在有限空间内循环展示多个内容项的UI组件,用户可以通过滑动或自动播放的方 ...
    091 长风吴彦祖 发表于 2025-10-13 教程
  • Android通过Dialog实现全屏的示例代码
    目录引言一、Dialog的初始化二、全屏和非全屏的实现引言 在项目的实际开发中会碰到有些View需要横屏全屏的情况,比如视频播放的View,详情的View等,如果跳转到新的Activity或Fragment来展示横屏全屏,有些进度、状态等携带过去又很麻烦,这样的情况下通过Dialog实现全屏就是一个选择。 一、Dialog的初始化 一般情况下Activi ...
    048 三槐堂 发表于 2025-10-12 教程
  • Android杀死选中进程并释放进程占用空间的方法详解
    目录1. 进程管理的重要性2. 如何获取当前运行的进程信息3. 杀死选中的进程4. 示例:实现一个简单的进程管理器5.方法补充获取 ​​ActivityManager​​ 实例杀死指定的进程检查权限完整示例代码注意事项替代方案在Android开发中,管理和优化应用的性能是一个重要的课题。特别是在资源管理方面,如何有效地管理进程,确保应用 ...
    075 梦夕 发表于 2025-10-12 教程
  • Android Gradle 基础配置、高级用法与最佳实践
    目录一、核心配置概览二、基础配置详解1. 项目根目录build.gradle2. 模块级build.gradle插件声明android闭包配置依赖管理三、高级用法与最佳实践1. 统一依赖管理(推荐方式)1.使用ext+config.gradle2.使用gradle/libs.versions.toml2. 多环境构建3. 动态配置与任务定制1. 自定义 Gradle 任务2.构建前自动修改版本号4. 构建 ...
    079 我是羽童 发表于 2025-10-11 教程
  • Android 中的 mk 和 bp 文件编译示例详解
    目录1. Android.mk 文件基本概念基本语法示例2. Android.bp 文件基本概念基本语法示例3. 主要区别对比4. 常见模块类型Java 库Android 应用预编译库5. 高级特性条件编译(在 bp 中)变量和函数6. 转换示例mk 转 bp 示例7. 最佳实践主要介绍 Android 中的 mk 和 bp 文件的编译方式, Android 构建系统的两种不同配置文件。 1. ...
    065 无亟 发表于 2025-10-10 教程
  • 2.Android Compose 基础系列:在 Kotlin 中创建和使用变量
    在应用开发中,有些内容是固定的,例如“设置”中的菜单项;而有些内容会不断变化,比如新闻应用中的标题、来源或发布时间。为了让这些变化自动更新,而不是每次都修改代码,我们需要使用 变量(variable)。 🎯 学习目标 了解什么是变量,并学会定义和更新变量 掌握如何为变量选择合适的数据类型 学会在代码中添加注释, ...
    0139 杨柠 发表于 2025-10-6 Android开发论坛
  • Android实现获取当前时间并转为时间戳
    目录1. 获取年月日时分秒2. 区分系统时间是24小时制还是12小时制3. 字符串转时间戳4. 时间戳转字符串方法补充在项目开发中,难免会遇到使用当前时间,比如实现网络请求上传报文、预约、日历等功能。 1. 获取年月日时分秒 在获取时间之前,首先要引入SimpleDateFormat: import java.text.SimpleDateFormat; 实现代码: Sim ...
    0124 欧亚之窗 发表于 2025-9-30 教程
  • Android开发教程之屏幕变更事件
    目录一、什么是屏幕变更事件?常见的配置变更类型二、默认行为:Activity 重建生命周期流程问题与挑战三、方案一:允许重建 + 正确保存状态1. 使用 onSaveInstanceState() 保存临时状态2. 使用 ViewModel 保留复杂数据四、方案二:阻止重建 + 手动处理变更1. 声明要自行处理的配置变更2. 重写 onC ...
    0122 伪球迷不用验 发表于 2025-9-28 教程
  • Android 自定义Binding Adapter实战应用及作用详解
    目录1. Binding Adapter 的基本概念和作用2. 常见应用场景与代码分析2.1. 绑定简单属性和多个属性2.2. 处理列表数据绑定到 RecyclerView2.3. 绑定复杂对象和多参数2.4. 绑定图片加载库2.5. 条件判断和多类型 View 处理3.@JvmStatic和companion objectOutlineProvider.ktDatabindingAdapter.ktBindingResourceUtil.ktDataBin ...
    085 抖音助理号李丽 发表于 2025-9-28 教程
  • Avalonia:开发Android应用
    我把成功开发Android应用的经过记录下来,在开发过程中,模拟器经常出问题,将Java Development Kit的位置和Android SDK的位置改动一下,就解决了模拟器报错的问题,这是在Github上看到的解决办法。 先建Models文件夹,创建模型ColorItem.cs文件。 using Avalonia.Media; namespace AvaloniaMobileApp.Models { public ...
    077 扣脚大暖女 发表于 2025-9-25 Android开发论坛
  • Android自定义电池组件实例代码(BatteryView)
    目录支持:1、自定义属性res/values/attrs.xml2、 组件代码BatteryView.kt3、XML 用法示例4、代码控制示例5、常见问题(结合你之前的疑问)6、小扩展(可选)支持: XML 与代码动态设置电量(0–100)充电 charging 与快充 fastCharging 区分(闪电样式 + 动画)电量阈值自动配色:<20% 红、<50% ...
    055 一颗小红星 发表于 2025-9-23 教程
  • Android Doze低电耗休眠模式 与 WorkManager详解
    目录1. Doze模式下,WorkManager setInitialDelay设置小于15分钟,被系统强制到15分钟执行,怎么办 ?2. 了解低电耗模式(Doze)3. 低电耗模式限制4. Doze模式下,WorkManager 为何无法精确时间执行 ?5. Doze模式下,如何精确时间执行 ?5.1 ​​声明权限​5.2 调用前需验证是否已授权5.3 创建 BroadcastReceiver​ : ​​接收 ...
    080 潘庆睿 发表于 2025-9-20 教程
  • 下一頁 »

    快速發帖

    還可輸入 180 個字符
    您需要登錄後才可以發帖 登錄 | 立即注册

    本版積分規則

    圆梦公社,专注于为全球华人提供纯粹技术交流的地方,请勿发布任何政治及违法的言论。如有相关侵权、举报、投诉及建议等,请发 E-mail:dzh188@hotmail.com

    Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

    在本版发帖返回顶部