![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
翻译
文章平均质量分 95
PekingVagrant
生活如此美好,值得我们为之奋斗。
展开
-
Kotlin Lazy vs Lateinit 属性. 何时使用哪个属性?
原文链接。Kotlin提供了许多很棒的特性。我们可以利用这些功能,快速构建高质量的应用程序。在所有这些特性中, 和 是重要的初始化属性。有必要知道何时使用 以及何时使用 初始化。有时变量的值在其声明位置并不可用。对于 Android 开发者来说,一个明显的例子是在 或 中使用的 UI 小部件。直到 或 方法运行,整个 activity 中用于引用小部件的变量才能初始化。本例中的 ,例如:示例1.1无lateint的对象初始化必须初始化变量。由于我们还不能知道值,一种标准的技术是使变量可翻译 2022-07-01 01:02:23 · 489 阅读 · 0 评论 -
使用 Coroutines(协程) 和 Flow(流) 的 LiveData -第二部分:使用架构组件启动协程
本文是我在 2019 年 Android 开发者峰会上与 Yigit Boyar 的谈话总结的第二部分。使用协程和流的 LiveData (ADS 2019)https://youtu.be/B8ppnjGPAGE第一部分:响应式 UI第二部分:使用架构组件启动协程(本文)第三部分:LiveData 和协程模式Jetpack 的架构组件提供了许多快捷方式,所以您不必担心作业和取消。你只需要选择你的行动的作用域:ViewModel 的作用域这是启动协程最常见的方法之一,因为大多数数翻译 2021-09-28 13:35:10 · 571 阅读 · 0 评论 -
在 Android 12 中使用你的微件做更多事情!
原文链接。在 Android 12 中使用你的微件做更多事情!这篇文章是我写的关于更新 Android 12 微件的小连载文章的第二篇。在上一部分中,我们探索了一些简单的方法来实现对app用户高度可见的可视化更新。在本部分中,我们将介绍一些更高级的功能,使您的微件更具交互性,更易于配置,并在 Android 12 上提供更好的UI体验。更简单的配置在 Android 12 之前,重新配置小部件意味着用户必须删除现有的微件,并使用新配置再次添加。Android 12 以多种方式改进了微件的配置翻译 2021-09-17 18:03:34 · 593 阅读 · 2 评论 -
为 Android 12 更新你的微件(Widget)
很长时间以来,微件(Widgets) 一直是Android核心体验的一部分,许多应用程序有效地使用微件来增加用户参与度。用户喜欢微件,因为它能够在不启动应用程序的情况下使用应用程序的功能,并自定义设备的主屏幕。Android 12更新了现有的微件API,并修改了微件的设计,使之与“Material You”的设计语言保持一致。这些更改允许您使用设备主题颜色和圆角来构建更好看的微件,同时增强 搜索和放置微件 的可发现性和视觉效果。翻译 2021-09-15 17:39:02 · 1191 阅读 · 0 评论 -
探索 Android App Bundle
原文链接 Exploring the Android AppBundle,作者Joe Birch。目录App bundle 格式拆分 APKs构建和分发 Android App BundleBundle 工具动态服务功能动态提供功能我实际会节省多少大小?今年(2018年)在 I/O 上宣布了大量令人兴奋的事情 - 我最关注的一件事是新的 app b...翻译 2019-03-01 23:20:33 · 4361 阅读 · 0 评论 -
适用于 Android 初学者的 Dagger 2 - 进阶第二部分
原文链接这个故事是该系列的第七部分,适用于Android 初学者的 Dagger 2。 如果您没有阅读上一个,可以从下面开始。Dagger 2 for Android Beginners — IntroductionDagger is a fully static, compile-time dependency injection framework for both Java an...翻译 2019-02-26 22:50:10 · 372 阅读 · 0 评论 -
充分利用 Kotlin
翻译自Taking Advantage of Kotlin codelab。目录1.介绍你将构建什么你会学到什么你需要什么2.准备好开始下载代码应用概述Contact.javaContactsActivity.java配置Kotlin3.Kotlin 转换基础知识将联系人 POJO 转换为 Kotlin 数据类Contact 类文件的...翻译 2019-03-07 17:21:44 · 871 阅读 · 0 评论 -
ViewModels 和 LiveData:模式 +反模式
原文链接 ViewModels and LiveData: Patterns + AntiPatterns。Views 和ViewModels分配职责使用 Architecture Components 构建的 app 中实体的典型交互理想情况下,ViewModels 不应该知道任何关于 Android 的事情。这提高了可测试性、泄漏安全性和模块性。一般的经验法则是确保...翻译 2019-03-31 15:56:50 · 843 阅读 · 0 评论 -
剖析 Android Runtime:DVM vs ART
原文链接Closer Look At Android Runtime: DVM vs ART。在直接进入 Android Runtime 之前,我们需要了解什么是运行时环境,还需要了解一些基本的东西,如 JVM 和 Dalvik VM 的功能。什么是运行时(runtime)?在最简单的术语中,它是操作系统使用的系统,它负责将您使用 Java 等高级语言编写的代码转换为 CPU...翻译 2019-03-27 23:19:32 · 285 阅读 · 0 评论 -
让我们来谈谈 Android(国外 Android 学习资源)
原文链接 Let’s talkAndroid。无论你是编程新手还是经验丰富的开发人员,我都准备了一系列资源来教你 Android App 开发,从你的第一个 app 到高级主题。翻译 2019-03-29 13:00:47 · 674 阅读 · 0 评论 -
Android 生命周期备忘表-第一部分:单一 Activities
翻译自 The Android Lifecycle cheat sheet — part I: Single Activities。Android 旨在为用户提供支持,让他们以直观的方式使用 apps。 例如,一个 app 的用户可能会旋转屏幕,响应通知或切换到其他任务,他们应该能够在此类事件之后无缝地继续使用 app。为了提供这种用户体验,您应该知道如何管理组件生命周期。组件可以是 Ac...翻译 2019-04-25 23:06:57 · 149 阅读 · 0 评论 -
探索 Android Q:位置权限
原文链接 Exploring Android Q: Location Permissions。本文最初发表于https://joebirch.co/上周(本文发表于2019.3.29)我们看到了 Android Q 测试版的发布这个 Android 版本带来了一系列令人兴奋的变化,我们需要让我们的 apps 为这些变化做好准备。在这个文章系列中,我将深入讨论其中的每个变更,以便...翻译 2019-04-22 13:39:42 · 3185 阅读 · 0 评论 -
Android 生命周期备忘表-第二部分:多个 Activities
原文链接The Android Lifecycle cheat sheet — part II: Multiple activities。目录Back Stack - 场景1:在 activities 之间导航Back Stack — 场景 2: 返回栈中Activities 的配置更改Back Stack — 场景 3: App 进程被杀死同时阅读继续阅读在本系...翻译 2019-05-09 22:13:58 · 176 阅读 · 0 评论 -
Android 生命周期备忘表-第三部分:Fragments
原文链接The Android Lifecycle cheat sheet — part III: Fragments。目录场景 1: 带有 Fragment 的 Activity starts和 finishes场景 2: 带有 Fragments 的 Activity 被旋转Fragments — 场景 3: 带有被保留的Fragment 的 Activity 被旋转...翻译 2019-05-18 20:48:10 · 297 阅读 · 0 评论 -
将您的 Android 应用程序转换到 Jetpack
原文链接谷歌已经将他们的 support 库更名为 Jetpack(又名 AndroidX)。开发人员需要对此进行更改。本文将解释这意味着什么,以及如何开始转换您的项目以使用新组件。Jetpack走向未来什么是 Jetpack?Android Jetpack是一组库,工具和架构指南,旨在使构建 Android 应用程序变得容易。它旨在提供通用的基础结构代码,以便开发...翻译 2019-03-01 11:15:42 · 676 阅读 · 0 评论 -
作为 Android 开发人员,你应该熟悉的 50 个 Android Studio 提示,技巧和资源
原文链接 50 Android Studio Tips, Tricks & Resources you should be familiar with, as an Android Developer。目录视觉快捷键和有用的命令插件资源本文的目的是列出 Android Studio 的有用提示、技巧、快捷键和资源,这些将提高您的整体效率和表现。显然还有更多的优化...翻译 2019-02-27 17:00:52 · 406 阅读 · 0 评论 -
适用于 Android 初学者的 Dagger 2 - 进阶第一部分
原文链接目录系列目录Dagger2 前情回顾..前言Android 家族概念灵感项目说明涉及的依赖要解决的问题让我们把事情弄复杂点秘密依赖关系图使用 Dagger 2 处理依赖注入但是有一个问题!总结下一步是什么?这个故事是该系列的第六部分,适用于Android 初学者的 Dagger 2。 如果您没有阅读上一个,可以从下面开始。...翻译 2019-02-22 23:32:30 · 186 阅读 · 0 评论 -
Android 数据绑定 codelab
当你停止奋斗的时候,你就真的老了。 本文翻译自 Android Data Binding codelab,主要讲解了 Android Data Binding 库的基本使用方法。本 codelab 所讲项目的 GitHub 地址。 目录1. 介绍Data Binding(数据绑定) 库你将构建什么你需要什么2. 试试不使用 Data Binding 的 ap...翻译 2018-11-27 16:05:51 · 523 阅读 · 0 评论 -
Android 生命周期感知组件 codelab
风,它不肯说,云,悄悄飘过,黑夜它依旧沉默。只有天上一颗星星说,她睡了,你是否也该休息了。 ...翻译 2018-11-30 14:30:49 · 632 阅读 · 1 评论 -
失踪的指南:如何使用 Dagger 2
“生活如此美好,值得我们为之奋斗。”,我只同意后半句。本文翻译自 Gabor Varadi 的 That Missing Guide: How to use Dagger2,主要介绍了使用 Dagger2 时需要注意的地方。目录步骤:如何将 Dagger 添加到你的项目中如何判断你做得不对让我们来看一个真实的例子吧使用构造函数 injection(注入)+ scop...翻译 2018-12-07 16:46:11 · 174 阅读 · 0 评论 -
适用于 Android 初学者的 Dagger 2 - 简介
本文翻译自 Dagger 2 for Android Beginners — Introduction,作者是 Hari Vignesh Jayapalan。目录谁应该阅读?系列目录先决条件什么是依赖?为什么依赖不好?依赖的类型总结下一步是什么?Dagger 是一个完全静态的编译时依赖注入框架,适用于 Java 和 Android。 它是 Square 创...翻译 2018-12-19 23:05:35 · 204 阅读 · 0 评论 -
带有 View 的 Android Room —— Kotlin
本文翻译自 Android Room with a View - Kotlin codelab,较长。目录1. 介绍推荐的 Architecture Components(架构组件)是什么?你将构建什么RoomWordSample架构概览你将学到什么你需要什么2. 创建你的 app3. 更新 gradle 文件4. 创建实体5. 创建 DAO什么是D...翻译 2018-12-18 17:24:26 · 1618 阅读 · 0 评论 -
适用于 Android 初学者的 Dagger 2 - DI 第一部分
本文翻译自 Dagger 2 for Android Beginners — DI part I。目录系列目录Dagger 2 前情回顾..先决条件什么是依赖注入?解决硬性依赖问题(又名 white walkers)的策略依赖注入技术例1分析 War总结下一步是什么?这个故事是该系列的第二部分,适用于 Android 初学者的 Dagger 2。...翻译 2019-01-17 15:55:49 · 266 阅读 · 0 评论 -
App 快捷方式概述
原文链接目录App 快捷方式概述快捷方式类型快捷方式的限制App 快捷方式概述作为开发人员,您可以定义快捷方式以在 app 中执行特定操作。 这些快捷方式可以显示在支持的 launcher(桌面图标启动器) 中,帮助用户快速启动 app 内的常见或推荐任务。这套指南教您如何创建和管理应用程序快捷方式。 此外,您将学习一些可以提高快捷方式效果的最佳实践。快捷方式类型...翻译 2019-01-14 22:59:13 · 802 阅读 · 0 评论 -
适用于 Android 初学者的 Dagger 2 - DI 第二部分
本文翻译自 Dagger 2 for Android Beginners — DI part II。这个故事是该系列的第三部分,适用于 Android 初学者的 Dagger 2。 如果您没有阅读上一篇文章,可以从这里开始。系列目录适用于 Android 初学者的 Dagger 2 - 简介 适用于 Android 初学者的 Dagger 2 - DI 第一部分 适用于 ...翻译 2019-01-21 11:26:31 · 150 阅读 · 0 评论 -
App 快捷方式——创建快捷方式
原文链接快捷方式通过帮助用户快速访问 app 的某些部分,为用户提供特定类型的内容。如何使用快捷方式提供内容取决于您的用例以及快捷方式的上下文是应用驱动还是用户驱动。 虽然静态快捷方式的上下文不会更改,并且动态快捷方式的上下文会不断更改,但两种情况下的上下文都是由您的应用程序驱动的。 如果用户选择他们希望您的应用向他们提供内容的方式,例如使用固定的快捷方式,则上下文由用户定义。 以下场景演...翻译 2019-01-15 18:53:07 · 5919 阅读 · 0 评论 -
适用于 Android 初学者的 Dagger 2 - Dagger 2 第一部分
原文链接这个故事是该系列的第四部分,适用于 Android 初学者的 Dagger 2。 如果您没有阅读上一篇文章,可以从这里开始。系列目录适用于 Android 初学者的 Dagger 2 - 简介 适用于 Android 初学者的 Dagger 2 - DI 第一部分 适用于 Android 初学者的 Dagger 2 - DI 第二部分 适用于 Android...翻译 2019-01-21 15:33:11 · 171 阅读 · 0 评论 -
适用于 Android 初学者的 Dagger 2 - Dagger 2 第二部分
原文链接这个故事是该系列的第五部分,适用于 Android 初学者的 Dagger 2。 如果您没有阅读上一个,可以从下面开始。系列目录适用于 Android 初学者的 Dagger 2 - 简介 适用于 Android 初学者的 Dagger 2 - DI 第一部分 适用于 Android 初学者的 Dagger 2 - DI 第二部分 适用于 Android 初...翻译 2019-01-21 17:16:37 · 157 阅读 · 0 评论 -
App 快捷方式——管理快捷方式
原文链接目录快捷方式的行为快捷方式可见性快捷方式显示顺序管理多个 intents 和 activities分配多个 intents从另一个 activity 开启一个 activity设置 intent flags更新快捷方式处理系统区域设置更改跟踪快捷方式用法禁用快捷方式速率限制备份还原其他资源创建快捷方式后,您可能需要在应用的生命...翻译 2019-01-16 15:50:11 · 974 阅读 · 0 评论 -
App 快捷方式——快捷方式的最佳实践
原文链接在设计和创建应用程序的快捷方式时,请遵循以下准则:在设计和创建应用程序的快捷方式时,请遵循以下准则:遵循设计指南要使应用程序的快捷方式与系统应用程序使用的快捷方式在视觉上保持一致,请遵循应用程序快捷方式设计指南。仅发布四个不同的快捷方式虽然 API 目前支持在任何给定时间为您的应用程序组合最多五个静态和动态快捷方式,但我们建议您仅发布四个不同的快捷方式,以改善其在...翻译 2019-01-17 09:39:56 · 580 阅读 · 0 评论 -
应用程序架构指南(本文已过时,请点击原文链接查看最新官方文档)
原文链接目录移动应用程序用户体验一般架构原则关注点分离由 model(模型)驱动 UI推荐的应用程序架构概览构建用户界面获取数据连接 ViewModel 和 repository缓存数据持久化数据展示正在进行中的操作测试每个组件最佳实践附录:暴露网络状态本指南面向那些已经掌握了构建应用程序...翻译 2019-02-20 09:31:19 · 6758 阅读 · 2 评论