ログイン画面にバージョン名を表示するだけですが、常にnullが返されます。次のように私は私のアプリのGradleのビルドで私のversionNameを定義しました:Android BuildConfig.VERSION_NAMEがnullを返しますか?
defaultConfig {
applicationId "com.maplesyrupindustries.j.airportmeet"
minSdkVersion 19
targetSdkVersion 24
versionCode 7
versionName "1.0.6"
multiDexEnabled true
}
をそして私は自分のログインののonCreateでそれを呼び出しています:
String build = BuildConfig.VERSION_NAME;
Log.e(TAG, BuildConfig.VERSION_NAME);
tvVersion.setText("Alpha " + build);
しかし、ビルド文字列は常に空です。何がありますか?あなたがコンパイルされるまで、これがBuildConfig.java
値が含まれるファイルは、doesn't存在するため、
public final class BuildConfig {
public static final boolean DEBUG = Boolean.parseBoolean("true");
public static final String APPLICATION_ID = "com.mypackage.myapp";
public static final String BUILD_TYPE = "debug";
public static final String FLAVOR = "";
public static final int VERSION_CODE = 1;
public static final String VERSION_NAME = "1.0";
}
理由:
Gradleのバージョンは何ですか? > 0.7? –
バージョンは2.10です – SpecialSnowflake
あなたの質問に 'defaultConfig'がアプリケーションモジュール、ライブラリモジュールなどから表示されていますか?コードで生成された 'BuildConfig'クラス(あなたのモジュールの' build/generated/... ')を見ると、どうなっていますか?あなたは正しい 'BuildConfig'をインポートしていて、他の' BuildConfig'を誤ってインポートしていませんか? – CommonsWare