首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android的每个环境配置

Android的每个环境配置
EN

Stack Overflow用户
提问于 2014-03-15 00:42:12
回答 1查看 1.8K关注 0票数 3

Android针对每个环境的配置提供了什么解决方案?在web世界中,我习惯于使用C#进行配置转换,并且在Java web应用程序中使用构建来将适当的.properties文件复制到WAR中。

Android的解决方案是什么?现在,我看到很多人只是硬编码静态变量,并在他们想要构建生产APK时更改它们。

编辑:看着类似的问题,人们建议使用SharedPreferences,但我不理解这一点,因为它似乎是运行时对象,而不是文件。我不希望在启动时存储这些值,而是使用配置文件中的特定属性集构建应用程序。

EN

回答 1

Stack Overflow用户

发布于 2014-03-15 01:01:00

1.)我推荐使用gradle来设置环境设置。

安卓有一个很棒的插件:http://tools.android.com/tech-docs/new-build-system/user-guide

2.)使用"productFlavors“进行环境设置。

看看这个:http://tulipemoutarde.be/2013/10/06/gradle-build-variants-for-your-android-project.html

示例配置为:

代码语言:javascript
复制
android {
    compileSdkVersion 19
    buildToolsVersion "19.0.1"


    sourceSets {
        main {
            manifest.srcFile 'src/main/AndroidManifest.xml'
            java.srcDirs = ['src/main/java']
            resources.srcDirs = ['src']
            aidl.srcDirs = ['src']
            renderscript.srcDirs = ['src']
            res.srcDirs = ['src/main/res']
            assets.srcDirs = ['src/main/assets']
        }

    }

    buildTypes {

        debug {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }

        release {
            runProguard true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }

    productFlavors {
        production {
            packageName "com.sample.app"
        }

        staging {
            packageName "com.sample.app.staging"
        }

        develop {
            packageName "com.sample.app.develop"
        }
    }

}
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22410957

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档