跳至内容

Android Compose开发:使用Paging3进行分页加载

Paging3介绍 Paging 3 是 Android 架构组件的一部分,旨在帮助 Android 应用程序有效地管理和显示大量数据。它专门用于处理分页加载,可以轻松地从网络或本地数据库加载数据,并以分页的方式显示在用户界面上。以下是 Paging 3 的简单介绍: 1. 什么是 Paging 3? Paging 3 是一种用于处理分页加载数据的库,旨在简…

Android Compose开发:remember、mutableStateOf、derivedStateOf 和 rememberSaveable理解 Compose 中的状态管理

Jetpack Compose 是一个现代的 Android UI 工具包,它引入了许多新的概念和技术来构建动态、响应式的用户界面。其中一个关键概念是状态管理,Compose 提供了一些工具来帮助我们管理和维护界面的状态。在本文中,我们将深入探讨 Compose 中的四个重要概念:remember、mutableStateOf、derivedStateOf …

Android Compose开发:Retrofit如何实现JWT授权认证和自动刷新Token功能?OkHttp3中Interceptor和Authenticator使用实例

之前写的《NestJS中如何进行鉴权和授权验证?JWT、Passport》这篇文章,介绍了在NestJS端如何实现JWT授权验证,下面介绍下,如何在Android端,利用Retrofit和OkHttp3来实现接口认证和Token自动刷新的功能。 Interceptor 在Android端,我们请求后端接口一般是以下代码: 如果每个接口都这么写,那就有很多重复…

Android Compose开发:使用Room实现数据持久存储

当在 Jetpack Compose 中使用 Room 数据库时,你可以充分利用 Compose 的声明式 UI 和 Room 的持久化数据管理能力,来构建具有响应式特性的应用程序。本文将为你提供一个完整的 Room 在 Compose 中使用的示例,以帮助你了解如何集成这两个强大的库。 步骤一:添加依赖 首先,在项目的 build.gradle 文件中添加…

Android Compose开发:使用Hilt实现依赖注入管理

当在 Jetpack Compose 中使用 Hilt 时,可以充分发挥依赖注入的优势,使你的应用更加模块化、可维护和可测试。本文将为你介绍如何在 Compose 中使用 Hilt 进行依赖注入,以及其优势和常见用法。 什么是Hilt? Hilt 是由 Google 推出的一种依赖注入框架,专为 Android 应用程序设计。它基于 Dagger,旨在简化依…

Android Compose开发:Navigation导航功能的实现

在移动应用开发中,优秀的导航体验是确保用户轻松浏览和操作应用的关键因素之一。随着 Android Jetpack Compose 技术的引入,构建出色的用户界面变得更加便捷。而在这一体验中,Jetpack Compose Navigation 扮演了重要角色,使应用导航变得更加简单和流畅。 Jetpack Compose Navigation 是什么? Je…

Android Compose开发:SideEffect在Compose中的应用

什么是Side Effect? “Side effect”(副作用)是指函数或表达式的执行引发的与函数返回值无关的外部变化。换句话说,副作用是对函数外部环境造成的影响,这些影响不仅仅是函数返回的结果。 在编程中,副作用可以包括但不限于: 在函数式编程范式中,强调避免或最小化副作用,以提高代码的可维护性、可预测性和可测试性。函数式编程倾…

从零开始创建一个PhotoApp使用CameraX和Compose:在Jetpack Compose中从图库选择照片

这篇文章是这个系列的最后一篇,前面一篇讲到如何使用CameraX对预览照片进行截图,这篇文章会在上一篇代码的基础上,来分享下如何从图库中选中一张照片,上篇文章中有下面这段代码: 所以如果要显示图片,我们只要从图库中选中一张图片,然后转换成URI的形式就可以。 Manifest权限 首先我们要向AndroidManifest.xml文件加入下面的媒体访问权限:…

从零开始创建一个PhotoApp使用CameraX和Compose:在Jetpack Compose中使用CameraX对相机截图操作

前面两篇文章已经分别介绍了如何使用Accompanist在Jetpack Compose中获取设备权限,还有如何使用CameraX进行照相预览,此篇文章为这个系列的第三篇: 我们需要在相机预览界面添加一个按钮,用来截图操作: 首先创建一个按钮的Compose函数: 之后我们改造下之前的CameraPreview函数: 我们再新建一个CameraCaputre…

从零开始创建一个PhotoApp使用CameraX和Compose:在Jetpack Compose中使用CameraX进行相机预览

这篇文章将建立在上一篇的基础上《从零开始创建一个PhotoApp使用CameraX和Compose:在Jetpack Compose中使用Accompanist获取设备权限》进行讲解,我们将会使用CameraX来使用相机的功能。 CameraX CameraX 是由 Google 推出的 Jetpack 库,用于简化将相机功能集成到 Android 应用程序…