Example usage for android.content.pm PackageManager checkPermission

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

Introduction

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

Prototype

@CheckResult
public abstract @PermissionResult int checkPermission(String permName, String pkgName);

Source Link

Document

Check whether a particular package has been granted a particular permission.

Usage

From source file:Main.java

public static boolean hasPermission(Context context, String permissionStr) {
    PackageManager pm = context.getPackageManager();
    boolean permission = (PackageManager.PERMISSION_GRANTED == pm.checkPermission(permissionStr,
            context.getPackageName()));//  www.  j a  va 2s  .  co m
    return permission;
}

From source file:Main.java

/**
 * Find out if we have the permission to access K-9 Mail's content provider.
 *
 * @param context/*from  ww  w  .ja v  a2 s.  c  o m*/
 *         Used to retrieve the package manager.
 *
 * @return {@code true} if we have the needed permission, {@code false} otherwise.
 */
public static final boolean hasK9ReadPermission(Context context) {
    PackageManager manager = context.getPackageManager();
    try {
        return (manager.checkPermission(PERMISSION,
                context.getPackageName()) == PackageManager.PERMISSION_GRANTED);
    } catch (Exception e) {
        return false;
    }
}

From source file:Main.java

public static boolean checkPermission(Context context, String permissionName) {
    PackageManager pkm = context.getPackageManager();
    boolean has_permission = (PackageManager.PERMISSION_GRANTED == pkm.checkPermission(permissionName,
            context.getPackageName()));/*from   w  ww.java  2s .  c om*/
    return has_permission;

}

From source file:Main.java

public static String[] getNetType(Context paramContext) {
    String[] arrayOfString = { "Unknown", "Unknown" };
    PackageManager localPackageManager = paramContext.getPackageManager();
    if (localPackageManager.checkPermission("android.permission.ACCESS_NETWORK_STATE",
            paramContext.getPackageName()) != 0) {
        arrayOfString[0] = "Unknown";
        return arrayOfString;
    }//from w w w  .  ja va  2s.  c  om
    ConnectivityManager localConnectivityManager = (ConnectivityManager) paramContext
            .getSystemService("connectivity");
    if (localConnectivityManager == null) {
        arrayOfString[0] = "Unknown";
        return arrayOfString;
    }
    NetworkInfo localNetworkInfo1 = localConnectivityManager.getNetworkInfo(1);
    if (localNetworkInfo1 != null && localNetworkInfo1.getState() == NetworkInfo.State.CONNECTED) {
        arrayOfString[0] = "2";
        return arrayOfString;
    }
    NetworkInfo localNetworkInfo2 = localConnectivityManager.getNetworkInfo(0);
    if (localNetworkInfo2 != null && localNetworkInfo2.getState() == NetworkInfo.State.CONNECTED) {
        arrayOfString[0] = "1";
        arrayOfString[1] = localNetworkInfo2.getSubtypeName();
        return arrayOfString;
    }
    return arrayOfString;
}

From source file:Main.java

private static boolean isPermissionGranted(Context context, String paramString) {
    PackageManager localPackageManager = context.getPackageManager();
    if (localPackageManager != null) {
        return localPackageManager.checkPermission(paramString, context.getPackageName()) == 0;
    }/*from   w ww  .java  2  s . c o m*/
    return false;
}

From source file:com.commonsware.android.sawmonitor.PackageReceiver.java

static boolean hasSAW(Context ctxt, String pkg) {
    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(ctxt);
    Set<String> whitelist = prefs.getStringSet(WhitelistReceiver.PREF_WHITELIST, new HashSet<String>());

    if (whitelist.contains(pkg)) {
        return (false);
    }/*from   www .j a v  a2 s.  c  o m*/

    PackageManager pm = ctxt.getPackageManager();

    return (pm.checkPermission(SYSTEM_ALERT_WINDOW, pkg) == PackageManager.PERMISSION_GRANTED);
}

From source file:com.commonsware.android.sawmonitor.SAWDetector.java

private static boolean hasSAW(Context ctxt, String pkg) {
    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(ctxt);
    Set<String> whitelist = prefs.getStringSet(WhitelistReceiver.PREF_WHITELIST, new HashSet<String>());

    if (whitelist.contains(pkg)) {
        return false;
    }/* ww w  .  ja  va  2  s.  c  om*/

    PackageManager pm = ctxt.getPackageManager();

    return (pm.checkPermission(SYSTEM_ALERT_WINDOW, pkg) == PackageManager.PERMISSION_GRANTED);
}

From source file:com.nextgis.libngui.util.PermissionUtil.java

public static boolean hasPermission(Context context, String permission) {

    PackageManager pm = context.getPackageManager();
    if (pm == null) {
        if (ConstantsUI.DEBUG_MODE) {
            Log.d(ConstantsUI.TAG, "Permission " + permission + " is not granted");
        }/*from w  ww  .j  ava2 s . co  m*/
        return false;
    }
    int hasPerm = pm.checkPermission(permission, context.getPackageName());
    if (ConstantsUI.DEBUG_MODE) {
        Log.d(ConstantsUI.TAG, "Permission " + permission + " is "
                + (hasPerm == PackageManager.PERMISSION_GRANTED ? "granted" : "not granted"));
    }
    return hasPerm == PackageManager.PERMISSION_GRANTED;
}

From source file:org.restcomm.app.utillib.Utils.Global.java

public static boolean checkPermission(Context context, String permission) {
    PackageManager pkMan = context.getPackageManager();
    int permissionValue = pkMan.checkPermission(permission, context.getPackageName());
    if (permissionValue == 0) {
        return true;
    }/* w  w  w.j av  a  2s. c  o  m*/
    return false;
}

From source file:org.restcomm.app.qoslib.Utils.QosAPI.java

/**
 * Check whether an Active test EventType has Android permissions needed to run
 *
 * @param context pass your context/*from w  ww. j a v  a  2 s.  c  o m*/
 * @param eventType {@link EventType} type of event to check
 * @param trigger 0 to trigger the event manually, 1 to see if it can trigger the event automatically
 * @return true if EventType is enabled to run
 */
public static boolean isEventPermitted(Context context, EventType eventType, int trigger) {
    if (eventType == EventType.SMS_TEST) {
        if (!PreferenceKeys.getSMSPermissionsAllowed(context, true))
            return false;
    }
    // Allow auto-connection tests?
    else if (eventType == EventType.LATENCY_TEST && trigger == 1) {
        if (context instanceof MainService) // this check only applies if called from the MainService
        {
            MainService svc = (MainService) context;
            String reason = null;
            int allow = PreferenceManager.getDefaultSharedPreferences(context)
                    .getInt(PreferenceKeys.Miscellaneous.AUTO_CONNECTION_TESTS, 1);
            if (PhoneState.isNetworkWifi(context))
                reason = "on wifi";
            if (!svc.isOnline())
                reason = "offline";
            if (allow != 1 && !LoggerUtil.isDebuggable())
                reason = "not enabled";
            if (svc.getPhoneStateListener() != null && (svc.getPhoneState().isCallConnected() == true
                    || svc.getPhoneState().isCallDialing() == true))
                reason = "phone call";
            if (svc.getUsageLimits().getUsageProfile() <= UsageLimits.MINIMAL)
                reason = "minimal";
            if (svc.getUsageLimits().getDormantMode() >= 1)
                reason = "dormant";
            if (reason != null) {
                LoggerUtil.logToFile(LoggerUtil.Level.ERROR, TAG, "runLatencyTest cancelled ", reason);
                return false;
            }
        }
    } else if (eventType == EventType.EVT_VQ_CALL) {
        PackageManager pkMan = context.getPackageManager();
        int voiceCallPermissionValue = pkMan.checkPermission("android.permission.CALL_PHONE",
                context.getPackageName())
                | pkMan.checkPermission("android.permission.RECORD_AUDIO", context.getPackageName());
        if (voiceCallPermissionValue != 0)
            return false;
    } else if (trigger > 0 && (eventType == EventType.VIDEO_TEST || eventType == EventType.WEBPAGE_TEST
            || eventType == EventType.AUDIO_TEST || eventType == EventType.YOUTUBE_TEST)) {
        PackageManager pkMan = context.getPackageManager();
        int permissionValue = pkMan.checkPermission("android.permission.SYSTEM_ALERT_WINDOW",
                context.getPackageName());
        if (permissionValue != 0)
            return false;
    }
    return true;
}