如何从JNI到Android获取versionName和versionCode

时间:2018-08-20 11:17:21

标签: android android-ndk

我尝试搜索但没有找到任何东西,任何人都可以提供指导,或者任何解决方案都值得赞赏。

修改 我想获取C ++中的versionCode和versionName之类的信息,因此能够使用以下代码获取packageName。

static jstring getpkg(JNIEnv* env, jobject thiz, jobject activity) {
    jclass android_content_Context =env->GetObjectClass(activity);
    jmethodID midGetPackageName = env->GetMethodID(android_content_Context,"getPackageName", "()Ljava/lang/String;");
    jstring packageName= (jstring)env->CallObjectMethod(activity, midGetPackageName);
    return packageName;
}

1 个答案:

答案 0 :(得分:1)

在Java中,您可以执行以下操作:

String VersionName = this.getPackageManager()
                                    .getPackageInfo(this.getPackageName(), 0)
                                    .versionName;

String VersionCode = this.getPackageManager()
                                    .getPackageInfo(this.getPackageName(), 0)
                                    .versionCode;