今天开始认真学习安卓开发( ),我就打算直接使用 Kotlin 语言在 AS 3.0 中写代码,简洁又高效。...另外,在我后来 Windows 10 上使用 AS 3.0 时并没有出现这些 Gradle 相关的问题,构建一切正常!...我采用的是直接在 Android Studio 3.0 预览版中单独设置 Gradle 的工作路径。在设置中: Android Studio->Preferences......模拟器 Genymotion 连接调试 这是个小问题,新手的话有必要提醒一下。如果不能正常连接 Genymotion 的模拟器,需要在模拟器中设置 SDK 为 Android SDK 。...三、总结 Gradle 还是很神奇的,目前它使用的 Groovy 语言,同时 Kotlin 语言版的 Gradle 也在进行中: gradle-script-kotlin ,现在也有预览版可以尝鲜,我也正在尝试使用
要尝试使用示例数据,请将其添加 RecyclerView 到新布局,单击设计视图下方的设计时属性按钮 ,然后从样本数据模板轮播中选择一个选择。...当您在运行Android 8.0(API 26)或更高版本的连接设备或Android模拟器上运行应用程序时,Energy Profiler会显示为Profiler窗口底部的新行。...Lint检查 Lint会检查Java / Kotlin的互操作性 为了确保您的Java代码与Kotlin代码良好的互操作性,新的lint检查会执行Kotlin Interop Guide中描述的最佳实践...在cpp 目录中,位于应用程序项目范围内的所有头文件都将在每个本地C / C ++库依赖项的include节点下进行组织。...模拟器的改进 您现在可以随时在Android模拟器中保存并加载AVD(Android虚拟设备)的快照,从而可以快速轻松地将模拟设备返回到已知状态进行测试。
模拟器 现在用户可以直接在 Android Studio 运行 Android 模拟器,该功能可以帮助开发者节省屏幕空间,使用快捷按键可以在模拟器和编辑器窗口之间快速导航,可以在一个窗口中查看模拟器和代码布局...例如,单击图片 使用给定类型的方法旁边的装订线操作可导航到该类型的提供程序;相反单击 ? 装订线操作会导航到将类型用作依赖项的位置。...Kotlin 1.3.72 Android Studio 4.1 捆绑了Kotlin 1.3.72,其中包括许多用于改善Kotlin高亮显示,检查和代码完成的修复程序,请查看1.3.72 Kotlin更改日志获取详细信息...类),Android Studio现在向您显示自定义视图的预览,使用工具栏中的下拉菜单可在多个自定义视图之间切换,或单击按钮以垂直或水平环绕内容。...Apply Changes 为了在迭代应用程序时提高工作效率,Google 对运行Android 11 Developer Preview 3或更高版本的设备的“Apply Changes”进行了以下增强
可以在导入过程中通过在资源上方的文本框中单击来重命名资源。...要将“模拟器”位置设置在地图上选择的位置,请单击 Extended controls 窗口右下角附近的“ 设置位置”按钮 。 ?...3.在 Secondary displays 菜单中,执行以下一项操作: a.选择一种预设的宽高比 b.选择自定义并为自定义显示设置高度,宽度和dpi。 4....请记住,当IDE跳过构建任务列表时,Gradle面板中的任务列表为空,并且构建文件中的任务名称自动完成不起作用。...这些键盘快捷键可能无法在Android Studio中正常工作。 2. Chrome操作系统上的小界面文字 在Chrome操作系统上,文本看起来可能比以前的版本小得多。
您能够在 2 秒内恢复或引导到您的模拟器快照。对于任何一位寻求超快引导时间或寻求在一个预期的 Android 环境中运行测试的应用开发者而言,Android 模拟器快照都是应用开发的一项革命性功能。...通过 “布局编辑器” 中的一个弹出窗口,您可以为各种视图添加内置样本数据,如 RecyclerView、ImageView 和 TextView。...Desugaring允许您通过在构建过程中将新字节码和语言 API 替换为旧版,从而在较旧的设备上使用这些特性。...△ Android 模拟器 Snapshots Microsoft® Hyper-V™ 支持 - 现在您可以在 Windows® 10 启用了 Hyper-V 的电脑上运行 Android 模拟器。...过去,受 Android 模拟器支持的限制,物理 Android 设备上的录屏只能在 Android 4.4 KitKat (API 19) 及以上进行,且没有音频。
前面在介绍列表视图和网格视图时,它们的适配器代码都存在视图持有者ViewHolder,因为Android对列表类视图提供了回收机制,如果某些列表项在屏幕上看不到了,则系统会自动回收相应的视图对象。...开发者继承RecyclerView.Adapter之后,只要完成业务上的代码逻辑即可,无需进行BaseAdapter视图持有者的手工重用。...为方便理解循环适配器的Kotlin编码,下面以微信的公众号消息列表为例,给出对应的消息列表Kotlin代码: //ViewHolder在构造时初始化布局中的控件对象 class RecyclerLinearAdapter...onItemLongClick(v, position) true } } //ItemHolder中的属性在构造时初始化 inner...这下不管是在Activity代码,还是在适配器代码中,均可将控件名称拿来直接调用了。
}) { apk -> AppInfoItem(apk) {} } } 原生 RecyclerView val rv = findViewById(...DiffUtil.ItemCallback() { ... } // 4、xml 部分代码 2、直观 Compose 使用声明式 API,可以显示声明组件与状态,并且可以很直观的查看状态在组件上的流转...上面的代码段就是采用 lambda 延迟到 Greeting 方法来读取 state.value 值,将重组限制在 Greeting 这个可组合项的作用域中。...kapt Kotlin 插件的工作过程(图来自朱涛老师文章) 5.1 Compose 版本最佳配置: // project build.gradle buildscript { ext.kotlin_version...不过话也说回来,Jetpack Compose 容器依然是一个 ViewGroup,没有脱离原生 View 体系,我觉得,问题应该不会太大,最多就是代码使用不当,重组作用域扩大,导致页面卡顿,但这种在开发期间是可以通过调试和监控可发现的
2.2、安装配置 DevEco Studio 2.2.1、官网开发工具下载地址 在HarmonyOS应用开发学习之前,需要进行一些准备工作,首先需要完成开发工具DevEco Studio的下载与安装以及环境配置...单击‘Next’进入配置预览页,在这里进行配置项的确认。 确认完成后,单击'Next',进入下一步。...模拟器启动后界面如下: 模拟器启动后,点击上方启动按钮,将Hello World工程运行到模拟器上。...IDE构建完成后,即可在模拟器上看到运行效果,我们也就完成了Hello World工程在模拟器上的运行。...对于abilities中每一个ability的属性项,其描述信息如下表2。
NDK 特性,以前在 Java 中支持,现在在 Kotlin 也支持: 从 JNI 声明跳转到 C/C++ 中相应的实现函数。...通过将鼠标悬停在源代码文件中靠近行号的 C/C++ 项标记上来查看函数的映射 为 JNI 声明自动创建一个 stub 实现函数。...而且单个一个位置还可以保存并重新作为虚拟位置发送到模拟器,路线导航也可以通过输入地址或单击两个点来生成。这些路线导航可以可以实时回放,路线导航沿线的位置信息也会被发回到模拟器的系统内。 ?...随着越来越多的设备可以使用多个屏幕,在多种屏幕配置上测试你的应用程序是非常重要的。可以通过设置菜单(扩展控件设置)配置多个屏幕。 ? ?...在 DEX 文件查看器中,加载正在分析的 APK 的 ProGuard 映射文件。 加载后,就可以通过右键单击要检查的类或方法,然后选择 Show Bytecode 来去除混淆。 ?
mytodoapplication └── ExampleUnitTest.java 28 directories, 21 files 我们直接在Android 模拟器中...在构建脚本中添加kotlin-gradle-plugin依赖,使用 Kotlin 对应的版本号。...:0.9.12' // 在jitpack.io上 其中,Realm是一个轻量级的跨平台移动数据库引。...例如,在 Java 中我们可以通过在字段上使用 @BindView 来替代 findViewById 的调用。...这个插件是建立在ButterKnife 7的基础上的。 下面我们配置一下在 Kotlin 中使用 Butter Knife 的依赖库 KotterKnife。
△ 通过更换 RecyclerView 的 LayoutManager 来改变其展现形式 主页横幅 我们还可以改变单项布局,使某些项比其他项更高或更宽,以此凸显其重要性,打造更有趣的视觉效果。...△ 大屏设备中的用户操作热区 同时,我们还需要考虑铰链位置对交互的影响。铰链会带来明显的触觉差异,甚至两个屏幕会存在物理分离。因此,请您避免将按钮和其他重要操作项直接放在铰链区域。...在 多窗口模式 下,您的应用可以与其他应用并排使用,除了响应式调整之外,还可以考虑如何让应用在这种模式下发挥更大作用,比如支持拖拽等。这种小功能可以提高用户的工作效率,用户便更乐意使用您的应用。...在如此多样化的硬件生态系统中,您可能很难拥有各种形状和尺寸的设备,如今 Android SDK 为可折叠设备提供了模拟器图像,这些模拟器允许您随时将折叠状态更改为铰链的角度。...△ Android Studio Chipmunk 中的可调整尺寸的模拟器 我们也一直在 Android Studio 中开发新工具,希望为大家开发大屏幕应用提供支持。
kotlin-android-extensions插件可能算得上是我最喜欢的一个Kotlin在Android上的特性了。...然而它被废弃了 其实早在几个月前,就有朋友在公众号上询问我,说自己升级了Android Studio 4.1之后,发现新建项目的时候Android Studio已经不会自动帮我们引入kotlin-android-extensions...还有,虽然HashMap是一种O(1)时间复杂度的数据结构,但这毕竟只是理论上的时间复杂度,实际调用肯定是没有直接访问控件实例快的,因此kotlin-android-extensions插件也在无形当中降低了程序的运行效率...同时也算是一个隐藏的“坑”,因为如果你不去将Kotlin代码进行反编译,可能都不知道自己的ViewHolder其实根本就没有起到任何作用。...好了,这大概就是关于ViewBinding的所有内容了,至少我已经想不出还有什么更多的用法,相信本篇文章也足以将你工作中可能遇到的ViewBinding相关的问题全部覆盖到。
通过这种方式能够达到不同module中的配置统一,但局限性是,一但配置项过多,所有的配置都将写到rootProject项目的build.gradle中,导致build.gradle臃肿。...作用接下来我们需要做的是将ext配置单独放到一个gradle脚本文件中。 首先我们在rootProject目录下创建一个gradle脚本文件,我这里取名为version.gradle。...Gradle项目会默认识别buildSrc目录,并且会将该目录中的配置注入到build.gradle中,以至于让build.gradle能够直接引用buildSrc中的配置项。...首先在根目录新建一个buildSrc目录(与app同级),然后在该目录新建src/main/java目录,该目录是你之后配置项所在的目录;同时再新建build.gradle.kts文件,并在该文件中添加...搭建好了目录,现在我们在src/main/java下使用kotlin新建Dependencies文件(文件名任意),在该文件中将之前的配置项放进来,只是使用kotlin语法进行实现而已,转化的代码如下
第二个类型表示每一项数据(注意不是每一页)所对应的对象类型,这里使用刚才定义的Repo。 然后在load()函数当中,先通过params参数得到key,这个key就是代表着当前的页数。...我无法在这里展开解释Flow是什么,你可以简单将它理解成协程中对标RxJava的一项技术。...但是这里又额外调用了一个cachedIn()函数,这是用于将服务器返回的数据在viewModelScope这个作用域内进行缓存,假如手机横竖屏发生了旋转导致Activity重新创建,Paging 3就可以直接读取缓存中的数据...不过由于collect()函数是一个挂起函数,只有在协程作用域中才能调用它,因此这里又调用了lifecycleScope.launch()函数来启动一个协程。...在底部显示加载状态 根据Paging 3的设计,其实我们理论上是不应该在底部看到加载状态的。
我们希望所有这些功能可以帮助您在 Android 上开发时更快乐、更高效。 感谢在预览版中提供早期反馈的用户。您的反馈帮助我们迭代和改进 Android Studio 3.6 中的功能。...,现在 Kotlin 也支持: 从 JNI 声明导航到 C/C++ 中的相应实现函数。...我们在扩展控件菜单中嵌入了 Google 地图用户界面,以便更轻松地指定位置,并构建来自位置对的路由。可以保存单个点并将其重新发送到设备作为虚拟位置,而路由可以通过键入地址或单击两个点来生成。...多屏支持 模拟器 29.1.10 包括对多个虚拟显示器的初步支持。由于有更多的设备具有多个显示器,因此在各种多显示器配置上测试应用非常重要。用户可以通过设置菜单(扩展控件和设置)配置多个显示器。...下载 导入的APK的就地更新 优化 内存探查器中的泄漏检测 在APK分析器中反混淆类和方法字节码 将Kotlin来源附加到导入的APK Getting Started 下载 从下载页面下载 Android
Kotlin 和 Java 编程语言均在 ART (Android 运行时) 上执行,但 C++ 则与它们不同,Android 应用中的所有 C++ 指令会直接编译为机器指令,也就是说,目标设备的平台架构决定着...过去,开发者需要通过模拟器镜系统映像搭建一个完整的 ARM 环境,才能绕过这个限制并在 x86 机器上执行 ARM 应用。...使用 Android Virtual Device Manager 创建一个运行 Android 11 的 AVD 一旦应用在模拟器中成功运行后,请考虑适配 Chrome OS。...Chrome OS 同样也支持在 x86 笔记本上执行 ARM 版本的 Android 应用。...这项技术可以帮助更多开发者在 Android 模拟器上进行测试。我们建议开发者同时构建 x86 和 ARM ABI 两个版本的应用,使其在物理设备上拥有最佳的运行性能并吸引尽可能多的用户。
你可以检查并单击每个问题,以在右侧面板中调查其详细信息。...其次,对 CPU Profiler UI 进行了全面改进,以提供更直观的工作流程,其中 UI的一些显着更改包括: CPU记录与主探查器时间轴分开了以便于分析,记录的数据在 Profiler 窗口的左侧按组分布...Flame Chart,Top Down 和 Bottom Up 分析的选项卡现在位于右侧列中,在 Threads 组中,对于系统跟踪记录线程会自动展开,对于其他记录类型默认情况下会折叠起,在线程名称上双击...有关可用实时模板的完整列表,请从菜单栏中单击 File > Settings(或在macOS上为 Android Studio > Preferences ),然后导航 Editor > Live...八、在 Android 模拟器中扩展了相机支持 使用Android 11图像时,Android Emulator相机包括以下新功能: RAW拍摄 YUV后处理 Level 3 devices 逻辑相机支持
前言 最近断断续续地把项目的界面部分的代码由JAva改成了Kotlin编写,并且如果应用了kotlin-android-extensions插件,一个显而易见的好处是再也不用写 findViewById...()来实例化你的控件对象了,直接操作你在布局文件里的id即可,这一点我感觉比butterknife做的还简洁友好。...建议在onViewCreated()方法里使用。...因为这一功能是实现性质的,默认关闭,我们需要手动打开,在build.gradle中开启: androidExtensions { experimental = true } 然后再recycler.adapter..._$_findViewCache.clear(); } } } 总结 以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对
在 Kotlin 1.4.0 中,我们发布了几项正在进行的工作: 更强大的新类型推理算法默认启用。它可以在更多用例中自动推理类型,即使在复杂的场景下也支持智能转换,改进了委托属性的推理,等等。...我们在 KotlinConf 上承诺进行一些重要改进,在此很高兴地报告我们的工作成果: 得益于分层项目结构,您现在可以在目标的特定子集(例如类似的 iOS ARM64 设备目标和 x64 模拟器目标)之间共享代码...您可以使用在多个原生目标之间共享的通用代码中与平台相关的库。 您可以在共享源集中仅指定一次依赖项,而不是在共享和平台专用源集中同一库的不同变体上指定依赖项。...我们正在开发 Android Studio 插件,此插件可在 iOS 设备和模拟器上运行、测试和调试 Kotlin 代码。首个公开预览版将很快发布,敬请关注。...立即开始使用 Kotlin 1.4 和往常一样,您可以在 play.kotl.in 上在线试用 Kotlin。 在 Gradle 和 Maven 中,使用 1.4.0 作为编译器版本。
[1240] 使用起来极为便捷,只需在 build.gradle 中引入依赖: dependencies { LeakCanary 会自动检测 debug build 中的内存泄露,并显示提示。...GitHub 仓库:afollestad/material-dialogs CalendarView 基于 RecyclerView 的日历库。...官网:ktlint.github.io mockk Kotlin 的 mock 测试库,不仅支持常规的单元测试,还支持在真机或模拟器上运行的 instrumented 测试。...上个月,Mozilla 在 Google Player 上发布了公测版(仅向报名测试的人员开放下载)。...但是几款 Android 组件库均使用 Kotlin 编写(本文选取项目时仅考虑 GitHub 上的热度(蹿升速度),不考虑编写语言为 Java 还是 Kotlin),Firefox 下一代浏览器基于
领取专属 10元无门槛券
手把手带您无忧上云