错误:当前项目不支持运行配置应用程序。无法获取应用ID

2024-04-25

每次我在 Android Studio 中打开项目时,都会出现此错误:

Error: Run configuration app is not supported in the current project. Cannot obtain the application ID.

当我点击Sync project with Gradle Files,同步过程后,此错误消失。However当我重新打开项目或重新启动Android Studio时,再次出现此错误。

I know Sync project with Gradle Files可以做到这一点,但我不想每次打开项目时都这样做,我尝试降级 Android Studio,但它似乎不起作用。

我的环境:

  • Android Studio 海豚 | 2021年3月1日
  • 摇篮7.5.1
  • Android Gradle 插件 7.3.0

有趣的是,每次启动 Android Studio 时,都会弹出 IDE 错误:

java.lang.IllegalStateException: Cannot find root module data: xxxx-xxxx
    at com.android.tools.idea.gradle.project.sync.idea.VariantSwitcher.getAndroidModules(VariantSwitcher.kt:248)
    at com.android.tools.idea.gradle.project.sync.idea.VariantSwitcher.getSelectedVariants(VariantSwitcher.kt:261)
    at com.android.tools.idea.gradle.project.sync.idea.VariantSwitcher.findAndSetupSelectedCachedVariantData(VariantSwitcher.kt:128)
    at com.android.tools.idea.gradle.project.AndroidGradleProjectStartupActivityKt.attachCachedModelsOrTriggerSync(AndroidGradleProjectStartupActivity.kt:198)
    at com.android.tools.idea.gradle.project.AndroidGradleProjectStartupActivityKt.access$attachCachedModelsOrTriggerSync(AndroidGradleProjectStartupActivity.kt:1)
    at com.android.tools.idea.gradle.project.AndroidGradleProjectStartupActivity.runActivity(AndroidGradleProjectStartupActivity.kt:105)
    at com.intellij.ide.startup.impl.StartupManagerImpl.runStartupActivity(StartupManagerImpl.kt:312)
    at com.intellij.ide.startup.impl.StartupManagerImpl.runActivityAndMeasureDuration(StartupManagerImpl.kt:293)
    at com.intellij.ide.startup.impl.StartupManagerImpl.runActivityAndMeasureDuration$default(StartupManagerImpl.kt:288)
    at com.intellij.ide.startup.impl.StartupManagerImpl$runPostStartupActivities$1$2.run(StartupManagerImpl.kt:256)
    at com.intellij.openapi.project.DumbServiceImpl.doRun(DumbServiceImpl.java:395)
    at com.intellij.openapi.project.DumbServiceImpl.updateFinished(DumbServiceImpl.java:387)
    at com.intellij.openapi.project.TrackedEdtActivityService$TrackedEdtActivity.run(TrackedEdtActivityService.java:66)
    at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:214)
    at com.intellij.openapi.application.TransactionGuardImpl.access$200(TransactionGuardImpl.java:21)
    at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:196)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
    at com.intellij.openapi.application.impl.ApplicationImpl.lambda$invokeLater$4(ApplicationImpl.java:348)
    at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:82)
    at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:131)
    at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:47)
    at com.intellij.openapi.application.impl.FlushQueue$FlushNow.run(FlushQueue.java:187)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:891)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:760)
    at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:447)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:818)
    at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:446)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:492)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

我依赖于我自己编写的另一个私有模块设置.gradle

includeBuild('external/xxxx-xxxx') {
    name "xxxx-xxxx"
    dependencySubstitution {
        substitute module('com.xxxx.xxxx:xxxx:1.0.0') using project(':xxxx-xxxx')
    }
}

也许是我的子模块的问题或者 Android Studio/Gradle 中的错误?其他项目没有这个问题。


就我而言,清单文件中缺少包名称(很奇怪,因为我刚刚创建了项目,默认情况下它应该在那里),但我添加了它,现在它正在工作。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" package="com.example.name">
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

错误:当前项目不支持运行配置应用程序。无法获取应用ID 的相关文章

随机推荐