程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

Android 的每个环境配置

发布于2021-07-11 02:40     阅读(1149)     评论(0)     点赞(27)     收藏(2)


Android 为每个环境配置提供什么解决方案?在网络世界中,我习惯于 C# 有配置转换,而在 Java 网络应用程序中,我习惯于将适当的 .properties 文件复制到 WAR 中。

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

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


解决方案


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

Android 有很棒的插件: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

示例配置将是:

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"
        }
    }

}


所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.javaheidong.com/blog/article/243731/9b58e3089863fd3a2753/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

27 0
收藏该文
已收藏

评论内容:(最多支持255个字符)