自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(443)
  • 资源 (39)
  • 收藏
  • 关注

原创 AI提升效率

使用AI来提升日常开发/工作效率

2025-12-12 08:59:49 1022

原创 Android Compose中的单向数据流和MVI架构

单向数据流(UDF)是Android开发中的一种架构模式,强调数据单向流动:状态向下传递,事件向上触发。其核心流程包括事件触发、逻辑处理、状态更新和UI刷新,形成可预测的循环。UDF优势在于提升可测试性、确保状态一致性和界面同步。代码示例展示了状态管理、事件处理和UI更新的完整实现。UDF可扩展为更严格的MVI架构,后者通过单一不可变状态和密封类Intent进一步规范数据流。在Compose中实现MVI需要定义UI状态、处理Intent并管理副作用,适合追求高可维护性的中大型项目。

2025-12-12 08:49:28 845

原创 Android Compose 界面架构 : 基于单向数据流

本文介绍了Jetpack Compose中界面构建的核心逻辑——状态控制与单向数据流(UDF)模式。主要内容包括: Compose界面的不可变性决定了状态驱动更新的特性 单向数据流的实现方式:状态向下流动,事件向上传递 使用ViewModel管理状态,通过mutableStateOf、LiveData等容器实现状态观察 事件处理原则:界面层仅触发事件,由ViewModel统一处理 可组合项设计建议:参数最小化、优先使用不可变值 登录屏幕的状态建模示例,展示密封类在状态管理中的应用 该模式提升了应用的可测试性

2025-11-24 09:02:00 1268

原创 Android Compose 架构分层详解 : 基于基础层开发自定义组件

Jetpack Compose采用分层架构设计,包含Material、Foundation、UI和Runtime四层。Runtime层提供核心组件如@Composable注解;UI层实现基础界面功能;Foundation层包含通用组件如Row/Column;Material层实现Material Design系统。设计原则强调:1)按需降级获取更多控制权;2)通过组合小型组件实现自定义;3)优先使用高级别组件以确保功能完整性和无障碍支持。开发者可根据需求选择合适的抽象层级,在便利性和灵活性间取得平衡。

2025-11-24 09:01:40 702

原创 Android Compose 状态提升和状态保存

状态提升是Android Compose中管理界面状态的核心设计模式,它通过将状态从子组件移至父组件,实现状态共享和单向数据流控制。这一模式遵循"状态向下流动,事件向上触发"的原则,使状态变化可预测、组件更易测试复用。

2025-11-21 09:00:22 900

原创 Android Compose的编程思想 : 智能重组的声明式UI

Jetpack Compose 是 Android 声明式界面工具包,核心以可组合函数(Composable)描述界面,替代传统命令式手动操作视图的方式。颠覆了传统命令式开发逻辑 : 无需手动操控视图,只需描述界面状态,状态变化时系统会智能更新需改动部分,彻底解决传统开发的漏更、冲突、维护难等痛点。

2025-11-21 08:48:30 637

原创 Android Compose中LaunchedEffect、SideEffect和DisposableEffect的区别

Android Jetpack Compose提供了三种管理副作用的API:LaunchedEffect用于启动协程执行异步任务,在组件退出时自动取消;DisposableEffect用于需要资源清理的场景,必须实现onDispose清理逻辑;SideEffect则在每次重组后同步执行,适合轻量级状态同步。三者的区别体现在执行时机、协程支持和生命周期管理上,开发者应根据是否需要协程、资源清理等需求选择合适的API。文中通过计时器、传感器和埋点等典型示例,展示了各API的最佳使用场景。

2025-10-24 08:52:33 617

原创 Android Compose 状态的概念

本文介绍了 Jetpack Compose 中的状态管理机制。状态是指应用中随时间变化的任何值,Compose 通过声明式方式,在状态变化时触发重组来更新界面。核心是通过 remember 存储状态,mutableStateOf 实现状态可观察性。文章比较了三种声明状态的方式,推荐使用 by 委托语法。最后区分了传递值和传递状态对象的差异:传递值实现单向数据流,适合纯展示组件;传递状态对象支持双向数据流,允许子组件直接修改状态。理解这些机制有助于在 Compose 中构建响应式 UI。

2025-10-21 20:02:42 973

原创 Android Compose 绘制流程 : 阶段(phases)

Jetpack Compose 通过三个阶段高效渲染界面:组合阶段生成界面树,布局阶段计算尺寸位置,绘制阶段呈现像素。其核心优势在于智能跟踪状态读取位置,仅重新执行必要的阶段。例如在绘制阶段读取颜色状态时,仅触发重绘而不重组。性能优化关键在于将状态读取放在最低必要阶段,避免无效计算。错误示例展示了在组合阶段读取滚动偏移会导致不必要的重组,应改为在布局阶段读取以提升效率。

2025-10-21 19:21:53 982

原创 Android Compose中的附带效应

Jetpack Compose 通过 Effect API 管理附带效应(如网络请求、生命周期事件),避免因重组导致重复执行或资源泄漏。

2025-10-16 09:06:49 1759

原创 Android Compose 可组合项的生命周期

Jetpack Compose 的可组合项生命周期分为进入组合、重组(0次或多次)和退出组合三个阶段。Compose 通过调用点识别可组合项,重组时仅更新受状态变化影响的部分。列表场景需使用 key 避免无效重组,确保稳定性。参数类型需满足“稳定类型”(如基本类型、String、MutableState)才能跳过重组,否则即使输入未变也会触发重组。通过 @Stable 注解可标记自定义稳定类型,优化性能。

2025-10-16 09:03:08 1295

原创 Android Doze低电耗休眠模式 与 WorkManager

这篇文章主要讨论了Android Doze模式下WorkManager的任务执行限制及解决方案。Doze模式下,系统为省电会延迟后台活动,WorkManager的周期性任务最小间隔被强制设为15分钟,即使设置更短时间也会被系统替换。

2025-09-15 20:53:30 1177 1

原创 Android WorkManager的概念和使用

Android WorkManager 是 Jetpack 组件库中用于可靠调度后台任务的框架,专为处理需保障执行、可延迟的异步任务(如数据同步、日志上传)而设计。其核心优势在于能保证任务完成,即使应用退出或设备重启,并通过 SQLite 持久化存储任务信息。它支持设置灵活约束条件(如网络类型、充电状态),提供一次性(OneTimeWorkRequest)和周期性(PeriodicWorkRequest,最小间隔15分钟)任务调度,并允许构建链式任务工作流。

2025-09-15 20:53:22 1413

原创 MCP是什么 ? 有哪些好用的MCP ?

MCP(Model Context Protocol)是由Anthropic开发的开源协议,旨在为大型语言模型提供标准化连接外部数据源和工具的能力。该协议解决了大模型与现实数据和应用脱节的问题,使其能够安全调用各类工具(如数据库、地图API、办公软件等),实现上网搜索、文件操作、数据分析等功能。MCP生态已形成丰富工具库,涵盖浏览器、GitHub管理、Excel处理等多个领域。开发者可通过MCP.so等平台获取相关工具,并通过系列教程学习如何将MCP应用于旅游规划、UI设计等实际场景。

2025-07-14 18:58:20 1412

原创 使用Trae+Playwright MCP实现网页自动化测试

本文详细介绍了如何在Trae IDE环境中配置和使用Playwright MCP进行Web自动化测试。主要内容包括:1)安装Python、Node.js等基础环境;2)通过pip安装Playwright并下载浏览器;3)在Trae IDE中添加Playwright MCP插件;4)创建配置Playwright的智能体;5)实际应用示例演示自动打开网页并查找特定元素。整个过程包含了完整的配置步骤截图和命令行验证方法,适合开发者在Windows11环境下快速搭建Playwright自动化测试平台。

2025-07-14 08:59:56 2182 6

原创 使用Cursor+Figma MCP生成UI搞,并根据UI稿生成网页和Android代码

摘要:本文介绍了如何使用Figma MCP工具生成UI设计稿并转换为代码的完整流程。主要内容包括:1) 介绍三种主流Figma MCP工具的特点;2) 详细的环境配置步骤(Node.js、Figma客户端、MCP插件安装);3) 通过Cursor与Figma MCP交互,实现从设计稿生成到代码转换的全过程,包括创建待办事项App首页UI,以及将设计稿转换为HTML网页和Android Compose代码的具体操作。该方法适合需要快速实现UI设计与代码开发的开发者。

2025-06-28 11:14:41 5170

原创 使用AI大模型+高德MCP规划旅游行程并生成网页

本文介绍了如何使用高德地图MCP服务在Trae IDE中规划旅游行程。主要内容包括:1) 搭建开发环境,安装Python3、UV、Node.js等必要工具;2) 注册高德地图开发者获取API Key;3) 在Trae中配置高德MCP服务;4) 创建自定义智能体并设置提示词;5) 实际使用体验,通过高德MCP获取更准确的行程数据。该方案相比纯大模型规划,能提供更可靠的行程时间和路线信息。

2025-06-28 11:12:44 2036

原创 Android 使用Paging3 实现列表分页加载、下拉刷新、错误重试、筛选功能

介绍Android JetPack Paging3分页库的使用

2025-05-10 15:50:15 1964

原创 Kotlin知识体系(七) : Flow线程控制、状态管理及异常处理指南

介绍Android Flow中的Flow线程控制、状态管理及异常处理

2025-05-10 15:48:56 1275

原创 kotlin知识体系(六) : Flow核心概念与与操作符指南

介绍Android中Flow相关的入门知识点

2025-04-20 14:39:34 1664

原创 kotlin知识体系(五) :Android 协程全解析,从作用域到异常处理的全面指南

介绍Android中协程相关的知识点

2025-04-20 14:36:23 1818

原创 kotlin知识体系(四) : inline、noinline、crossinline 关键字对应编译后的代码是怎样的 ?

在 Kotlin 里,`inline`、`noinline` 和 `crossinline` 这几个关键字和高阶函数紧密相关,它们能够对高阶函数的行为进行优化和控制。

2025-03-23 23:24:04 1108

原创 kotlin知识体系(三) : Android Kotlin 中的函数式编程实践指南

Kotlin以函数式编程革新了Android开发,通过高阶函数、扩展函数等特性,帮助开发者构建高可维护性代码。

2025-03-23 23:20:02 1225

原创 使用AI编程,让AI成为你的打工人

2025年,AI编程来到第二阶段。无论你是程序员、产品经理还是不会编程的普通人,都能够轻松实现自己的App和网站。

2025-03-18 08:46:03 936

原创 Kotlin知识体系(二) : Kotlin的七个面向对象关键特性

在Android开发中,Kotlin以其简洁的语法和强大的特性显著提升了开发效率。本文将解析Kotlin中7个关键特性,通过代码示例展示它们在实际开发中的应用。

2025-03-16 21:30:10 636

原创 Kotlin知识体系(一) : Kotlin的五大基础语法特性

在Android开发领域,Kotlin凭借其简洁性和安全性已成为官方推荐语言。本文将通过Kotlin的五大基础语法特性,结合实际应用场景展示它们在Android开发中的独特价值。

2025-03-16 21:28:04 1558

原创 Android Compose 显示底部对话框 (ModalBottomSheet),实现类似BottomSheetDialog的效果

ModalBottomSheet是Android Compose官方的底部对话框,类似传统View中的BottomSheetDialog,可以实现从底部弹出,并支持滑动关闭的效果。

2025-01-12 11:33:27 3177

原创 Windows11 开启家长控制,限制电脑使用时长,限制可使用的软件,限制Edge浏览器能访问的网页

Windows中怎么开启家长控制,实现对于某些功能的限制和管理呢 ? 比如限制使用时长、可以使用的软件、禁止访问的网站等。查了不少网上的资料,要么资料已经过时了,要么写的不太清楚,摸索了半天,终于实现了windows的家长控制,在这里记录一下。

2025-01-12 11:20:06 12513 2

原创 Android中使用NSD扫描,实现局域网内设备IP的发现

介绍Android中的NSD协议,并说明在Android中如何使用NSD协议,实现局域网内设备IP的发现

2024-11-30 22:40:08 2868

原创 WebSocket协议解析 : 双向实时通信的利器

WebSocket协议介绍、工作原理介绍

2024-11-30 09:12:22 1404

原创 MQTT协议解析 : 物联网领域的最佳选择

MQTT是一个网络协议,和HTTP类似,因为轻量简单,很多时候传输效率是后者的数十倍。 它仅用极少的代码和有限的带宽,就能为连接远程设备提供实时可靠的消息服务,所以逐渐在物联网领域成为了最佳选择。

2024-11-09 22:20:43 2512

原创 HarmonyOS入门 : 获取网络数据,并渲染到界面上

入门HarmonyOS我们可以从一个实际的小例子入手,比如获取网络数据,并将其渲染到界面上。

2024-11-09 22:18:28 1727

原创 基于Ubuntu24.04,下载并编译Android12系统源码 (一)

介绍在Ubuntu24.04系统中,如何下载并编译Android12源码

2024-10-24 19:30:00 3130

原创 基于Ubuntu24.04,下载并编译Android12系统源码 (二)

介绍在Ubuntu24.04系统中,如何下载并编译Android12源码

2024-10-24 19:30:00 2183 2

原创 Java异常体系

介绍Java异常体系,包含受检异常和非受检异常的概念

2024-10-19 07:29:17 991

原创 浅谈华为 HarmonyOS Next

介绍华为HarmonyOs Next 的一些概念

2024-10-19 07:06:15 1386

原创 Unity3D入门(四) : Android和Unity3D交互 - Unity调用Android

介绍Android如何和Unity3D进行交互

2024-09-28 15:07:20 2992

原创 Unity3D入门(三) : Android和Unity3D交互 - Android调用Unity

介绍Android如何和Unity3D进行交互

2024-09-28 15:05:20 3267

原创 Unity3D入门(二) :Unity3D实现视角的丝滑过渡切换

介绍在Unity3D中,如何实现视角的渐变丝滑过渡

2024-09-21 11:04:30 2239

原创 Unity3D入门(一) : 第一个Unity3D项目,实现矩形自动旋转,并导出到Android运行

介绍如何新建一个Unity3D项目,实现矩形自动旋转的效果,并分别在WIndows和Android中运行。

2024-09-21 11:02:35 1740

Android Mars Xlog 支持自定义格式存储.zip

微信高性能日志存储库XLog的自定义编译后的so库,使其支持自定义格式存储。 详见https://blog.csdn.net/EthanCo/article/details/104378841

2020-02-18

Android CameraX Demo : 实现预览/拍照/录制视频/图片分析/对焦/切换摄像头等操作

我自己写的Android CameraX Demo,实现了预览/拍照/录制视频/图片分析/对焦/切换摄像头等操作。 具体详见我的博客 : https://blog.csdn.net/EthanCo/article/details/125603671

2022-07-04

Android ijkPlayer so库,支持RTSP

默认ijkPlayer是不支持RTSP的, 所以自己重新编译了ijkPlayer so库,修改了配置,使其支持RTSP。 详见我的博客 : https://blog.csdn.net/EthanCo/article/details/125271541

2022-06-15

ConstraintLayout Demo

Android ConstraintLayout的一些特性的示例, 基于androidx.constraintlayout:constraintlayout:2.0.0-beta6, 详见我的博客: https://blog.csdn.net/EthanCo/article/details/105722610

2020-07-15

使用DiffUtil高效更新Recyclerview

通过DiffUtil更新RecyclerView的Demo DiffUtil用于比较两个数据列表并能计算出一系列将旧数据表转换成新数据表的操作。 当你的RecyclerView需要更新数据时,将旧数据集传给它,它就能快速告知adapter有哪些数据需要更新。 详情请看 http://blog.csdn.net/EthanCo/article/details/52439543

2016-09-05

Android 测试机选购.xls

Android 测试机选购 详见博客 https://blog.csdn.net/EthanCo/article/details/105050835

2020-03-23

Flutter与Android Native原生进行混合开发,相互跳转,进行通信_示例Demo

Flutter与Android Native原生进行混合开发(flutter module),Flutter和Android Native相互跳转,Flutter和Android Native进行通信的示例Demo 有Flutter官方API和引入FlutterBoost两种方式,具体可以看我的博客 第一篇 : https://blog.csdn.net/EthanCo/article/details/121394295 第二篇 : https://blog.csdn.net/EthanCo/article/details/121399323

2021-11-18

Android Mars XLog Demo示例.zip

微信开源的高性能日志存储框架,使用详见https://blog.csdn.net/EthanCo/article/details/104374108

2020-02-18

Android 微信扫码库 使用Demo

微信开源的扫码库 https://github.com/opencv/opencv_contrib/tree/master/modules/wechat_qrcode 使用示例, 详情看我的博客 :https://blog.csdn.net/EthanCo/article/details/119206012

2021-07-29

vs_ffmpeg_配置

vs ffmpeg 配置,详见https://blog.csdn.net/EthanCo/article/details/82935348

2018-10-04

Android 2019年7月最新版本反编译工具_apktool_2.4.0_dex2jar-2.0_jd-gui-windows-1.6.1.zip

Android 2019年7月最新版本反编译工具 apktool_2.4.0 dex2jar-2.0 jd-gui-windows-1.6.1 具体使用详见 https://blog.csdn.net/s13383754499/article/details/78914592

2019-07-17

Android 手动编译APK-代码资源下载

Android 手动编译APK,所需要的代码资源下载 具体详见我的博客:Android 编译流程解析03-手动编译Apk 地址:https://blog.csdn.net/EthanCo/article/details/107172750

2020-07-07

Xshell5+Xftp5_破解版

Xshell5 + Xftp5 破解版,真正免费破解的版本 。 Xshell5 + Xftp5 破解版,真正免费破解的版本 。

2018-12-12

Fiddler_抓包工具

抓包工具,可以抓TCP、UCP、HTTP和HTTPS等的数据。 支持抓取PC、Android手机端等的数据。

2018-12-16

Paint的使用,Shader渲染器的使用

Paint的使用,Shader渲染器的使用,比如LinearGradient、RadialGradient、BitmapShader、SweepGradient

2019-03-28

手写Android事件分发机制

手写Android事件分发机制,用自己的代码实现Android事件分发机制

2019-05-07

ffmpeg_2.6.9相关数据

ffmpeg2.6.9相关资料,包括build_android.sh,可用作ffmpeg编译,生成Android ffmpeg so文件。详情可见https://blog.csdn.net/EthanCo/article/details/83212646

2018-10-20

Android Fragment错误使用的Demo

用于重现Activity重建后,导致Fragment存在多个的问题 详见博客: https://blog.csdn.net/EthanCo/article/details/105476228

2020-04-12

freevideotogif.zip

免费的视频转GIf图片:Free Video to GIF Converter 详见 https://blog.csdn.net/EthanCo/article/details/103628913

2019-12-20

Retrofit2.0和RxJava2获取天气的Demo

使用Retrofit2.0获取天气的Demo,包括Retrofit2.0和RxJava2的组合使用。 使用Retrofit2.0获取天气的Demo,包括Retrofit2.0和RxJava2的组合使用。

2017-09-04

Android 使用OpenGL调用Camera实现滤镜效果 Demo

Android 使用OpenGL调用Camera1 API实现滤镜效果的Demo,涉及到glsl文件。 具体就是调用Android Camera1 API,将摄像头画面预览到界面上,并且调用OpenGL,根据glsl文件,给预览的画面增加滤镜效果。

2025-02-16

Android 音频焦点获取Demo

资源中有两个Android项目 MusicPlayerTest 和 MediaPlayerTest3,用来互相切换切换音频焦点。 - MusicPlayerTest : 可以获取焦点,然后播放 - 接着运行MediaPlayerTest3,选择其中一个获取焦点的按钮,可以发现 - 点击"获取焦点_音乐" : MusicPlayerTest中会回调AudioManager.AUDIOFOCUS_LOSS - 点击"获取焦点_语音识别" : MusicPlayerTest中会回调AudioManager.AUDIOFOCUS_LOSS_TRANSIENT

2025-02-16

Android 基于 OpenCV+YOLOv8+NCNN 实现人像分割

在Android中,使用Java层的Camera API,在JNI层使用OpenCV+YOLOv8+NCNN,来实现人体识别和人像分割功能。资源文件中有一个MyMcnnTest.apk可以直接安装运行,MyNcnnTest.zip是Demo源码。 具体详见我的博客 : https://blog.csdn.net/EthanCo/article/details/133383640 https://blog.csdn.net/EthanCo/article/details/133382921 https://blog.csdn.net/EthanCo/article/details/133615951

2023-10-07

Android 实现椭圆形中心放射性渐变绘制 - 自定义View

Android自定义View中,使用RadialGradient来实现椭圆形的放射性渐变效果。 Android中实现椭圆形的绘制很简单,只需要调用canvas.drawOval()就可以了,但是椭圆形的中心发散渐变效果Android自带的API里面却是没有的,需要自己费点功夫来实现下了。这个资源,就是我花了两三天时间实现的这个功能源码。 具体详见我的博客 : https://blog.csdn.net/EthanCo/article/details/133076252

2023-09-21

Android Camera1 Demo - 实现预览、拍照、录制视频功能

由于工作中需要用到Camera1,所以花了两天时间研究了以下,使用Android Camera1 API实现了相机预览、拍照和录制视频的功能。 资源中有个MyCamera1Demo.apk可以直接安装运行,MyCamera1Demo.zip是Demo源码。 具体详见我的博客 : https://blog.csdn.net/EthanCo/article/details/132651833 使用的Android Studio版本是Android Studio Giraffe | 2022.3.1

2023-09-15

Android和Windows下,使用 OpenCV 4.8 实现人脸识别 示例 Demo

使用OpenCV 4.8(2023年7月最新版)来实现人脸识别系列文章的资料,包含 OpenCVTest.zip: 在 Visual Studio 2022 实现OpenCV接入并调用 OpenCVCameraFaceTest.zip : 基于Visual Studio 2022 ,使用OpenCV,在Windows上调用笔记本的摄像头,实现人脸识别 MyOpenCVFaceTest.zip: 在Android中,使用OpenCV在Android中实现人脸识别功能 faceDetection.apk : 基于MyOpenCVTest打的apk包,可以直接安装到Android手机上,体验人脸识别功能 资料文件夹 : 搜集了一些和OpenCV相关的PDF资料,一并放在该资源中 - OPENCV函数手册(带目录).pdf - OpenCV例程汇总(详细).pdf - 人脸识别开发完整课件.pdf - 深入OPENCV ANDROID应用开发.pdf 具体详见我的博客,关于OpenCV的系列文章 : https://blog.csdn.net/EthanCo

2023-08-09

Tabby Terminal - 1.0.197-setup-x64.exe - widnows 64位的安装包

Tabby Terminal ,一个好用的终端连接工具,比起CMD好用太多了 ! 该资源是widnows 64位的安装包。

2023-08-19

RGB-YUV转换工具 - Android App

用作RGB和YUV互相转换、换算的一个Android App工具,提供apk安装包,可以直接安装使用,以及提供项目源码。

2023-08-09

Android Studio中,将两个项目合并到一个项目中

该资源使用Gradle配置,将两个Android项目合并到一个项目中。 使用场景 : 在工作中,由于各种原因,导致需要将两个可单独运行的App项目,合并到一个git仓库里,且单独的App项目里还有其他Module模块。如果只是将两个项目复制到同一个文件夹下,还是得单独打开各个项目,是很不方便的。 而我想到达到的效果是,Android Studio打开两个项目同属的根文件夹,即可加载出两个项目,可以在Android Studio内部切换项目编译运行。 详情可以看我的博客 : https://blog.csdn.net/EthanCo/article/details/132056793

2023-08-02

OpenCV-4.8.0 打包下载,包括Windows和Android下的包

为了解决官网下载OpenCV比较慢,所以上传了这个资源包 这个资源包里包含了 opencv-4.8.0-windows.exe : windows下的包 opencv-4.8.0-android-sdk.zip : Android下的包 opencv-4.8.0.zip : openCV的源码 具体openCV的使用,可以看我的博客 : https://blog.csdn.net/EthanCo/article/details/131911635

2023-07-25

Android使用GlSurfaceView和OpenGL绘制三角形 Demo

Android使用GlSurfaceView和OpenGL绘制三角形 Demo,用作GlSurfaceView的使用入门,详见我的博客 : https://blog.csdn.net/EthanCo/article/details/131536345

2023-07-05

Android Camera2 Demo - 实现相机预览、拍照、录制视频功能

因为工作中要使用 Android Camera2 API 来实现相机功能,但因为Camera2比较复杂,网上资料也比较乱,有一定入门门槛,所以花了几天时间系统研究了下,这个项目就是我研究的成果。 其中包括一个自己写的Camera2的Demo,支持预览、拍照和视频录制,以及若干个网上找的,具有参考价值的Camera2 Demo。 具体看我的博客 : https://blog.csdn.net/EthanCo/article/details/131371887 https://blog.csdn.net/EthanCo/article/details/131414981 https://blog.csdn.net/EthanCo/article/details/131418829

2023-06-28

Android 双屏异显(Presentation) 开发示例Demo

Android 双屏异显(Presentation) 开发示例Demo,实现将第二个页面投屏到副屏上 具体想看我的博客 : https://blog.csdn.net/EthanCo/article/details/128662556

2023-06-22

Android中加载一张大图示例Demo

在Android中,获取一个1000*20000(宽1000px,高20000px)的大图,如何正常加载显示且不发生OOM呢 ? 本资源中的Demo对此进行了实现 详见我的博客 : https://blog.csdn.net/EthanCo/article/details/131337046

2023-06-22

Android 内置RTSP/RTMP服务器,实现局域网内视频推流与播放 Demo

在同一局域网中,Android推流端(比如平板)内置RTSP/RTMP服务器,Android推流端将摄像头的画面实时推流到内置的RTSP/RTMP服务器上,然后在Android手机上实时进行播放。 本方案实现了如下功能 : 平板端内置RTSP/RTMP服务器 平板端获取摄像头的画面并同步进行RTMP推流 (目前仅支持了RTMP推流,未实现RTSP推流) 手机端支持对RTSP/RTMP视频流的播放 具体可以看我的博客 : https://blog.csdn.net/EthanCo/article/details/130387829

2023-04-26

Android IjkPlayer 播放RTSP/RTMP视频流 Demo

Android IjkPlayer 播放RTSP/RTMP视频流 Demo 具体可以看我的博客 Rtsp服务器搭建 : https://blog.csdn.net/EthanCo/article/details/125321957 ijkPlayer so编译详见 : https://blog.csdn.net/EthanCo/article/details/125271541 支持RTSP视频播放,支持RTMP视频,以及 GoPro的udp://@0.0.0.0:8554 视频流播放

2022-11-01

Compose 和 Android 传统View 互相调用 示例 Demo

Compose 和 Android 传统View 互相调用 示例 Demo Sample,以及在双层嵌套(原生View嵌套Compose,Compose中又嵌套原生View)的情况下,在最外层原生View中,怎么获取到Compose内部的原生View。 具体详见我的博客 : https://blog.csdn.net/EthanCo/article/details/128363313

2022-12-19

ViewBinding与Kotlin委托结合使用,去除setContentView,原理伪代码

ViewBinding与Kotlin委托结合使用,去除setContentView。 ViewBindingPropertyDelegate和hi-dhl/Binding库的伪代码,用来了解其内部实现原理。 相当于是手写了一个简单的ViewBindingDelegate和Binding库 可看我的博客有详细介绍 : https://blog.csdn.net/EthanCo/article/details/126739511

2022-09-07

Android FFmpeg 编译后的so文件,包含32位和64位so

分别基于 FFmpeg 5.0.1和FFmpeg 4.3.2,编译后的so文件,用于实现Android快速接入FFmpeg 包括arm64-v8a和armeabi-v7a的libavcodec.so、libavfilter.so、libavformat.so、libavutil.so、libswresample.so、libswscale.so以及include文件

2022-08-18

Android UVC USBCamera投屏Demo,实现将手机上的画面和声音通过视频线投屏到Android车机

Android UVC USBCamera投屏,实现将手机上的画面通过视频线投屏到Android车机的屏幕,既有画面又有声音同步播放。 详见我的博客 : https://blog.csdn.net/EthanCo/article/details/125802505

2022-07-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除