代码:如何获得当前APP版本号

将以下代码封装在PackageUtils类中即可

/**
     * 获得版本号信息
     * 
     * @param context
     * @return
     */
    public static String getVersionName(Context context) {

        PackageManager pm = context.getPackageManager();

        try {
            PackageInfo info = pm.getPackageInfo(context.getPackageName(), 0);
            return info.versionName;
        } catch (NameNotFoundException e) {
            e.printStackTrace();
        }
        return null;
    }

    /**
     * 版本的代码
     * 
     * @param context
     * @return
     */
    public static int getVersionCode(Context context) {

        PackageManager pm = context.getPackageManager();

        try {
            PackageInfo info = pm.getPackageInfo(context.getPackageName(), 0);
            return info.versionCode;
        } catch (NameNotFoundException e) {
            e.printStackTrace();
        }
        return -1;
    }
    /**
     * 判断某个服务是否正在运行
     *
     * @param context
     * @param servicePackageName
     * 注意:这里传入比较的是service的全包名
     * @return
     */
    public static boolean isTheServiceRunning(Context context, String servicePackageName) {
        ActivityManager activityManager = (ActivityManager)
                context.getSystemService(Context.ACTIVITY_SERVICE);
        List<ActivityManager.RunningServiceInfo> serviceList
                = activityManager.getRunningServices(60);

        if ((serviceList.size() == 0)) {
            return false;
        }

        for (int i = 0; i < serviceList.size(); i++) {
            if (serviceList.get(i).service.getClassName().equals(servicePackageName)) {
                return true;
            }
        }
        return false;
    }

猜你喜欢

转载自blog.csdn.net/jack_bear_csdn/article/details/51738152