Example usage for android.content.pm PackageManager GET_META_DATA

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

Introduction

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

Prototype

int GET_META_DATA

To view the source code for android.content.pm PackageManager GET_META_DATA.

Click Source Link

Document

ComponentInfo flag: return the ComponentInfo#metaData data android.os.Bundle s that are associated with a component.

Usage

From source file:Main.java

/**
 * Get the value of "io.branch.sdk.TestMode" entry in application manifest or from String res.
 *
 * @return value of "io.branch.sdk.TestMode" entry in application manifest or String res.
 * false if "io.branch.sdk.TestMode" is not added in the manifest or String res.
 *///w  w w .j  a  v a  2  s  .c  o  m
public static boolean isTestModeEnabled(Context context) {
    if (isCustomDebugEnabled_) {
        return isCustomDebugEnabled_;
    }
    boolean isTestMode_ = false;
    String testModeKey = "io.branch.sdk.TestMode";
    try {
        final ApplicationInfo ai = context.getPackageManager().getApplicationInfo(context.getPackageName(),
                PackageManager.GET_META_DATA);
        if (ai.metaData != null && ai.metaData.containsKey(testModeKey)) {
            isTestMode_ = ai.metaData.getBoolean(testModeKey, false);
        } else {
            Resources resources = context.getResources();
            isTestMode_ = Boolean.parseBoolean(resources
                    .getString(resources.getIdentifier(testModeKey, "string", context.getPackageName())));
        }

    } catch (Exception ignore) {
    }

    return isTestMode_;
}

From source file:Main.java

public static boolean isInstalled(Context context, String packageName) {
    final PackageManager pm = context.getPackageManager();
    List<ApplicationInfo> packages = pm.getInstalledApplications(PackageManager.GET_META_DATA);

    for (ApplicationInfo packageInfo : packages) {
        if (packageInfo.packageName.equals(packageName))
            return true;
    }//from w w w .  j a  va 2s . co  m

    return false;
}

From source file:Main.java

public static boolean isPackageInstalled(Context ctx, String targetPackage) {
    PackageManager pm = ctx.getPackageManager();
    try {/*  w  ww .  ja  va2  s. c  o  m*/
        PackageInfo info = pm.getPackageInfo(targetPackage, PackageManager.GET_META_DATA);
    } catch (PackageManager.NameNotFoundException e) {
        return false;
    }

    return true;
}

From source file:Main.java

public static String getAppMetadata(Context context, String key) {
    String strValue = "";
    try {/*from w  ww  .j  a  va  2 s.  c om*/
        PackageManager mgr = context.getPackageManager();
        Bundle bundle = mgr.getApplicationInfo(context.getPackageName(), PackageManager.GET_META_DATA).metaData;
        //Bundle bundle = context.getApplicationInfo().metaData;
        if (bundle != null && bundle.containsKey(key)) {
            strValue = bundle.getString(key);
        }
    } catch (Exception e) {
        Log.w(LOG_TAG, e);
    }

    return strValue;
}

From source file:Main.java

/**
 * Get string from extra or from metadata.
 * /*from  w w  w .  j a  v a  2 s  . c  o  m*/
 * @param context
 * @param packagename
 * @param intent
 * @param extra
 * @param metadata
 * @return
 */
public static String getStringExtraOrMetadata(final Context context, final String packagename,
        final Intent intent, final String extra, final String metadata) {
    if (intent.hasExtra(extra) && intent.getStringExtra(extra) != null) {
        return intent.getStringExtra(extra);
    } else {
        //Try meta data of package
        Bundle md = null;
        try {
            md = context.getPackageManager().getApplicationInfo(packagename,
                    PackageManager.GET_META_DATA).metaData;
        } catch (NameNotFoundException e) {
            Log.e(TAG, "Package name not found", e);
        }

        if (md != null && !TextUtils.isEmpty(md.getString(metadata))) {
            return md.getString(metadata);
        } else {
            return "";
        }

    }
}

From source file:Main.java

public static String getMetaValue(Context context, String metaKey) {
    Bundle metaData = null;//ww  w . j  av  a  2s  . co  m
    String metaValue = null;
    if (context == null || metaKey == null) {
        return null;
    }
    try {
        ApplicationInfo ai = context.getPackageManager().getApplicationInfo(context.getPackageName(),
                PackageManager.GET_META_DATA);
        if (null != ai) {
            metaData = ai.metaData;
        }
        if (null != metaData) {
            metaValue = String.valueOf(metaData.get(metaKey));
        }
    } catch (PackageManager.NameNotFoundException e) {

    }
    return metaValue;
}

From source file:Main.java

public static String getActivityMetaData(Activity activity, String key) {
    String data = null;// ww  w .  ja va  2 s . c om
    ActivityInfo info = null;
    try {
        info = activity.getPackageManager().getActivityInfo(activity.getComponentName(),
                PackageManager.GET_META_DATA);
    } catch (NameNotFoundException e) {
        e.printStackTrace();
    }
    if (info != null) {
        data = info.metaData.get(key).toString();
    }
    return data;
}

From source file:Main.java

public static String getApplicationName(final Context context) {
    String appName = "";

    PackageManager packageManager = context.getPackageManager();
    try {/*from   w  w  w  .j  a  va  2s. c  o  m*/
        ApplicationInfo applicationInfo = packageManager.getApplicationInfo(context.getPackageName(),
                PackageManager.GET_META_DATA);
        appName = packageManager.getApplicationLabel(applicationInfo).toString();
    } catch (NameNotFoundException e) {
        e.printStackTrace();
    }

    return appName;
}

From source file:Main.java

public static String getApplicationMetaData(Context context, String key) {
    String data = null;//from ww w . j av a2 s  .  c o m
    ApplicationInfo info = null;
    try {
        info = context.getPackageManager().getApplicationInfo(context.getPackageName(),
                PackageManager.GET_META_DATA);
    } catch (NameNotFoundException e) {
        e.printStackTrace();
    }
    if (info != null && info.metaData != null) {
        try {
            data = info.metaData.get(key).toString();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    return data;
}

From source file:Main.java

/**
 * Get String array from Extra or from Meta-data through resources.
 * //  ww w .  ja v  a2 s.c om
 * @param packagename
 * @param intent
 * @param extra
 * @param metadata
 */
public static String[] getStringArrayExtraOrMetadata(final Context context, final String packagename,
        final Intent intent, final String extra, final String metadata) {
    if (intent.hasExtra(extra) && intent.getStringArrayExtra(extra) != null) {
        return intent.getStringArrayExtra(extra);
    } else {
        //Try meta data of package
        Bundle md = null;
        try {
            md = context.getPackageManager().getApplicationInfo(packagename,
                    PackageManager.GET_META_DATA).metaData;
        } catch (NameNotFoundException e) {
            Log.e(TAG, "Package name not found", e);
        }

        if (md != null) {
            String[] array = null;
            try {
                int id = md.getInt(metadata);
                Resources resources = context.getPackageManager().getResourcesForApplication(packagename);
                array = resources.getStringArray(id);
            } catch (NameNotFoundException e) {
                Log.e(TAG, "Package name not found ", e);
            } catch (NumberFormatException e) {
                Log.e(TAG, "Metadata not valid id.", e);
            } catch (Resources.NotFoundException e) {
                Log.e(TAG, "Resource not found.", e);
            }

            if (array != null) {
                return array;
            } else {
                return null;
            }
        } else {
            return null;
        }
    }
}