我需要在项目中使用两个不同的维度。但是使用这种方法后,无论做什么,Android Studio都会告诉我“未找到默认 Activity ”。实际上,src文件夹中没有任何更改,因为我不需要修改口味中的任何类。
flavorDimensions "device", "backend"
productFlavors {
dev {
buildConfigField "String", "API_VERSION", "\"1.1\""
...extra configs
dimension "backend"
}
staging {
buildConfigField "String", "API_VERSION", "\"1.1\""
...extra configs
dimension "backend"
}
prod {
buildConfigField "String", "API_VERSION", "\"1.1\""
...extra configs
dimension "backend"
}
android {
buildConfigField "String", "DEVICE_TYPE", "\"ANDROID\""
dimension "device"
}
huawei {
buildConfigField "String", "DEVICE_TYPE", "\"ANDROID_HW\""
versionCode 10000 + defaultConfig.versionCode
dimension "device"
}
}
main / AndroidManifest.xml:
<application
android:name=".XApplication"
...
<activity
android:name=".ui.SplashActivity"
android:theme="@style/SplashTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
最佳答案
在AndroidManifest.xml
中,将 Activity 的android:name
属性更改为Activity的完全限定的类名,而不是使用.ui.SplashActivity
表示法。当您为名称加上.
前缀时,会将名称附加到package
属性的<manifest>
批注中,该批注可能与实际Activity类的包匹配,也可能不匹配。确保您的Activity类在文件顶部具有正确的package
声明,并且位于正确的src目录中。
您的应用程序类名称也是如此。我避免不惜一切代价使用.
表示法。
关于android - 找不到具有两个不同维度的默认 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63914063/