diff options
Diffstat (limited to 'mobile/android/geckoview/src/main/java/org/mozilla/gecko/permissions/PermissionsHelper.java')
-rw-r--r-- | mobile/android/geckoview/src/main/java/org/mozilla/gecko/permissions/PermissionsHelper.java | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/mobile/android/geckoview/src/main/java/org/mozilla/gecko/permissions/PermissionsHelper.java b/mobile/android/geckoview/src/main/java/org/mozilla/gecko/permissions/PermissionsHelper.java new file mode 100644 index 000000000..945a81f43 --- /dev/null +++ b/mobile/android/geckoview/src/main/java/org/mozilla/gecko/permissions/PermissionsHelper.java @@ -0,0 +1,32 @@ +/* -*- Mode: Java; c-basic-offset: 4; tab-width: 4; indent-tabs-mode: nil; -*- + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +package org.mozilla.gecko.permissions; + +import android.app.Activity; +import android.content.Context; +import android.content.pm.PackageManager; +import android.support.v4.app.ActivityCompat; +import android.support.v4.content.ContextCompat; + +/* package-private */ class PermissionsHelper { + private static final int PERMISSIONS_REQUEST_CODE = 212; + + public boolean hasPermissions(Context context, String... permissions) { + for (String permission : permissions) { + final int permissionCheck = ContextCompat.checkSelfPermission(context, permission); + + if (permissionCheck != PackageManager.PERMISSION_GRANTED) { + return false; + } + } + + return true; + } + + public void prompt(Activity activity, String[] permissions) { + ActivityCompat.requestPermissions(activity, permissions, PERMISSIONS_REQUEST_CODE); + } +} |