开发Android应用时,如何管理多种环境?

开发Android应用时,如何管理多种环境?,第1张

概述我们正在构建一个连接到云端的 Android应用.我们有一个API的测试URL和一个生产URL.我们将应用连接到我们的本地开发机器,以便在开发过程中与数据库进行交流,但是每次为Play Store生成APk时,都会发现自己将全局API URL修改为生产URL. 有没有更好的方式来管理Android的环境?我们还可以有两个版本的应用程序(开发版本)和Play Store版本?我不能有两个版本,因为这 我们正在构建一个连接到云端的 Android应用.我们有一个API的测试URL和一个生产URL.我们将应用连接到我们的本地开发机器,以便在开发过程中与数据库进行交流,但是每次为Play Store生成APk时,都会发现自己将全局API URL修改为生产URL.

有没有更好的方式来管理AndroID的环境?我们还可以有两个版本的应用程序(开发版本)和Play Store版本?我不能有两个版本,因为这两个应用程序具有相同的签名.我们如何最好地管理这个?

解决方法 随着androID工作室和gradle它的简单现在.

在你的应用程序build.gradle里编辑签名配置

signingConfigs {    deBUG {        storefile file("deBUG.keystore")        storePassword "..."        keyAlias "..."        keyPassword "..."    }    prod {        storefile file("prod.keystore")        storePassword "..."        keyAlias "..."        keyPassword "..."    }    dev {        storefile file("dev.keystore")        storePassword "..."        keyAlias "..."        keyPassword "..."    }}

添加buildTypes

buildTypes {    deBUG {        buildConfigFIEld 'String','BASE_URL','"http://127.0.0.1:8080/"'        ......        signingConfig signingConfigs.deBUG    }    prod {        MinifyEnabled true        shrinkResources true        proguardfiles getDefaultProguardfile('proguard-androID.txt'),'proguard-rules.pro'        buildConfigFIEld 'String','"http://prod.example.com"'        ......        signingConfig signingConfigs.prod    }    dev {        buildConfigFIEld 'String','"http://dev.example.com"'        ......        signingConfig signingConfigs.dev    }}

在你的代码中,使用这个代码在gradle文件中配置base url.

public final static String BASE_URL = BuildConfig.BASE_URL;

您还可以将不同的KEY或任何构建类型特定于Gradle文件中的代码以及根据正在运行的构建类型执行的代码.

它甚至可能有不同的包名.

productFlavors {    my_prod {        applicationID "com.example.packtwo"    }    my_dev {        applicationID "com.example.packone"    }}

检查更多的可能性…

但是,如果您使用不同的口味,您可能需要处理清单合并和所有.

总结

以上是内存溢出为你收集整理的开发Android应用时,如何管理多种环境?全部内容,希望文章能够帮你解决开发Android应用时,如何管理多种环境?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1131157.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存