【发布时间】:2019-02-27 14:43:06
【问题描述】:
在我的 react native 项目中添加产品风格后,应用程序总是在我发布版本时崩溃,就在我启动它之后。
我试图打开 android studio 来查看 Logcat,但由于应用程序在启动的那一刻崩溃了,所以我什么都看不到。
这是我的 app/build.gladle 的一部分:
project.ext.envConfigFiles = [
dev: ".env.local",
production: ".env.production",
staging: ".env.staging"
]
apply from: project(':react-native-config').projectDir.getPath() + "/dotenv.gradle"
android {
flavorDimensions "default"
defaultConfig {
applicationId "com.company"
applicationIdSuffix ""
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
ndk {
abiFilters "armeabi-v7a", "x86"
}
resValue "string", "build_config_package", "com.company"
}
buildTypes {
release {
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"),
"proguard-rules.pro"
}
}
productFlavors {
dev {
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
applicationIdSuffix ".dev"
versionNameSuffix "-dev"
}
staging {
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
applicationIdSuffix ".staging"
versionNameSuffix "-staging"
}
production {
}
}
}
我也在使用 fastLane 来部署我的应用,如下所示:
lane :staging do |options|
gradle(task: 'clean')
gradle(
task: "assemble",
flavor: "Staging",
build_type: "Release",
print_command: false,
properties: {
"android.injected.signing.store.file" => "file.keystore",
"android.injected.signing.store.password" => options[:storepass],
"android.injected.signing.key.alias" => options[:keyalias],
"android.injected.signing.key.password" => options[:keypass],
}
)
upload_to_play_store(track: 'alpha')
end
【问题讨论】:
标签: android react-native fastlane android-productflavors