PermissionUtil:权限 工具类

版权声明:本文仅供个人学习。 https://blog.csdn.net/qq_34801506/article/details/83957987
import android.app.Activity;
import android.content.pm.PackageManager;
import android.os.Build;
import java.util.ArrayList;

/**
 * Android23 后需要对敏感权限进行使用前的校验
 */
public class PermissionUtil {

    /**
     * 权限校验
     *
     * @param activity
     */
    public static void checkPermission(Activity activity, String... permissions) {
        if (Build.VERSION.SDK_INT >= 23) {
            int requestCode = 0;
            ArrayList<String> permissionsInfo = new ArrayList<String>();

            for (String item : permissions) {
                int check = activity.checkSelfPermission(item);

                if (check != PackageManager.PERMISSION_GRANTED) {
                    requestCode |= 1 << 0;
                    permissionsInfo.add(item);
                }
            }

            if (requestCode > 0) {
                String[] permission = new String[permissionsInfo.size()];
                activity.requestPermissions(permissionsInfo.toArray(permission), requestCode);
            }
        }
    }
}

猜你喜欢

转载自blog.csdn.net/qq_34801506/article/details/83957987