Android

Android

20篇文章
Kotlin中 data/object/sealed/enum class用途 在Kotlin中,data、object、sealed和enum class都是用于创建不同类型的类...
JNI开发中静态和动态注册 JNI(Java Native Interface)是Java平台提供的一种机制,用于在Java程序中调用本地代码(例如C/C++代码)。 JNI中涉及...
单元测试 Android开发中如何进行单元测试和UI测试? 在 Android 开发中,单元测试和 UI 测试是非常重要的,可以保证代码的质量和稳定性。以下是 Android 开发...
aidl 整理 AIDL(Android Interface Definition Language)是一种用于定义 Android 应用程序中进程间通信(IPC)的接口的语言。A...
sco音频采集只支持单路音频采集 使用SCO采集音频时,如果有两个物理mic,则会采集到两个物理mic的音频信号,但由于SCO协议本身的限制,只能传输单路音频数据,因此最终拿到的单...
Android中常见的延迟执行方法有哪些,各有什么优缺点。应用场景是什么 在 Android 中,常见的延迟执行方法有以下几种: Handler.postDelayed():在指定...
Android中常见的线程池 Executors在Android中什么场景下使用 Executors 是 Java 平台的一个工具类,提供了方便的线程池管理功能,可以帮助开发者更加...
LRUCache具体使用 LRU Cache是一种常见的缓存策略,通过最近最少使用的原则,在缓存满时考虑淘汰最近没有使用的数据。可以在Android中作为一个内存缓存工具使用,比如...
Android中Window的创建过程 在Android中,Window是与操作系统交互的最上层组件。当一个应用程序启动时,首先会创建一个Activity,并且将此活动附加到一个新...
AMS启动过程 在Android应用启动流程中,AMS( Activity Manager Service )的启动是非常关键的。以下是AMS的启动过程: 1.进程启动 当我们启动...
Android中阻塞队列的应用有哪些 阻塞队列在 Android 中有很多应用,比如: 线程池:线程池任务的执行就是基于一个阻塞队列,如果线程池任务已满,则任务需要等待阻塞队列中的...
CAS(Compare-And-Swap) 是一种原子操作,用于实现多线程同步。在Java中,Atomic系列的类通过CAS实现了并发实现。 CAS操作包含三个参数:内存地址V、旧...
实现一个自定义控件 实现一个自定义控件可以通过以下步骤: 创建一个Java类,并继承已有的View或ViewGroup。 自定义视图需要覆盖一些方法,例如 onDraw()、onM...
在 Android 中,音频采集常用的配置属性有以下几个: 音频源 Audio Source 属性,用于指定采集音频数据的来源。例如: MediaRecorder.AudioSou...
自定义注解可以用来在编译时期插入代码或者做一些特殊的操作,以下是自定义注解的几种用法: 生成文档等类似的说明: 这是自定义注解最常见也是最基本的应用场景,在Java中有原生的注解(...
Optional 是一个 Java 8 引入的类,它的作用是表示一个可能为 null 的值。使用 Optional 可以让代码更加简洁,避免出现空指针异常。下面是一些 Option...
EventBus EventBus是一种开源的事件发布/订阅库,用于在Android应用程序的组件之间传递消息和事件。使用EventBus,您可以在应用程序内的不同部分之间进行松耦...

关注我们的公众号

微信公众号