
Android
文章平均质量分 73
AntDreamer
这个作者很懒,什么都没留下…
展开
-
Android实战之Dagger
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点Dagger 是一个用于 Android 应用程序的依赖注入(Dependency Injection, DI)框架。它通过使用代码生成来实现依赖的注入,具有高效的性能和编译时验证的优点。Dagger 的核心目标是帮助开发者管理对象的创建和依赖,简化代码结构,提高代码的可测试性和可维护性。原创 2024-11-29 10:48:49 · 440 阅读 · 0 评论 -
Android RecycleView 深度解析与面试题梳理
是 Android 开发中处理列表和网格布局的强大工具,它通过一系列优化机制提供了高性能的滑动体验和高效的内存管理。理解其工作原理和组件协作方式对于开发高性能的 Android 应用至关重要。在面试中,对的深入理解也是衡量一个 Android 开发者技能的重要标准。希望本文能够帮助你更好地理解,并在面试中表现出色。欢迎关注我的公众号AntDream查看更多精彩文章!原创 2024-09-18 22:26:11 · 1171 阅读 · 0 评论 -
Android RecyclerView 缓存机制深度解析与面试题
深入理解的缓存机制对于优化列表和网格的性能至关重要。通过本文的分析,希望你能在面试中更好地展示你对缓存机制的理解和实践经验。欢迎关注我的公众号AntDream查看更多精彩文章!原创 2024-09-18 22:24:09 · 1434 阅读 · 0 评论 -
Android中用GLSurfaceView绘制3D图像
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点GLSurfaceView 是 Android 提供的一个用于 OpenGL ES 绘图的专用视图,它可以用来绘制 2D 和 3D 图形。GLSurfaceView 的使用涉及到 OpenGL ES 的一些核心概念,包括 EGL、GLSurfaceView、GLSurfaceView.Renderer 等。原创 2024-09-16 23:42:57 · 700 阅读 · 0 评论 -
Android中多进程通信有几种方式?需要注意哪些问题?
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点在Android中,多进程通信(Inter-Process Communication,IPC)是指不同进程之间进行数据交换和协同工作的过程。由于Android的每个应用都在其自己的沙箱环境中运行,进程间默认是隔离的,因此当需要在不同应用或同一应用的不同组件之间共享数据时,就需要使用IPC机制。原创 2024-09-13 14:08:19 · 1952 阅读 · 0 评论 -
Android中LiveEventBus收不到消息?不妨试试本地广播
通过本地广播机制,可以方便地实现应用内部不同组件之间的通信。本文示范了如何设置接收器、发送广播以及在生命周期中正确管理广播接收器。通过这种方式,可以保证应用的通信安全和高效。欢迎关注我的公众号AntDream查看更多精彩文章!原创 2024-09-12 08:06:23 · 307 阅读 · 0 评论 -
一个Android App最少有几个线程?实现多线程的方式有哪些?
多线程在Android开发中非常重要,通过适当的多线程管理,可以显著提升应用的性能和用户体验。应避免在主线程上执行任何耗时操作,以防止应用响应不及时。选择合适的多线程管理方法和工具(如线程池、Kotlin协程等)是保持代码简洁、高效的关键。欢迎关注我的公众号AntDream查看更多精彩文章!原创 2024-09-11 10:22:56 · 1236 阅读 · 0 评论 -
带你了解Android Jetpack库中的依赖注入框架:Hilt
Hilt是Google推出的一种用于Android的依赖注入(Dependency Injection,DI)框架,构建于Dagger之上,旨在简化Android应用中的依赖注入过程。通过Hilt,你可以更轻松地管理和提供依赖,显著减少DI的样板代码,并提高应用的可测试性和可维护性。原创 2024-09-11 09:29:29 · 1310 阅读 · 0 评论 -
Android经典实战之TextureView原理和高级用法
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点。原创 2024-09-09 09:47:04 · 975 阅读 · 0 评论 -
Android中SurfaceView的双缓冲机制和普通View叠加问题解决办法
SurfaceView 是 Android 平台上用于高效渲染图形的视图控件。它将内容绘制在一个独立的 Surface 上,可以直接由渲染线程访问,从而提高性能,尤其是在需要频繁刷新和更新的场景下,如视频播放、游戏和图形动画等。双缓冲机制是 SurfaceView 实现流畅图像绘制的重要机制之一。双缓冲的基本思想是使用两个缓冲区进行绘制:一个用于显示当前帧,另一个用于绘制下一帧。工作流程如下:这种机制有助于减少图像闪烁现象,提供更平滑的视觉体验。SurfaceView 和普通 View 叠加使用可能会遇到以原创 2024-09-09 09:45:31 · 1275 阅读 · 0 评论 -
Android经典实战之SurfaceView原理和实践
SurfaceView 是一个非常适用于高性能绘制任务的组件,通过理解其原理、Surface 类的作用以及与 View 树的关系,可以更好地在实际项目中加以应用。在使用过程中注意线程安全、生命周期管理以及性能优化,以确保应用的稳定性和流畅性。欢迎关注我的公众号AntDream查看更多精彩文章!原创 2024-09-05 16:58:53 · 1604 阅读 · 0 评论 -
Android经典实战之如何获取View和ViewGroup的中心点
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点在 Android 中,要获取View和ViewGroup的中心点(即中心坐标),可以通过以下步骤完成。原创 2024-09-05 08:15:00 · 613 阅读 · 0 评论 -
Android经典实战之Textview文字设置不同颜色、下划线、加粗、超链接等效果
是的一个子类,用于在一个字符串上应用一种或多种样式。常见的样式可以通过What:设置文本颜色:设置文本背景颜色StyleSpan:设置文本风格,如粗体,斜体:设置文本下划线:设置文本删除线:设置文本可点击:设置文本相对大小使用,我们可以在单个字符串内灵活应用多种样式和效果。以上示例展示了如何设置文本颜色,字体样式,添加下划线,设置文字大小和添加点击事件。通过组合这些效果,你可以实现丰富的文本展示和交互效果。欢迎关注我的公众号AntDream查看更多精彩文章!原创 2024-09-04 14:17:28 · 880 阅读 · 0 评论 -
Android经典实战之WindowManager和创建系统悬浮窗
是 Android 中管理窗口的系统服务。它负责管理应用程序窗口的布局以及与其他窗口交互。每个应用程序的窗口都由管理,系统弹出窗口(如系统通知和对话框)也由管理。原创 2024-09-04 09:52:36 · 2181 阅读 · 0 评论 -
Android经典实战之窗口和WindowManager
窗口(Window)是Android用户界面显示的基础单位,可以包含视图层级。系统窗口(System Window)是系统级的全局窗口,例如状态栏、导航栏等。是系统服务,管理窗口的创建、更新、移除等操作,可以管理应用窗口和独立窗口。Activity 与 Window有紧密的联系,每个Activity绑定一个窗口,通过窗口管理视图显示。了解和掌握窗口概念以及的使用方法,在复杂的Android应用开发中是非常重要的,可以帮助你更灵活和高效地管理视图和用户界面。欢迎关注我的公众号AntDream。原创 2024-09-03 09:57:44 · 1228 阅读 · 0 评论 -
Android经典实战之Android 14前台服务适配
通过遵循上述最佳实践,你可以确保你的应用在Android 14上能够顺利运行前台服务,同时为用户提供更好的体验。:如果你的前台服务需要在使用时获得权限(如相机、位置等),确保在服务启动前检查和请求必要的权限。:对于不需要前台服务的后台任务,考虑使用WorkManager来调度这些任务,这样可以更好地管理后台执行的工作,同时提高电池效率。:在适配完成后,确保在Android 14的设备或模拟器上测试你的应用,验证前台服务是否能够正常运行,并且没有违反新的适配要求。方法,并传入相应的前台服务类型。原创 2024-09-02 09:32:46 · 1106 阅读 · 0 评论 -
Android经典实战之OkDownload的文件分段下载及合成原理
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点OkDownload 是一个高效、灵活的 Android 下载引擎,支持多线程下载、任务队列管理、断点续传等功能。它允许开发者配置下载任务的各种参数,如线程数、文件命名、优先级等,并且提供了丰富的监听器来监控下载状态。原创 2024-08-30 10:44:07 · 1395 阅读 · 0 评论 -
Android经典实战之OkDownload:一个经典强大的文件下载开源库,支持断点续传
OkDownload 是一个为 Android 平台设计的开源下载框架,它支持多线程下载、多任务处理、断点续传等功能,并且具有可靠性、灵活性和高性能的特点。这个库是 FileDownloader 的升级版本,也被称作 FileDownloader2 。要使用 OkDownload,首先需要在项目中添加依赖。可以通过 Maven 或 Gradle 引入 OkDownload 核心库以及 SQLite 和 OkHttp 的相关依赖 。配置 DownloadTaskDownloadTask 提供了多种配置选项原创 2024-08-30 10:42:34 · 1665 阅读 · 0 评论 -
Android经典实战之用kotlin实现散列算法SHA-256
SHA-256 是 SHA-2 家族中的一种,是一种经常用于数据完整性验证和数字签名的加密散列函数。它输入任意大小的数据,输出一个 256 位(32 字节)长的摘要。验证文件的完整性数字签名密码存储。原创 2024-08-29 09:34:30 · 952 阅读 · 0 评论 -
Android经典实战之存储方案对比:SharedPreferences vs MMKV vs DataStore
适合简单、少量的数据存储,使用方便,但在性能和并发上有缺陷。MMKV性能卓越,支持多进程,API 类似 SharedPreferences,便于迁移和使用,非常适合需要高性能和多进程支持的应用场景。DataStore是 Google 提供的现代化库,具有良好的异步和响应式编程体验,以及类型安全的存储,比较适合新的项目开发。根据项目的需求选择合适的键值对存储方案,可以显著提升应用的性能和用户体验。欢迎关注我的公众号AntDream查看更多精彩文章!原创 2024-08-29 09:31:41 · 1333 阅读 · 0 评论 -
Android经典实战之常见的移动端加密算法和用kotlin进行AES-256加密和解密
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点在移动端开发中,数据加密是确保数据传输和存储安全的重要手段。常见的加密算法包括对称加密算法(如 AES)、非对称加密算法(如 RSA)、散列算法(如 SHA-256),以及消息认证码(如 HMAC)。原创 2024-08-28 14:26:32 · 1393 阅读 · 0 评论 -
Android 15:全新体验与隐私保护的革新
Private Space” 允许用户在设备上创建一个通过密码、图案或生物识别技术锁定的独立空间。在这个空间内,用户可以安装和使用特定的应用,而这些应用在设备主界面上是不可见的。这意味着即使他人拿到你的手机,也无法访问这些应用和其中的数据。Android 15 的推出,不仅仅是一次简单的版本更新,更是 Google 对智能手机操作系统在隐私保护、性能优化、用户体验和安全性方面的全面革新。原创 2024-08-24 09:00:00 · 2144 阅读 · 0 评论 -
Android经典实战之CameraX 库性能优化的策略
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点。原创 2024-08-23 10:20:33 · 1232 阅读 · 0 评论 -
Android经典实战之用 CameraX 库实现高质量的照片和视频拍摄功能
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点。原创 2024-08-23 10:19:05 · 1249 阅读 · 0 评论 -
Android经典实战之简化 Android 相机开发:CameraX 库的全面解析
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点CameraX 是 Android Jetpack 的一个组件库,旨在简化 Android 相机应用的开发。它提供了一系列易于使用的 API,支持从 Android 5.0(API 级别 21)起的设备,具有广泛的设备兼容性和生命周期感知能力。原创 2024-08-22 15:01:48 · 834 阅读 · 0 评论 -
Android经典实战之跳转到系统设置页面或其他系统应用页面大全
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点在Android开发中,经常需要跳转到系统设置页面或其他系统应用页面。原创 2024-08-22 07:48:37 · 2666 阅读 · 0 评论 -
Android中弹框如何设计成全屏的
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点在 Android 中,如果你想将一个对话框设计成全屏,可以使用Dialog或并进行相应的配置。原创 2024-08-20 14:07:36 · 1036 阅读 · 0 评论 -
android 实战开发之Java 中生成从 1 到 3 的随机数
在 Java 中生成从 1 到 3 的随机数,可以使用类或者方法。原创 2024-08-19 16:10:58 · 2327 阅读 · 0 评论 -
Android经典实战之使用ViewCompat来处理View兼容性问题
ViewCompat类提供了一组方法,这些方法封装了不同版本 Android API 中的视图操作,使得在早期版本中也能使用新版本的功能。开发者通过ViewCompat类,能更容易地实现跨版本的视图处理,提升应用在不同 Android 版本上的兼容性与一致性。欢迎关注我的公众号AntDream查看更多精彩文章!原创 2024-08-16 09:45:09 · 1283 阅读 · 0 评论 -
Android经典实战之约束布局ConstraintLayout的实用技巧和经验
ConstraintLayout 是一种基于约束的布局方式,与传统的布局(如 LinearLayout、RelativeLayout)相比,具有更高的灵活性和性能。它允许你在视图之间创建多种多样的约束条件,比如对齐、比例、偏移等。通过合理使用和理解 ConstraintLayout 及其提供的丰富 API 和工具集,可以让你高效地创建和管理复杂且灵活的 Android 布局。希望这些讲解和技巧能帮助你更好地使用 ConstraintLayout。欢迎关注我的公众号AntDream查看更多精彩文章!原创 2024-08-14 11:12:00 · 1192 阅读 · 0 评论 -
Android经典实战之处理后台任务的2个工具
在 Android 应用中,后台任务是指那些在不需要用户交互的情况下执行的任务。这些任务可能包括数据同步、文件上传、用户活动记录等。为确保这些任务在各种条件下可靠地执行,Android 提供了一些工具和API,比如和。原创 2024-08-14 11:06:52 · 1371 阅读 · 0 评论 -
Android实战经验分享之如何获取状态栏和导航栏的高度
1、通过资源名称获取:优点:简单、代码兼容性好。缺点:可能受某些定制 ROM 的影响,准确性在极少数情况下可能有问题。2、通过 WindowInsets 获取:优点:在较新版本的 Android 上非常准确。缺点:需要较新的 API 级别,可能需要做额外的兼容性处理。原创 2024-08-13 08:39:58 · 867 阅读 · 0 评论 -
Android经典实战之用WindowInsetsControllerCompat方便的显示和隐藏状态栏和导航栏
为开发者提供了一种建议使用的方式来处理和控制 Android 系统的窗口插入。与传统方法相比,它更现代、更灵活,同时也更兼容不同的 Android 版本。因此,在处理状态栏、导航栏的显示和样式时,建议使用。欢迎关注我的公众号AntDream查看更多精彩文章!原创 2024-08-13 08:36:25 · 1801 阅读 · 0 评论 -
Android跨平台开发之Dart 3.5 与 Flutter 3.24:革新跨平台应用开发
Dart 3.5 和 Flutter 3.24 的发布,不仅仅是版本号的增加,它们代表了跨平台应用开发领域的一次重大进步。从语言特性的革新到 UI 组件的扩展,从原生互操作性的增强到 Web 平台的支持,这些更新为开发者提供了更多的工具和可能性,帮助他们构建更高质量、更具创新性的应用程序。随着 Flutter 社区的不断壮大和技术的不断进步,我们有理由相信,未来的跨平台开发将更加精彩。作为开发者,我们应该积极拥抱这些新特性,不断学习和实践,以提高我们的开发技能和应用的质量。原创 2024-08-12 08:15:00 · 1278 阅读 · 0 评论 -
Android Studio默认debug签名
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点在 Android Studio 中,默认的调试(debug)签名文件是自动生成的,无需手动配置。这个文件通常位于用户的主目录中。原创 2024-08-11 11:38:52 · 751 阅读 · 0 评论 -
Android经典实战之如何获取图片的经纬度以及如何根据经纬度获取对应的地点名称
将这两个部分结合起来,你可以完整地实现从图片中提取地理位置信息,并将其转换为可读的地址。从图片中提取经纬度信息。根据得到的经纬度信息使用Geocoder获取对应的地址信息。原创 2024-08-09 09:40:19 · 1787 阅读 · 0 评论 -
Android 多进程情况下判断应用是否处于前台或者后台
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点在 Android 应用开发中,有时候需要在多进程情况下判断应用是否处于前台或者后台。这在各种场景中可能是有用的,比如为了在后台优化资源使用,或者处理前台与后台的不同逻辑。多进程下进行前后台判断的挑战在于,每个进程都有独立的生命周期,因此不能直接通过单一进程内的生命周期回调(如onResume()onPause()等)来判断整个应用是否处于前台还是后台。原创 2024-08-08 17:23:48 · 1011 阅读 · 0 评论 -
Android经典实战之Kotlin中实现圆角图片和圆形图片
在 Kotlin 中实现圆角的可以通过自定义控件和使用Canvas和Path进行剪裁来实现。下面是一个简单的实现方法,继承并自定义绘制方法,使其可以设置圆角属性。首先,创建一个自定义的= null,init {// 初始化代码,可以在此读取自定义属性// 设置圆角半径在 XML 布局文件中使用自定义的在中定义一个样式,用于设置的圆角:原创 2024-08-07 21:24:15 · 965 阅读 · 0 评论 -
Android经典面试题之开发中常见的内存泄漏,以及如何避免和防范
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点内存泄漏(Memory Leak)在软件开发中指的是程序未能释放已不再需要的内存,从而导致内存的浪费。在Android应用开发中,内存泄漏尤其重要,因为移动设备通常内存较为有限,长期的内存泄漏会导致应用变慢、崩溃,甚至影响整个系统的稳定性。原创 2024-08-06 08:15:00 · 869 阅读 · 0 评论 -
Android 14适配Google play截止时间临近,适配注意点和经验
本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点。原创 2024-08-05 08:15:00 · 1484 阅读 · 0 评论