android - 在 React Native 中添加产品 flavor 的正确方法是什么?

标签 android react-native fastlane android-productflavors

在我的 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

最佳答案

尝试重命名您的 productFlavors,例如:
更改devdevTest .

关于android - 在 React Native 中添加产品 flavor 的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54907986/

相关文章:

java - 适用于 Java 和 Javascript 的兼容 AES 算法

ios - 找不到代码签名身份并且无法创建新身份,因为您启用了 `readonly`

java.lang.NoClassDefFoundError,Android Studio 2.6.0,内部类,

java - 无法替换/导航 fragment

android - 内容提供商 : wrap with a static facade?

react-native - react native : 'require' is not defined

react-native - 在 React Native 中向 onPress 函数添加多个事件

android - React Native v Xamarin Forms - 选择跨平台应用程序环境

ios - 如何使用 faSTLane 和 circleci 将 ipa 文件上传到 Dropbox?

ios - 找不到“$(SRCROOT) agvtool | increment_build_number | FaSTLane