解决克隆 Kotlin 应用程序在 Android Studio 中缺少运行配置的问题
Posted
技术标签:
【中文标题】解决克隆 Kotlin 应用程序在 Android Studio 中缺少运行配置的问题【英文标题】:Solving missing run configuration in Android Studio for cloned Kotlin app 【发布时间】:2019-10-29 11:28:30 【问题描述】:我有 android Studio 3.4 并克隆了一个基于 Kotlin 的应用程序 (Voice) 的 github 存储库。这个问题的主题可能也会在其他存储库中找到等价物。
从 Android Studio 完成的克隆会识别存储库中的 Gradle 构建信息,当出现提示时,我采用了与将项目加载到 IDE 相关联的默认设置。
您已签出一个 Android Studio 项目文件: C:\Users\Owner\AndroidStudioProjects\VoiceC\build.gradle.kts 要打开它吗?
组模块:
using qualified names
Use default gradle wrapper (recommended)
Gradle 主页:
%AndroidStudioLocation%/gradle/gradle-3.2
项目格式:
.idea
我收到BUILD SUCCESSFUL
。
通常,在构建完成后,在我克隆的其他项目中,我可以点击Run Selected Configuration
,然后使用 adb 将 APK 加载到我的设备中。但是在这种情况下,在构建之后,没有Run/Debug Configurations
。
Android 应用模板
我已经使用Run
> Run...
> Edit Configurations
创建了一个运行配置,然后使用了Android App
模板,但是当我尝试运行它时,我在 adb Select Deployment Target
窗口中看到了这个:
(设备支持,但APK只支持armeabi-v7a、x86_64、arm64-v8a、x86)
由于我能够将其他 APK 加载到设备上,我认为设备上的基本配置必须已经正确,似乎只是 Android Studio 中的这个项目有问题。
但是使用这个answer,它让我关闭了设备上的USB调试,然后再次打开,我能够让设备正常显示:
摩托罗拉 Moto G (5) Plus(Android 8.1.0,API 27)
另一条线索将我引向 Build Variant,但菜单项 Build
> Select Build Variant
未启用,因此我无法在那里执行任何操作。
Kotlin 模板
我也尝试配置 Kotlin
和 Kotlin script
运行配置,但不清楚如何配置它们以使它们执行过去的经验中“正常工作”的操作(即运行配置不知何故已在项目中定义,无需我进行任何配置)。
问题:
如何使用 Android Studio 运行配置在我的设备上运行此应用程序?IDE 详细信息:Android Studio 3.4 构建 #AI-183.5429.30.34.5452501,构建于 2019 年 4 月 9 日 JRE:1.8.0_152-release-1343-b01 amd64 JVM:JetBrains s.r.o 的 OpenJDK 64 位服务器 VM 视窗 7 6.1
编辑 - 附加信息:
由于构建成功完成,我可以从命令行运行,当前目录设置为 *.apk 文件的位置:C:\Users\Owner\AppData\Local\\Android\sdk\platform-tools\adb.exe install app-opensource-debug.apk
这种方法的问题是必须手动从设备中删除应用程序,然后才能工作。这意味着应用程序的任何配置都将丢失。它也需要更长的时间,因为它没有利用 IDE 运行构建步骤子集的能力(对于在它们之间进行微小更改的重复构建 - 无论该功能被称为什么)。由于这些原因,获得有效的运行配置会更方便。
【问题讨论】:
【参考方案1】:带有 app:assembleDebug 的 Android 应用模板
在Android Studio项目中,选择Run
> Edit Configurations...
点击+
并选择Android App
。
这将为您提供一个名为 Unnamed 的配置。您可以使用更具描述性的名称来改写该名称,例如 app。
在对话框底部附近有一个Before launch...
部分。那里的默认条目是Gradle-aware Make
。双击该项目。这将带来Select Gradle Task
。
输入app:assembleDebug
现在您应该能够Run
> Run 'app'
选择您的部署目标,项目应该构建,应用程序应该在您选择的设备上运行。
【讨论】:
以上是关于解决克隆 Kotlin 应用程序在 Android Studio 中缺少运行配置的问题的主要内容,如果未能解决你的问题,请参考以下文章
未解决的参考匕首 2 + kotlin + android gradle
Android Studio:无法获取未知属性“kotlin_version”
未解决的参考:viewModelScope - Kotlin Android