如何使用 C++ 在 Android 中获取 Version.Code?
How to get Version.Code in Android using C++?
我在 Android 项目中使用本机 C++。
在 Java 或 Kotlin 中,我们可以使用 BuildVersion.Code
从 Gradle 文件中获取 Android 代码。如何在 C++ 中获取此版本代码?
这对我有用:
jclass build_config_class = env->FindClass("com/example/app/BuildConfig");
jfieldID version_code_id = env->GetStaticFieldID(build_config_class, "VERSION_CODE", "I");
jfieldID version_name_id = env->GetStaticFieldID(build_config_class, "VERSION_NAME",
"Ljava/lang/String;");
int version_code = env->GetStaticIntField(build_config_class, version_code_id);
jstring version_name = (jstring) env->GetStaticObjectField(build_config_class, version_name_id);
您需要更改代码中的 com/example/app 以匹配您的包名称。
我在 Android 项目中使用本机 C++。
在 Java 或 Kotlin 中,我们可以使用 BuildVersion.Code
从 Gradle 文件中获取 Android 代码。如何在 C++ 中获取此版本代码?
这对我有用:
jclass build_config_class = env->FindClass("com/example/app/BuildConfig");
jfieldID version_code_id = env->GetStaticFieldID(build_config_class, "VERSION_CODE", "I");
jfieldID version_name_id = env->GetStaticFieldID(build_config_class, "VERSION_NAME",
"Ljava/lang/String;");
int version_code = env->GetStaticIntField(build_config_class, version_code_id);
jstring version_name = (jstring) env->GetStaticObjectField(build_config_class, version_name_id);
您需要更改代码中的 com/example/app 以匹配您的包名称。