zoukankan      html  css  js  c++  java
  • Android AppUtil通用类

    1.整体分析

    1.1.先看一下源码,可以直接Copy。

    public class AppUtil {
    
        /**
         * 获取当前程序包名
         *
         * @param context 上下文
         * @return 程序包名
         */
        public static String getPackageName(Context context) {
            return context.getPackageName();
        }
    
        /**
         * 获取程序版本信息
         *
         * @param context 上下文
         * @return 版本名称
         */
        public static String getVersionName(Context context) {
            String versionName = null;
            String pkName = context.getPackageName();
            try {
                versionName = context.getPackageManager().getPackageInfo(pkName, 0).versionName;
            } catch (PackageManager.NameNotFoundException e) {
                Log.e("VersionInfo", "Exception", e);
            }
            return versionName;
        }
    
        /**
         * 获取程序版本号
         *
         * @param context 上下文
         * @return 版本号
         */
        public static int getVersionCode(Context context) {
            int versionCode = -1;
            String pkName = context.getPackageName();
            try {
                versionCode = context.getPackageManager().getPackageInfo(pkName, 0).versionCode;
            } catch (PackageManager.NameNotFoundException e) {
                Log.e("VersionInfo", "Exception", e);
            }
            return versionCode;
        }
    
        /**
         * 判断是否安装某个应用
         *
         * @param context     上下文
         * @param packageName 包名
         * @return 是否安装
         */
        public static boolean isAvailable(Context context, String packageName) {
            final PackageManager packageManager = context.getPackageManager();//获取packagemanager
            List<PackageInfo> pInfo = packageManager.getInstalledPackages(0);//获取所有已安装程序的包信息
            //从pinfo中将包名字逐一取出,压入pName list中
            if (pInfo != null) {
                for (int i = 0; i < pInfo.size(); i++) {
                    String pn = pInfo.get(i).packageName;
                    if (pn.equals(packageName))
                        return true;
                }
            }
            return false;
        }
    }
    View Code

    1.2.主要方法

    • 获取APP包名
    • 获取APP版本信息
    • 获取APP版本号
    • 判断是否安装某个应用  


    2.局部分析

    2.1.如何获取APP包名

      

       传入一个上下文,直接可以获取包名。

    2.2.如何获取APP版本信息

      

      传入一个上下文,直接可以获取版本名称。

    2.3.如何获取APP版本号

       

     2.4.判断是否安装某个应用

       

      这里需要知道那个应用的包名,和上下文

      不过通常常用应用的包名都是公开的,比如支付宝微信QQ什么的,就不用担心这个packageName。


    3.应用实例

    3.1.我调用了这四个函数到一个APP中,执行效果如下

      

      

    既然选择了,便不顾风雨兼程。Just follow yourself.
  • 相关阅读:
    How to Create a site at the specified URL and new database (CommandLine Operation)
    Using Wppackager to Package and Deploy Web Parts for Microsoft SharePoint Products and Technologies
    SQL Server Monitor v0.5 [Free tool]
    How to build Web Part
    Deploy web part in a virtual server by developing a Web Part Package file(.cab)
    How to recreate "sites" link if you delete it accidentally
    SharePoint Portal Server管理匿名访问设置
    Monitor sql connection from .Net SqlClient Data Provider
    Brief installation instruction of Sharepoint Portal Server
    How to Use SharePoint Alternate URL Access
  • 原文地址:https://www.cnblogs.com/Jason-Jan/p/7904022.html
Copyright © 2011-2022 走看看