Android Gradle 多环境URL请求设置

在开发过程中,多环境配置是经常遇到的,比如在Android开发过程中,在不同环境上请求服务器的URL是不同的,使用Gradle进行管理,是非常方便的。
首先查看工程目录结构:

使用AndroidStudio开发的看到这个熟悉吧。main就是目前开发的环境。dev为测试环境。product,staging为其他环境,当然还可以有其他更多环境。

1、将请求的URL定义到Constant常量类中:

public class Constant {
  public static final String URL= “http://XXXXX“;
}

在dev,product,staging等环境中添加Constant类,并且设置不同URL即可。
设置后目录结构如下:我的app包名为com.example.XX.myapplication

这里需要注意的是不要在main环境中添加Constant类,否则类就重复了,Gradle编译时会报:dumplicate class XXX

使用时就和普通类使用方式一样!

Gradle配置:

apply plugin: ‘com.android.application‘

android {
    compileSdkVersion 21
    buildToolsVersion "19.1.0"

    lintOptions {
        abortOnError false
    }

    defaultConfig {
        applicationId "com.example.teamlab.myapplication"
        minSdkVersion 9
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    signingConfigs {
        debug {
            storeFile file("src/main/keystore/debug.keystore")
            storePassword "android"
            keyPassword "android"
        }
        release {
            storeFile file("src/main/keystore/debug.keystore")
            storePassword "android"
            keyPassword "android"
        }
        staging {
            storeFile file("src/main/keystore/debug.keystore")
            storePassword "android"
            keyPassword "android"
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.pro‘
        }
        debug {
            minifyEnabled false
            proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.pro‘
        }
    }
    productFlavors {
        dev {
            applicationId ‘com.example.teamlab.myapplication.dev‘
            signingConfig signingConfigs.debug
        }
        staging {
            signingConfig signingConfigs.debug
            applicationId ‘com.example.teamlab.myapplication.staging‘
        }
        product {
            applicationId ‘com.example.teamlab.myapplication‘
            signingConfig signingConfigs.debug
        }
    }
    packagingOptions {
        exclude ‘META-INF/notice.txt‘
        exclude ‘META-INF/license.txt‘
    }
}

dependencies {
    compile fileTree(dir: ‘libs‘, include: [‘*.jar‘])
    compile ‘com.android.support:appcompat-v7:21.+‘
    compile ‘com.android.support:support-v4:21.+‘
    compile ‘cn.pedant.sweetalert:library:1.3‘
    compile ‘com.mcxiaoke.volley:library:1.0.+‘
    androidTestCompile ‘junit:junit:4.10‘
    androidTestCompile ‘org.robolectric:robolectric:2.3+‘
    androidTestCompile ‘com.squareup:fest-android:1.0.+‘
    compile project(‘:slidingmenu‘)
}

原文地址:https://www.cnblogs.com/zhujiabin/p/9759002.html

时间: 2024-10-09 03:03:41

Android Gradle 多环境URL请求设置的相关文章

Gradle 多环境URL请求设置

在开发过程中,多环境配置是经常遇到的,比如在Android开发过程中,在不同环境上请求服务器的URL是不同的,使用Gradle进行管理,是非常方便的. 首先查看工程目录结构: 使用AndroidStudio开发的看到这个熟悉吧.main就是目前开发的环境.dev为测试环境.product,staging为其他环境,当然还可以有其他更多环境. 1.将请求的URL定义到Constant常量类中: public class Constant { public static final String U

QWebEngineView拦截Url请求设置

QWebEngineUrlRequestInterceptor类提供了一个拦截URL请求抽象基类,可通过实现QWebEngineUrlRequestInterceptor::interceptRequest接口拦截并修改相应的UIL请求,以达到相应需求效果,比如设置"Accept-Language". class TWebEngineUrlRequestInterceptor : public QWebEngineUrlRequestInterceptor { Q_OBJECT pub

使用 gradle 在编译时动态设置 Android resValue / BuildConfig / Manifes中<meta-data>变量的值

转载请标明出处:http://blog.csdn.net/xx326664162/article/details/49247815 文章出自:薛瑄的博客 你也能够查看我的其它同类文章.也会让你有一定的收货 关于使用Gradle来控制版本号和生成不同版本号的代码.我总结了三篇文章,网上关于这些知识,都比較零散.我在学习这些的之前.根本不知道还有这种方法.所以说不知道并不可怕,可怕的是不知道自己不知道.相信这三篇文章,会给你不少灵感 Gradle构建控制Log开关--BuildConfig\自己定义

Android Gradle编译学习日记之一(搭建 Gradle 环境以及编译 Android 应用)

大家如果喜欢我的博客,请关注一下我的微博,请点击这里(http://weibo.com/kifile),谢谢 转载请标明出处(http://blog.csdn.net/kifile),再次感谢 Google 在最近正式推出了 Android Studio 1.0版本,开发者首页的默认开发工具也已经更改成了 Android Studio,我想我们是时候全面转型到 Android Studio 开发了. 其实抛开界面因素,Android Studio 与 Eclipse ADT 构建 Android

Android Gradle插件用户指南

原文Gradle Plugin User Guide - Android Tools Project Site samples see bottom of New Build System 参考Gradle For Android Training Course 1 简介 这篇文档是基于0.9版本的Gradle插件,1.0以前的版本由于不兼容,可能会有所不同 1.1 新的构建系统的目标 新构建系统的目标是: 使得代码和资源的重用更加简单 使得创建同一应用程序的不同版本更加容易,不管是多个apk版

Android Gradle插件用户指南(译)

Android Gradle插件用户指南(译) 原文Gradle Plugin User Guide - Android Tools Project Site samples see bottom of New Build System 参考Gradle For Android Training Course 1 简介 这篇文档是基于0.9版本的Gradle插件,1.0以前的版本由于不兼容,可能会有所不同 1.1 新的构建系统的目标 新构建系统的目标是: 使得代码和资源的重用更加简单 使得创建同

使用IntelliJ IDEA 13搭建Android集成开发环境(图文教程)

原文:使用IntelliJ IDEA 13搭建Android集成开发环境(图文教程) ?[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4013535.html 联系方式:[email protected] [正文] [开发环境] 物理机版本:Win 7旗舰版(32位) Java SDK版本:jdk1.8.0_20(32位) Android SDK

Android安卓开发环境搭建应用游戏项目实战知识体系_极客学院

Java是Android开发的主要语言,所以掌握Java语言基础非常重要,本阶段讲解了Java的基本语法,要深入掌握Java语言,可以通过Java学习路径图学习. 17课程 10小时 19分钟 1.Java编程基础知识入门:变量与数据类型 本课学习变量的命名.定义和初始化及整数.浮点.字符数据类型. 25课时,141分钟 626人学习 2.Java语言Switch语句详解 本课学习switch语句,switch语句是分支语句的一组,适用于判断同一变量的多种状态,进行流程控制. 5课时,17分钟

Android Gradle Plugin指南(二)——基本项目

原文地址:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Basic-Project 3.Basic Project(基本项目) 一个Gradle项目的构建过程定义在build.gradle文件中,位于项目的根目录下. 3.1 Simple build files(简单的构建文件) 一个最简单的Gradle纯Java项目的build.gradle文件包含以下内容: apply plugin: 'java' 这里