Example usage for android.content.pm PackageManager getPackageInfo

List of usage examples for android.content.pm PackageManager getPackageInfo

Introduction

In this page you can find the example usage for android.content.pm PackageManager getPackageInfo.

Prototype

public abstract PackageInfo getPackageInfo(VersionedPackage versionedPackage, @PackageInfoFlags int flags)
        throws NameNotFoundException;

Source Link

Document

Retrieve overall information about an application package that is installed on the system.

Usage

From source file:com.nullwire.trace.ExceptionHandler.java

/**
 * Register handler for unhandled exceptions.
 * @param app //from  www  . ja v a2  s.c o  m
 * @param han
 */
public static boolean register(Context ctx, Handler han) {
    Log.i(TAG, "Registering default exceptions handler: " + G.URL);
    s_han = han;
    s_ctx = ctx;
    Log.i(TAG, "Registering default exceptions handler");
    // Get information about the Package
    PackageManager pm = s_ctx.getPackageManager();
    try {
        PackageInfo pi;
        // Version
        pi = pm.getPackageInfo(s_ctx.getPackageName(), 0);
        G.APP_VERSION = pi.versionName;
        // Package name
        G.APP_PACKAGE = pi.packageName;
        // Files dir for storing the stack traces
        G.FILES_PATH = s_ctx.getFilesDir().getAbsolutePath();
        // Device model
        G.PHONE_MODEL = android.os.Build.MODEL;
        // Android version
        G.ANDROID_VERSION = android.os.Build.VERSION.RELEASE;
    } catch (NameNotFoundException e) {
        e.printStackTrace();
    }

    Log.i(TAG, "TRACE_VERSION: " + G.TraceVersion);
    Log.d(TAG, "APP_VERSION: " + G.APP_VERSION);
    Log.d(TAG, "APP_PACKAGE: " + G.APP_PACKAGE);
    Log.d(TAG, "FILES_PATH: " + G.FILES_PATH);
    Log.d(TAG, "URL: " + G.URL);

    boolean stackTracesFound = false;
    // We'll return true if any stack traces were found
    if (searchForStackTraces().length > 0) {
        stackTracesFound = true;
    }

    //it sends report
    new Thread() {
        @Override
        public void run() {
            s_han.post(new Runnable() {

                @Override
                public void run() {
                    String[] list = searchForStackTraces();
                    if (list != null && list.length > 0) {
                        AppHelper.showExceptionDialog(s_ctx);
                    }
                }
            });

            // First of all transmit any stack traces that may be lying around

            UncaughtExceptionHandler currentHandler = Thread.getDefaultUncaughtExceptionHandler();
            if (currentHandler != null) {
                Log.d(TAG, "current handler class=" + currentHandler.getClass().getName());
            }
            // don't register again if already registered
            if (!(currentHandler instanceof DefaultExceptionHandler)) {
                // Register default exceptions handler
                Thread.setDefaultUncaughtExceptionHandler(new DefaultExceptionHandler(currentHandler));
            }
        }
    }.start();

    return stackTracesFound;
}

From source file:ee.ioc.phon.android.speak.Utils.java

private static PackageInfo getPackageInfo(Context c) {
    PackageManager manager = c.getPackageManager();
    try {/*from   w w  w . j av  a  2  s .c o m*/
        return manager.getPackageInfo(c.getPackageName(), 0);
    } catch (NameNotFoundException e) {
        Log.e("Couldn't find package information in PackageManager: " + e);
    }
    return null;
}

From source file:com.adam.aslfms.util.Util.java

public static boolean checkForInstalledApp(Context ctx, String pkgName) {
    try {/*from www .ja va  2  s.c o  m*/
        PackageManager pm = ctx.getPackageManager();
        pm.getPackageInfo(pkgName, 0);
        // Log.d(TAG, pkgString + " is installed");
        return true;
    } catch (NameNotFoundException e) {
        // Log.d(TAG, pkgString + " is not installed");
    }
    return false;
}

From source file:com.google.android.gcm.GCMRegistrar.java

/**
 * Checks if the device has the proper dependencies installed.
 * <p>/*from  w w  w.j av a  2  s  . c om*/
 * This method should be called when the application starts to verify that
 * the device supports GCM.
 *
 * @param context application context.
 * @throws UnsupportedOperationException if the device does not support GCM.
 */
public static void checkDevice(Context context) {
    int version = Build.VERSION.SDK_INT;
    if (version < 8) {
        throw new UnsupportedOperationException(
                "Device must be at least " + "API Level 8 (instead of " + version + ")");
    }
    PackageManager packageManager = context.getPackageManager();
    try {
        packageManager.getPackageInfo(GSF_PACKAGE, 0);
    } catch (NameNotFoundException e) {
        throw new UnsupportedOperationException("Device does not have package " + GSF_PACKAGE);
    }
}

From source file:com.adam.aslfms.util.Util.java

public static int getAppVersionCode(Context ctx, String pkgName) {
    try {// w  w  w . ja v  a  2s  . c  om
        PackageManager pm = ctx.getPackageManager();
        PackageInfo pkgInfo = pm.getPackageInfo(pkgName, 0);
        return pkgInfo.versionCode;
    } catch (NameNotFoundException e) {
        return 0;
    }
}

From source file:com.adam.aslfms.util.Util.java

public static String getAppVersionName(Context ctx, String pkgName) {
    try {/*ww w .ja v a 2 s  .c o m*/
        PackageManager pm = ctx.getPackageManager();
        PackageInfo pkgInfo = pm.getPackageInfo(pkgName, 0);
        String ver = pkgInfo.versionName;
        return ver;
    } catch (NameNotFoundException e) {
        return "0";
    }
}

From source file:cn.whereyougo.framework.utils.PackageManagerUtil.java

/**
 * ?AndroidManifest?/*from w  w w .jav  a2s  .c  om*/
 * 
 * @return ??()-1
 */
public static int getPackageVersionCode(Context context) {
    int verCode = -1;
    PackageManager pm = context.getPackageManager();
    PackageInfo pi;
    try {
        pi = pm.getPackageInfo(context.getPackageName(), 0);
        if (null != pi.versionName) {
            verCode = pi.versionCode;
        }
    } catch (NameNotFoundException e) {
        LogUtil.e(TAG, "", e);
    }
    return verCode;
}

From source file:cn.whereyougo.framework.utils.PackageManagerUtil.java

/**
 * ?AndroidManifest???/*from   w  w w .j ava2  s . com*/
 * 
 * @return ??()""
 */
public static String getPackageVersionName(Context context) {
    String verName = "";
    PackageManager pm = context.getPackageManager();
    PackageInfo pi;
    try {
        pi = pm.getPackageInfo(context.getPackageName(), 0);
        if (null != pi.versionName) {
            verName = pi.versionName;
        }
    } catch (NameNotFoundException e) {
        LogUtil.e(TAG, "", e);
    }
    return verName;
}

From source file:net.niyonkuru.koodroid.service.SessionService.java

/**
 * Build and return a user-agent string that can identify this application to remote servers. Contains the package
 * name and version code./*from  www. jav  a  2 s  . c om*/
 */
private static String buildUserAgent(Context context) {
    try {
        final PackageManager manager = context.getPackageManager();
        final PackageInfo info = manager.getPackageInfo(context.getPackageName(), 0);

        return info.packageName + "/" + info.versionName + " (" + info.versionCode + ")";
    } catch (NameNotFoundException e) {
        return null;
    }
}

From source file:com.adjust.sdk.Util.java

private static String getAppVersion(final Context context) {
    try {/*from   w  w w .  jav  a2  s.c o  m*/
        final PackageManager packageManager = context.getPackageManager();
        final String name = context.getPackageName();
        final PackageInfo info = packageManager.getPackageInfo(name, 0);
        final String versionName = info.versionName;
        return sanitizeString(versionName);
    } catch (NameNotFoundException e) {
        return UNKNOWN;
    }
}