2014-09-24 105 views
1

在項目結構我有釋放和調試版本類型enter image description here如何更改設置調試版本Android Studio中

如何設置不同版本NetworkSettings.java文件建立不同類型的。 例如,對於發佈

public class NetworkSettings { 
    private final static String SERVER_URL="releaseserver.com"; 
    private final static int SERVER_PORT=80; 

    public static String getServerUrl() 
    { 
     return SERVER_URL; 
    } 
    public static int getServerPort() 
    { 
     return SERVER_PORT; 
    } 
} 

和調試

public class NetworkSettings { 
    private final static String SERVER_URL="testserver.com"; 
    private final static int SERVER_PORT=80; 

    public static String getServerUrl() 
    { 
     return SERVER_URL; 
    } 
    public static int getServerPort() 
    { 
     return SERVER_PORT; 
    } 
} 

我想用生成類型,以免忘記手動更改它這樣做。

回答

2

您可以通過多種方式獲得。

例如,您可以使用您的BuildConfig。 同樣使用Gradle,您可以在BuildConfig類中生成其他字段

android { 
    ... 
    buildTypes { 
     debug { 
      buildConfigField "boolean", "MY_VAR", "true" 
     } 
     main { 
      buildConfigField "boolean", "MY_VAR", "false" 
     } 
     ... 
    }  
} 

然後..

if (BuildConfig.MY_VAR) { 

} 

否則,你可以使用提供不同的實現同一類的不同的風味

注意的是:你必須從main

app/ 
|--libs/ 
|--src/ 
    |--flavor1/ 
    | |--java/ 
    |  |--com/example/ 
    |  |--Flavor.java 
    |--flavor2/ 
    | |--java/ 
    |  |--com/example/ 
    |  |--Flavor.java 
    |--main/ 
     |--java/ 
     | |--... 

當然你中省略這個類在你的build.gradle申報這些味道

productFlavors { 
    flavor2 { 
    } 
    flavor1 { 
    } 
} 

您還可以使用構建鍵入,添加名爲debug和release的文件夾。

app/ 
    |--libs/ 
    |--src/ 
     |--debug/ 
     | |--java/ 
     |  |--com/example/ 
     |  |--MyClass.java 
     |--release/ 
     | |--java/ 
     |  |--com/example/ 
     |  |--MyClass.java 
     |--main/ 
      |--java/ 
      | |--... 
0

嘗試這樣的事情,我想DN IDE會支持這樣的事情

在你的類..

private final static boolean DEVELOPMENT_MODE = true; 
private final static String SERVER_URL; 
private final static int SERVER_PORT = 80; 

static{ 
    SERVER_URL = ((DEVELOPMENT_MODE) ? "releaseserver.com" : "testserver.com"); 
} 
+0

我不想手動更改DEVELOPMENT_MODE。這是最簡單的方法,我想要一點自動化) – 2014-09-24 06:00:29

相關問題