首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Kotlin中的协程及Android中的应用

Kotlin的一个协程可以理解为是运行在线程上的一个执行任务并且该任务可以不同的线程间切换,一个线程可以同时运行多个协程。...这意味着该协程的生命周期与应用程序的整个生命周期相关联,一般情况下不建议在生产代码中使用GlobalScope,因为它会使得协程的生命周期难于管理。...比如:网络请求,数据库操作,文件操作 Main:UI调度器,只有UI编程平台上有意义,用于更新UI,例如Android中的主线程 Unconfined:非受限调度器,无所谓调度器,当前协程可以运行在任意线程上...最常见的,网络请求IO线程,而页面更新主线程。 Kotlin给我们提供了一个顶层函数withContext用于改变协程的上下文并执行一段代码。...需要我们手动的调用Job的start、join或者await函数时才会开始调度。

15210
您找到你想要的搜索结果了吗?
是的
没有找到

又一巨头从 Java 迁移到 Kotlin

出品 | OSC开源社区(ID:oschina2013) Meta 发布了一篇博客表示,正在将其 Android 应用的 Java 代码迁移到 Kotlin,并分享了这一过程中的一些经验。...“因此,我们努力使我们的开发工作流程更加高效的过程中,将 Meta 的 Android 开发转向 Kotlin 是非常合理的......Kotlin 通常被认为是一种比 Java 更好的语言,在年度...以及领域特定语言 (DSL) / 类型安全构建器。...Facebook 软件工程师 Omer Strulovich 指出,Meta 旗下几个流行的 Android 应用 --Facebook、Instagram、Messenger、Portal 和 Quest...截至目前,Facebook、Messenger 和 Instagram 的 Android 应用程序都有超过 100 万行 Kotlin 代码,并且转换率正在提高。

46120

又一巨头从Java迁移到Kotlin:关键应用全部开始切换、安卓代码库超过千万行Kotlin代码

编译|燕珊,核子可乐 Meta 现在爱 Kotlin 多于 Java。 Facebook 母公司 Meta 正在将其 Android 应用的 Java 代码迁移到 Kotlin。...Kotlin 迁移大法 如今,Meta 旗下的 AndroidFacebook、Messenger 和 Instagram 应用都拥有超过百万行 Kotlin 代码,而且转换率也一路走高。...纵观整个 Android 代码库,其中的 Kotlin 代码量已经超过千万行。 起步阶段 事实上,尝试为现有应用程序引入 Kotlin 时,Meta 遇到了不少麻烦。... Java 重构方面,Meta 使用的是 JavaASTParser 工具,它能帮助解析某些类型。...元宇宙实践、LakeHouse 落地、金融科技、智能汽车、API 治理十余个热门技术专题,50+ 大厂专家技术案例现场分享,点击底部【阅读原文】直达大会官网,查看更多精彩内容。

66530

10 年 Android 开发者经验分享:如何从 0 到 1 开启职业生涯

现代 Anroid 应用程序和库都是用 Kotlin 编写的,尽管 Java 仍然使用,但主要是出于遗留原因。这两种语言非常相似,一个项目可以同时使用这两种语言。...除了 Java 和 Kotlin 之外,你也可以选择其他语言,如 C#、JavaScript 本文的后半部分,我们会简要地讨论一下。 2 如何学习 Anroid 开发?...具体来说: 构建并向世界发布一款真实的应用程序(即通过 Play Store)。 GitHub 上创建一个账号,并为开源软件做贡献。 通过博客和社交媒体分享在线学习经验。...(或者 Flutter、React Native 及其他类似的框架) 一家公司开发 Android 应用时,通常会开发同一应用的 iOS 版本。...为了节省精力和金钱,人们创造了新的技术,使用相同的代码库生成 Android 和 iOS 应用。诸如 Xamarin、Flutter 和 React Native 框架就是在这种情况下产生的。

1.1K30

Netflix 是如何实现 Android 与 iOS 共用一套代码?

Kotlin Multiplatform Kotlin Multiplatform允许我们iOS与Android应用程序的业务逻辑中使用同一套代码库。...您只需必要时编写特定于平台的代码即可,例如实现原生UI或者使用特定于平台的 API 时。 Kotlin Multiplatform 与以往各类知名跨平台移动开发技术有所区别。...我们的 Android 与 iOS 应用当中,近 50% 的生产代码与底层平台保持解耦。...这些表达式将配合当前应用会话上下文进行评估,并能够访问 A/B 测试分配、位置、设备属性数据。我们的用例中,具体配置范围包括生产可用性、版本以及特定区域应用功能集。...我们很高兴能够将 Studio 移动应用开发为具有共享业务逻辑的瘦 UI 层,后续我们还将不断与大家分享我们发展道路中的见闻心得。

1.5K30

2021移动应用发展趋势

1.增强和虚拟现实(AR和VR) Google发布ARCore和Apple发布ARKit之后,Android和iOS应用的开发势头开始变得强劲。...类似医疗保健,零售,教育和旅游行业中,对AR和VR应用程序的需求都在不断的增长。利用这些技术的移动应用程序可以创建增强的用户体验,从而帮助企业提高销售量。...谷歌、苹果和Facebook公司已经集成了基于人工智能的预测分析,以改善用户UX/UI上的体验。...原生应用 原生应用程序有两个单独的开发平台,其各自的编程语言为iOS的Objective-C或SWIFT,以及Android的JAVA或Kotlin。每个开发环境均提供自己独特的一套语言和API。...虽然特定的开发环境对特定的操作系统拥有对资源更高效的调配效率,可防止发生性能问题。但缺点也很显而易见,你的开发人员需要使用不同的开发语言构建两个独立的应用程序,这需要付出更多的时间、金钱和精力。

2.6K30

面向初学者的 Android 应用开发基础知识

应用程序是称为Android Studio 的应用程序上开发的。这些可执行应用程序通过称为APK(Android Package Kit)的包或包安装。 安卓基础 1....Android 编程语言 Android 中,基本上,编程是用两种语言JAVA 或 C++和XML(扩展标记语言)完成的。如今,KOTLIN 也是首选。...XML 文件处理设计、演示、布局、蓝图(作为前端),而 JAVA 或 KOTLIN 处理按钮、变量、存储的工作(作为后端)。 2.安卓组件 App 组件是 Android 的构建块。...一个服务可能需要其他子服务来执行特定的任务。服务的主要目的是不中断与用户的任何交互的情况下提供应用程序的不间断工作。...它描述了有关应用程序和 Android 构建工具、Android 操作系统和 Google Play 的基本信息。它包含应用程序执行特定任务可能需要的权限。

1.1K20

Kotlin 和 Jetpack 视频合集 | MAD Skills

近期完成的一系列 Modern Android Development (简称 MAD Skills) 的视频和文章中,我们重点关注了 Kotlin 和 Jetpack。...您可以观看下面 6 个视频,提升您对 Kotlin 和 Jetpack 的了解。每一集都涵盖一组特定 API,既讲述了如何使用 API,也展示了 API 的工作原理。...优先使用 KTX 库 本视频中,我们探讨了如何通过 Jetpack KTX 扩展 使 Android 和 Jetpack 编码变得轻松、愉悦且符合 Kotlin 习惯。...这一集涵盖了一些最重要的库: core-ktx,它为来自 Android 平台的 API 提供了常用 Kotlin 功能,另外还有一些 Jetpack KTX 库,让我们使用 LiveData 和 ViewModel...社区分享 本视频中,Magda Miu - Android 的 GDE 分享了她结合使用基础 Kotlin API 与 CameraX 的经验。您可以 点击这里 观看视频。

72720

使用 kotlin 写第一个 ReactNative Android 模块

最佳的使用 Kotlin 快速开始写Android模块的方式 react-native init AwesomeProject 生成的 android 目录,是一个标准的 Android Studio...23.0.1) 不一致,所以根据 RN 文档,改配置,会遇到各种问题.如果非要模拟,建议直接基于 AwesomeProject/android 这个项目改....改淘宝源,可以加快速度,但是每次安装还是需要 20~40 分钟(取决于网络环境).如果本地再起一个 sinopia ,这样第二次初始化 RN 时,只需要 3 ~ 5 分钟.详见: https://github.com...一类的错误,又必须解决的话,可以尝试查看依赖关系,看到底是哪里冲突: 命令是: ....执行 react-native run-android 可能比 Android Studio 中运行方便;但是第二次执行原生 Android 代码时, Android Studio Run Build

1.5K110

您的 MAD 得分是多少?| MAD Skills

今天,我们将推出 MAD 计分卡,从您使用的 Jetpack 库的数量,到使用 Kotlin 编写的应用所占的百分比,通过这些指标展示您作为 Android 开发者的 "时髦" (modern) 程度。...您的 MAD 计分卡将通过 Android Studio 为您带来实用信息,例如通过 Android App Bundle 打包方式,能将您的应用大小缩减多少。...它会对各种关键的 MAD 技术进行重点介绍,包括您可以使用的特定 Jetpack 库和 Kotlin 功能。...MAD 计分卡获取方法 新版 Android Studio 插件支持个性化展示您的 MAD 分数,以下是获取和分享计分卡的方法: 第 1 步,安装插件: Android Studio 的插件市场中搜索并下载...您可以观看我们诸如 Material Design 组件、App Bundle 以及 导航 早期主题,也可以前往我们的 Android Developers YouTube 频道 了解后续主题。

69020

谷歌酝酿Swift作为安卓APP开发语言

最新外媒消息称,谷歌正在考虑将苹果开发的Swift作为未来安卓软件开发的“一级”语言,此外Facebook、Uber公司也开始越来越重视Swift的使用。 ?...不过和Swift不同的是,Kotlin能够谷歌提供的安卓开发工具“Android Studio”中。 不过,消息人士透露,谷歌相关团队目前认为Kotlin语言进行编译时,速度有些慢。...Kotlin语言被认为能够应用于任何Java语言运行的环境中,另外一些开发项目也能够无缝支持混合使用Kotlin语言和Java。...Facebook已经开始使用Swift进行开发。最近在开源项目存放服务Github上,出现了一个名为“Port to Android”的项目,由Facebook的员工开发。...Uber开发中也存在大量的服务端、开发接口,不过竞争对手Lyft使用Swift,给Uber提供了一个参考的榜样。 何时会采用Swift?

2.8K70

聚焦 Android 11: 大功告成

官方文档: Twitter 团队案例分享 官方文档: Facebook 团队案例分享 您可以通过 "联系人与身份" 学习计划、视频列表 以及 往期文章 了解更多信息。...开发语言 我们 Android 11 中正式推荐以协程 (coroutines) 处理异步工作,进一步改善了 Kotlin  Android 上的开发者体验。...如果您还不熟悉 协程 ,请查看以下资源: Android & 协程: 如何使用 Kotlin 管理异步任务 协程学习计划 新的协程开发者指南 您还可以全新 Kotlin  开发者故事 获取最新的案例分析和数据...Android 开发者工具 近期我们分享了 Android 开发者工具的最新动态,以及 设计工具的最近更新,您可以通过观看视频进一步了解: 以下还有两篇与设计工具相关的深度分享: Android Studio...Android TV 应用,甚至深入研究 Cast Connect 和 无缝式订阅 新集成。

2K30

谷歌社区说|聊聊Compose跨平台与KMM

大家好我是黄林晴,也是图书《Android Jetpack开发:原理解析与应用实战》的作者。...上一次社区分享还是在三年前的Android 11见面会上,本次为大家分享的主题是Compose Multiplatform和KMM。这里是本次分享的文字版。...通过KMM,开发者可以 iOS 、 Android、Desktop与Web 应用程序之间共享业务逻辑的通用代码,必要时也可以编写特定于平台的代码。所以,KMM只负责跨平台下的业务逻辑部分。...跨平台框架,专注于UI跨平台,同样支持iOS、Android、Web、Desktop。...中可以通过使用 UIKitView,共享用户界面中嵌入复杂的特定于平台的小部件,如地图、 Web 视图、媒体播放器和照相机

67210

干货 | 实现一个属于你的“语言”-携程Kotlin DSL开发与实践

每一个DSL,都是一定意义上专有的语言,这篇文章希望能够用浅显易懂的方式,将Kotlin DSL的应用与实践经验分享给大家。希望对你有所启发,能够构建一门属于自己的专有“语言”。...内部DSL:通常是基于通用编程语言实现,具有特定的风格,如 iOS 的依赖管理组件 CocoaPods 和 Android 的主流编译工具 Gradle。...这里主要分享Kotlin中构建使用DSL。 二、应用 Kotlin DSL的应用广泛,包括gradle编写、编写js、html、SQL。...Android布局时,我们都习惯性的使用XML进行编写,但是可以考虑丢下冗长的XML写法,尝试使用Anko Layout来实现。...kotlin的扩展函数、高阶函数、lambda表达式、中缀调用、invoke 约定和函数小括号省略特性,使得Kotlin编写DSL尤为顺畅,我们可以使用这些特性来实现自己的“领域特定语言”。

1.6K10

TIOBE 新榜单:Python 超越 Java 重回第二,Rust 崛起

面对市场份额一直缩减的 Java,轻芒联合创始人、前豌豆荚技术负责人范怀宇《2020-2021开发者大调查》中剖析道,“Kotlin 虽然统计中总的比例不高,但在 Android 开发上进一步取代...Kotlin 作为另一个基于 JVM 的编程语言,一方面可以保持 Java 使用 JVM 稳定和高性能的好处,享用 JVM 已有的生态;另一方面,通过其更为灵活的语法特性,越来越广泛地被 Android...开发者使用,已然成为 Android 的首选编程语言,对于新参与 Android 的开发者而言,Kotlin 是更好的学习对象。”...凭借安全、高性能、可靠性和高生产率特性,AWS 众多产品中应用 Rust 的同时,不惜花重金聘用 Rust 编译器联合创始人 Felix Klock 来加码 Rust 的应用;Google 将其应用到了...这个排行榜可以用来考察你的编程技能是否与时俱进,也可以开发新系统时作为一个语言选择依据。 hon 快速入门生成模型点分享点收藏点点赞点在看

51830

使用 Kotlin Symbol Processing 1.0 缩短 Kotlin 构建时间

如果您正期待着应用该工具,那现在是时候去尝试了。 为何要构建 KSP Android 团队中,我们经常会向开发者提出这样一个问题: 就现阶段而言,开发应用时遇到的最大痛点是什么?...多年来,我们一直稳步优化 Android 构建工具链,现在我们非常高兴能够通过 KSP 来实现这些优化。...KSP 还解锁了如生成 Kotlin 代码全新可能性,这让 Room 将来会有更棒的 Kotlin 用户体验。...此举大幅提升了构建速度 (对于 Room 的 Kotlin 测试应用 而言速度提高了 2 倍),同时也意味着 KSP 可以Android 以及非 JVM 环境 (如 Kotlin/Native 和...同时,我们也更新了一些特定Android 库,您可以立即尝试,体验改进后的强大性能。也欢迎您持续关注官方微信公众账号,随时获取最新资讯。

3.7K10

Android开发技能图谱

同时,我们还将分享一些相关的扩展阅读文章,帮助读者更深入地了解这些知识点。 一、编程语言与开发环境 1.1 Java/Kotlin编程 Java是Android开发的基础语言。...然而,Google现在推荐使用Kotlin进行Android开发,因为Kotlin更现代,更简洁,且更安全。不论我们选择哪种语言,都需要熟练掌握它的语法、类库和开发工具。...Android开发中,可以使用Dagger2、Koin或Hilt依赖注入框架来实现依赖注入。这些框架有助于提高代码的可测试性和可维护性。...在编写跨平台的C++代码时,你需要注意避免使用特定平台的API和特性,以保证代码的可移植性。同时,你也需要考虑到不同平台的字节序、整数大小和对齐要求等差异,以确保代码不同平台上的正确性和性能。...七、后台基础知识 虽然Android开发主要关注移动设备上的应用开发,但是很多应用都需要与服务器进行交互,因此对后台的一些基础知识也有一定的了解是非常必要的。

2710

Java失宠,谷歌宣布Kotlin现在是Android开发的首选语言

今日凌晨的 Google I/O 大会上,Google 官方正式宣布,Kotlin 编程语言现在是 Android 应用程序开发人员的首选语言。...一些特定场景下,许多 Java 开发者因为某些方面的问题选择了切换到 Kotlin:比如受够了 Java NullPointerException 的人都喜欢 Kotlin 的 Null 安全特性;扩展函数被大量使用...其二,若干了领域都有很强的竞争力,比如服务端编程,高性能网络程序,企业软件事务处理,分布式计算,Android 移动终端应用开发等等。...小结 本人Java开发4年Android开发5年,定期分享Android高级技术及经验分享,欢迎大家关注~(分享内容包括不限于高级UI、性能优化、架构师课程、NDK、混合式开发(ReactNative+...Weex)微信小程序、Flutter全方面的Android进阶实践技术;希望能帮助到大家,也节省大家在网上搜索资料的时间来学习,也可以分享动态给身边好友一起学习!)

99620

Kotlin 视频课程系列一:《零基础学习 Kotlin 编程》

领域特定编程语言) 12.并发编程之:协程 系列课程二:《Kotlin Android 项目实战开发》 快速开始 HelloWorld 使用 Kotlin 开发一个计算器 图片浏览播放程序案例 音乐播放器程序案例...视频播放器程序案例 相机程序案例 Android网络应用开发案例 地图Map服务案例 电商系统 APP 案例 系列课程三:《Kotlin Spring Boot 企业级服务开发实战》 Spring Boot...降低效率 每次都是开会扯皮 看得多 练得少 找不到方向 提升慢。 要想持续提升!! 就必须彻底解决这五大难题!!! 讲师简介: 陈光剑,Kotlin 布道师,阿里巴巴资深测试开发。...参与过多种平台工具的开发,具有丰富的平台开发经验,操练过 Kotlin、Java、Android、Scala、Groovy 、Node、React 语言框架进行领域建模、架构设计、工具开发,对 Kotlin...在工作中积累了大量的技术经验,善于总结,乐于分享,发布过大量技术文章。著有《Kotlin 极简教程》、《Spring Boot 2.0 极简教程》、《Kotlin 从入门到进阶实战》技术畅销书籍。

62230
领券