android-如何开发同一应用程序的生产版本和Beta版本以在同一设备上安装

我正在开发一个Android应用程序,现在应该在与生产应用程序相同的环境中测试新功能的时候了.

我曾尝试在清单文件和gradle文件中创建一个新分支并将其重命名为.testing,但是我对提供程序有疑问,特别指出:

I/dalvikvm: Could not find method android.app.Fragment.setSharedElementEnterTransition, referenced from method com.corp.app.AccountFrag.access$super

所以我不认为这是方法.我希望将应用程序安装为两个变体(它们不一定需要共享数据),并希望用户打开一个或另一个,这取决于是否需要在生产环境中测试新功能还是需要更可靠,更稳定的版本来测试需要运行.

有人处理过这个问题吗?我怀疑我需要研究口味,但我不知道.

在此先感谢您的见解.

解决方法:

使用时应针对Beta使用不同的构建类型.

在您的应用模块的build.gradle中,

android {

buildTypes {
        beta {
            applicationIdSuffix ".beta"
            versionNameSuffix "-beta"
            resValue "string", "app_name", "Beta App"
        }
        debug {

        }
        release {

        }
    }
}

在这里,我们为您的应用程序的applicationId添加了后缀“ beta”.因此,您可以拥有2个应用变体.如果您要在单个移动设备中使用两个以上的变体,只需添加另一个具有不同后缀的变体.

要在AndroidManifest中使用包名称,请使用${applicationId}而不是com.example.dinesh.如果要在Java类中使用程序包名称,请使用BuildConfig.APPLICATION_ID.

在这种情况下,不应使用产品调味剂.当您有两种类型的相同产品(例如普通应用和付费应用)时,就会使用产品口味.要使用您的应用程序测试版,您应该使用构建类型.

上一篇:【解决】yum 安装 出错 Error: Protected multilib versions:版本原因


下一篇:"SqlLocalDB versions" runs into error "Windows API call "RegGetValueW" retu