如何将json int与单独app的Android versionCode进行比较

时间:2017-11-08 07:51:55

标签: java android json

我正在尝试添加一个函数来检查我的服务器上的json文件以查找我自己以外的应用程序的versionCode,如果服务器上的json中的versionCode是>一个外部应用程序,然后执行更新操作。但是,我遇到了获取外部应用程序的versionCode的问题。 versionCode始终返回0而不是外部应用程序的实际版本。为什么它没有返回正确的版本?这是我的代码:

这应该是获取json字符串指定的app包的versionCode:

    public static int getinstVersionCode(Context mContext) {
    if (mContext != null) {
        try {
            return mContext.getPackageManager().getPackageInfo(Constants.PACKAGE_NAME, 0).versionCode;
        } catch (PackageManager.NameNotFoundException ignored) {
        }
    }
    return 0;
}

此活动部分包含json包名称值:

static final String APK_VERSION_CODE = "versionCode";
static final String PACKAGE_NAME = "package";

这是服务器上的json代码:

{
"versionCode":1,
"package":"com.example.app",
}

比较它们的方法:

            int apkCode = obj.getInt(Constants.APK_VERSION_CODE);

        int versionCode = AppUtils.getinstVersionCode(mContext);
        if (apkCode > versionCode) {
        do update action...
         }

0 个答案:

没有答案