随着设备性能提升和软件生态发展,越来越多的 Android 应用需要执行相对更复杂的网络、异步和离线等任务。例如用户想要离线观看某个视频,又不想一直停留在应用界面等待下载完成,那么就需要以一定的方式让这些离线的过程在后台运行。再比如您想将一段精彩的 Vlog 分享到社交媒体,肯定也会希望视频上传时不会影响到自己继续使用设备。这就涉及到了我们今天分享的主题: 使用 WorkManager 管理后台和前台工作。
根据我们曾经做的调查,开发者们希望 Android 官方可以维护一些实用的组件库和架构实践,以降低中大型应用的开发门槛,这样开发团队就可以集中更多精力在实际业务的优化和改进上。
在Android开发领域,掌握Jetpack是一位专业Android开发者必备的技能。本文将围绕Android Jetpack展开,深度解析面试中可能涉及到的高级疑难问题,我将分享一些关于Android Jetpack的面试技巧,帮助你更好地准备面试。
Android应用保活是一个老生常谈的话题,本文尽可能收集市面上的保活手段,希望能对你有所帮助。
一年一度的产品线兼容活动又开始了。Android系统每更新一次系统,对开发者而言都是持续而漫长的挑战。
本文为 Android 电量管理 系列连载的第三篇,希望您能在阅读过程中收获设备续航方面的战略洞见和实践指导。
10 月 4 日,谷歌将Android12源代码推送至 Android 开源项目 (AOSP)。自从2021年2月发布Android12第一个预览版以来,历经9个月时间测试和优化,正式版本的Android12终于来了!不仅在UI方面做了不少升级,Android12对个人隐私安全的保护也得到了进一步增强。整体来讲,Android12更加智能、高效和安全,感兴趣的开发者可以登录官网下载源码测试学习。
△ 插图作者:Virginia Poltrack 在 Google I/O 2018 开发者大会上,我们推出了 Android Jetpack,其中包含的 Android 开发架构组件能够帮助您简化开发流程,从而轻松打造出优质应用。开发者能够利用 Jetpack 组件学习最佳实践,减少样板代码,简化复杂任务,进而将精力集中在关键代码上。
Android Jetpack 集合了一系列的开发库,旨在帮助开发者更容易地创作高质量的应用,同时也更好地兼容老旧版本的 Android 系统。在正式发布 Jetpack 两年后的今天,我们已经看到大量的应用开发开始采用 Jetpack 中的开发库,这其中既包括大型开发团队的产品,也有那些刚起步的应用。而这一切仅仅是开始,因为近期我们发布了一系列新的开发库,以及过去一年我们对于现有开发库的重要更新。
Google发布了新系统 Android 12 的首个开发者预览版。根据谷歌官方消息,最终版本的Android 12预计于今年下半年正式上线。此次发布预览版的目的主要是帮助开发者提前了解Android 12的新变化,为后续进行应用适配提前做准备。
5月8号, I/O大会上推出了Architeture新组件WorkManager。 由于Android版本的不断更新,后台任务的处理变得越来越复杂。 因此,Google发布了 WorkManager(作为JetPack的一部分)来帮助开发者解决这一难题。
随着 Android 12 正式版 的发布,越来越多的用户将升级至最新版本。Android 12 带来大量新 API 和功能更新的同时也带来了平台兼容性的变更,我们建议开发者优先对当前应用进行测试,并进行兼容性更新。这样一来,当用户将设备更新至 Android 12 时,可确保其拥有良好的体验。
通知是让应用用户保持联系和获取更新的重要渠道。Android 提供通知 API 用于在设备上创建和发布通知,但这些通知经常由外部事件触发,并从应用服务器发送至应用。
注:原文地址 5月8号, I/O大会上又推出了两个新的Architeture Component库: Navigation与 WorkManager. 这里就先介绍一下 WorkManager。
欢迎来到我们 WorkManager 系列的第二篇文章。WorkManager 是一个 Android Jetpack 库,当满足工作的约束条件时,用来运行可延迟、需要保障的后台工作。对于许多类型的后台工作,WorkManager 是当前的最佳实践方案。在第一篇博文中,我们讨论了 WorkManager 是什么以及何时使用 WorkManager。
在 上一篇文章 中,我们提到了现代 WorkManager API 对工具支持方面也进行了改进,本文我们将结合实际案例来看看具体有哪些改进。如果您更喜欢通过视频了解此内容,请 点击此处 查看。
从手机和笔记本电脑,再到平板电脑、电视甚至汽车,Android 应用每天都在各种设备上支持着数十亿人的工作、娱乐、交流和创造。当越来越多的人开始依赖您所构建的体验,人们的期望也跟着水涨船高。我们坚信,Android 开发者们的反馈有助于我们为您的应用和所有用户构建一个更好的平台。我们已经发布了 Android 12 (下一代 Android 系统) 的第一个开发者预览版,供您测试和提交反馈。
从 API 1 开始,处理 Activity 的生命周期 (lifecycle) 就是个老大难的问题,基本上开发者们都看过这两张生命周期流程图:
上一篇所说内容是所有 App 安装到 Android14 设备上的影响和需要注意的内容,本篇接下来就要介绍当 targetSdkVersion 升级到 34 时,App 需要注意和修改的地方。
Android 12 (API 级别为 31) 引入了 前台服务启动限制。除少部分 特殊场景 外,如果您的应用的 targetSdkVersion 是 Android 12 或者更高 API 级别的话,应用在后台运行时将不能再启动前台服务。这意味着,如果应用当前状态不符合后台启动服务的条件,调用 setForeground 时可能会抛出 异常。
关于Service,想必大家都太熟悉了,今天我们就再回顾下它的使用、概念、区别、变更历史等等。
Resend是一个高效电子邮件发送平台,可保证直接发送到您的收件箱而不是垃圾邮件文件夹。Resend 拥有针对各种编程语言的不同 SDK,包括 PHP、Ruby、JavaScript、Go、Python 和 Elixir。Resend 还支持无服务器和 SMTP 发送电子邮件。
提供了最基础的底层功能,如向后兼容性、测试、开发语言Kotlin支持等。包含的组件库:
推送通知已成为构建移动应用时需要考虑的重要功能。由于它们类似于短信,但发送不需要任何费用,许多企业现在更喜欢使用推送通知向应用用户发送信息和警报。
低代码平台最大的一个技术特点便是开发图形化、可视化,通过拖拉拽方式快速实现企业数字化转型中的创新应用。在实践中通过图形化技术确实在一些特定领域大幅降低了应用开发的准入门槛,使得非专业人员也可以快速的参与到企业的数字化转型中。但随着业务的深入个性化需求也进一步增多,多数的低代码平台都无法满足相关的逻辑,这时仍然需要专业的程序员通过代码的方式来扩展。
今天凌晨 1 点,Google I/O 2018 大会拉开帷幕。通过皮查伊的一句:Make good things together,就知道这次大会绝对是一个情怀满满的大会。 从去年的 AI First 口号提出,今年大会依旧是 AI 占据主题,渗透到了各个产品当中,其实从 2016 年开始的大会 AI 就已经成为主角。来看看 AI 是如何渗透到各个产品当中的? Google Photos 你知道吗?每一天有超过 50 亿张的照片在 Google 相册中被查看。 Google 希望用 AI 带来的全新功能
在Android应用开发中,或多或少的会有后台任务的需求,根据需求场景的不同,Android为后台任务提供了多种不同的解决方案,如Service、Loader、JobScheduler和AlarmManger等。后台任务通常用在不需要用户感知的功能,并且后台任务执行完成后需要即时关闭任务回收资源,如果没有合理的使用这些API就会造成电量的大量消耗。为了解决Android电量大量消耗的问题,Android官方做了各种优化尝试,从Doze到app Standby,通过添加各种限制和管理应用程序进程来包装应用程序不会大量的消耗电量。
应用启动时间是应用性能的关键衡量指标。应用启动后,用户期望能够得到快速响应并加载内容,当不符合预期时用户会感到失望。这种糟糕的体验可能会导致用户在 Play 商店上对您的应用给予低分数的评价,甚至不会再次使用。
本文为 Android 电量管理系列连载的第四篇,希望可以为各位开发者提供设备续航方面的战略洞见和实践指南。
这是一个新的系列文章,我们称之为 "Modern Android Development 技巧",简称为 "MAD Skills"。本系列文章致力于帮助开发者们打造更好的现代 Android 开发体验,敬请关注。
最近两年,MVVM的呼声越来越高,说实话,在经历了MVP的臃肿,MVP的繁琐,我有点怕了。但是这次Google官方带来的一系列为MVVM架构设计的武器—Jetpack,真的让我惊喜到了。
作者 / Paris Hsu, Product & Design, Android
距离蘑菇博客上个版本更新已隔 4 月,最近在蘑菇稳定运行后提交了蘑菇博客 v6.1 ,主要有以下方面的更新
service一直被用来做后台运行的操作,包括一些保活,上传数据之类的,这个后台运行的弊端很多,比如耗电,比如设计用户隐私之类的,谷歌对这些后台行为进行了一些处理,从Android Oreo(API 26) 开始,如果一个应用的目标版本为Android 8.0,当它在某些不被允许创建后台服务的场景下,调用了Service的startService()方法,该方法会抛出IllegalStateException。并且出台了一些新政策:
作者 / Florina Muntenescu, Android Developer Advocate
早在2008年,Google 推出了Android ,但那个时候 Android 刚刚问世,经过这将近11年的发展和不断优化,Android 可以说逐渐变得成熟,方便和应用越来越广。 随着 Android 手机的市场保有量越来越多,APP的研发朝着愈发的简单化,易上手的方向发展。而 Google 也是站在这一个角度出发,如何快速得让一个研发人员开发出一款APP,也可以快速的添加新的开发人员。 现在在 Google 应用市场当中,大部分 APP 已经开始使用 Android Jetpack。通过 Android Jetpack 可以让我们的 BUG 减少,让我们把更多的精力放在打造应用本身。 为了这种模板式的开发,Google 在2018年推出了 Android Jetpack。接下来,我将会通过一系列的文章来介绍Android Jetpack,旨在希望了解、学习、应用Android Jetpack的小伙伴一个参考资料。
在近期完成的一系列 Modern Android Development (简称 MAD Skills) 的视频和文章中,我们重点关注了 Kotlin 和 Jetpack。我们介绍了多种不同的方法,让 Android 代码更具表现力、更简洁、更安全以及更易于使用 Kotlin 运行异步代码。
Android Studio 包含了许多像 布局检查器 和 数据库检查器 这样的检查器,来帮助您调查并了解应用在运行时的内部状态。在 Android Studio Arctic Fox 中,我们发布了一个新的检查器 (Background Task Inspector),用于帮助您监控和调试在应用中使用 WorkManager 2.5.0 或更高版本所调度的 Worker。
上篇文章 非侵入式获取Context进行SDK初始化 讲述了通过ContentProvider 进行 SDK 的初始化,文章末尾引出了 App Startup 。如果一个 app 依赖了很多需要初始化的 sdk ,如果都放在一个 ContentProvider 中会导致此 ContentProvider 代码数量增加。而如果每个sdk都采用同样的方式将会带来性能问题。App Startup可以有效解决这个问题。
LeakCanary 是我们非常熟悉内存泄漏检测工具,它能够帮助开发者非常高效便捷地检测 Android 中常见的内存泄漏。在各大厂自研的内存泄漏检测框架(如腾讯 Matrix 和快手 Koom)的帮助文档中,也会引述 LeakCanary 原理分析。
Google 为了帮助 Android 开发者更快更好地开发 App,推出了一系列组件,这些组件被打包成了一个整体,称作 Android Jetpack,它包含的组件如下图所示:
Android Jetpack 是一套帮助你轻松构建高质量应用,兼容旧版本系统的类库套件。在 Jetpack 发布两年之后的现在,我们已经看到了很多 app 的广泛采用,并且更多的开发者开始使用了。这只是一个开始:今天,我们将发布过去一年的工作成果,一些新的类库以及现有类库的重大更新。
当时,每一个工具都有一个URL,每个页面只有本工具的内容,没有统一的「导航栏」,这对于工具网站是非常不方便的。所以,我需要加一个统一的导航栏,方便用户在多个页面之间跳转。
链接:https://juejin.im/post/5ee4bbe4f265da76b559bdfe
本文转载自我的好基友老梁老司机,一文带你领略AAC的魅力。 Google 为了帮助 Android 开发者更快更好地开发 App,推出了一系列组件,这些组件被打包成了一个整体,称作 Android Jetpack,它包含的组件如下图所示:
本篇 React native 库列表不是从网上随便找的, 这些是我在我的应用中亲自使用的库。 这些库功能可能跟其它库也有,但经过大量研究并在我的程序中尝试后,我选择了这些库。
领取专属 10元无门槛券
手把手带您无忧上云