本文整理了Java中android.support.v4.app.Fragment.requestPermissions()
方法的一些代码示例,展示了Fragment.requestPermissions()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Fragment.requestPermissions()
方法的具体详情如下:
包路径:android.support.v4.app.Fragment
类名称:Fragment
方法名:requestPermissions
暂无
代码示例来源:origin: donglua/PhotoPicker
public static boolean checkCameraPermission(Fragment fragment) {
int cameraPermissionState = ContextCompat.checkSelfPermission(fragment.getContext(), CAMERA);
boolean cameraPermissionGranted = cameraPermissionState == PackageManager.PERMISSION_GRANTED;
if (!cameraPermissionGranted) {
fragment.requestPermissions(PermissionsConstant.PERMISSIONS_CAMERA,
PermissionsConstant.REQUEST_CAMERA);
}
return cameraPermissionGranted;
}
代码示例来源:origin: donglua/PhotoPicker
public static boolean checkWriteStoragePermission(Fragment fragment) {
int writeStoragePermissionState =
ContextCompat.checkSelfPermission(fragment.getContext(), WRITE_EXTERNAL_STORAGE);
boolean writeStoragePermissionGranted = writeStoragePermissionState == PackageManager.PERMISSION_GRANTED;
if (!writeStoragePermissionGranted) {
fragment.requestPermissions(PermissionsConstant.PERMISSIONS_EXTERNAL_WRITE,
PermissionsConstant.REQUEST_EXTERNAL_WRITE);
}
return writeStoragePermissionGranted;
}
代码示例来源:origin: crazycodeboy/TakePhoto
public static void requestPermission(@NonNull TContextWrap contextWrap, @NonNull String[] permissions) {
if (contextWrap.getFragment() != null) {
contextWrap.getFragment().requestPermissions(permissions, TConstant.PERMISSION_REQUEST_TAKE_PHOTO);
} else {
ActivityCompat.requestPermissions(contextWrap.getActivity(), permissions, TConstant.PERMISSION_REQUEST_TAKE_PHOTO);
}
}
代码示例来源:origin: Cleveroad/AdaptiveTableLayout
/**
* @return true if all permissions is granted
*/
public static boolean checkOrRequest(@NonNull Fragment fragment, int requestCode, String... permissions) {
if (!check(fragment.getContext(), permissions)) {
fragment.requestPermissions(permissions, requestCode);
return false;
} else return true;
}
}
代码示例来源:origin: pockethub/PocketHub
public static void askForPermission(final Fragment fragment, final int requestCode,
final String permission, @StringRes final int askTitle,
@StringRes final int askContent) {
if (fragment.shouldShowRequestPermissionRationale(permission)) {
MaterialDialog.Builder builder = new MaterialDialog.Builder(fragment.getActivity())
.title(askTitle)
.content(askContent)
.positiveText(android.R.string.yes)
.negativeText(android.R.string.no)
.onPositive((dialog, which) ->
fragment.requestPermissions(new String[]{permission}, requestCode));
builder.show();
} else {
fragment.requestPermissions(new String[]{permission}, requestCode);
}
}
}
代码示例来源:origin: jokermonn/permissions4m
@Override
@SuppressLint("NewApi")
void originalRequest() {
Object context = getContext();
String permission = getRequestPermission();
int code = getRequestCode();
if (context instanceof android.app.Fragment) {
((android.app.Fragment) context).requestPermissions(new String[]{permission}, code);
} else {
((android.support.v4.app.Fragment) context).requestPermissions(new
String[]{permission}, code);
}
}
}
代码示例来源:origin: north2016/T-MVP
.toArray(new String[deniedPermissions.size()]), requestCode);
} else if (object instanceof android.support.v4.app.Fragment) {
((android.support.v4.app.Fragment) object).requestPermissions(deniedPermissions
.toArray(new String[deniedPermissions.size()]), requestCode);
} else {
代码示例来源:origin: k0shk0sh/PermissionHelper
/**
* internal usage.
*/
private void handleMulti(@NonNull String[] permissionNames) {
List<String> permissions = declinedPermissionsAsList(context, permissionNames);
if (permissions.isEmpty()) {
permissionCallback.onPermissionGranted(permissionNames);
return;
}
boolean hasAlertWindowPermission = permissions.contains(Manifest.permission.SYSTEM_ALERT_WINDOW);
if (hasAlertWindowPermission) {
int index = permissions.indexOf(Manifest.permission.SYSTEM_ALERT_WINDOW);
permissions.remove(index);
}
context.requestPermissions(permissions.toArray(new String[permissions.size()]), REQUEST_PERMISSIONS);
}
代码示例来源:origin: k0shk0sh/PermissionHelper
/**
* to be called when explanation is presented to the user
*/
public void requestAfterExplanation(@NonNull String[] permissions) {
ArrayList<String> permissionsToRequest = new ArrayList<>();
for (String permissionName : permissions) {
if (isPermissionDeclined(permissionName)) {
permissionsToRequest.add(permissionName); // add permission to request
} else {
permissionCallback.onPermissionPreGranted(permissionName); // do not request, since it is already granted
}
}
if (permissionsToRequest.isEmpty()) return;
permissions = permissionsToRequest.toArray(new String[permissionsToRequest.size()]);
context.requestPermissions(permissions, REQUEST_PERMISSIONS);
}
代码示例来源:origin: k0shk0sh/PermissionHelper
/**
* to be called when explanation is presented to the user
*/
public void requestAfterExplanation(@NonNull String permissionName) {
if (isPermissionDeclined(permissionName)) {
context.requestPermissions(new String[]{permissionName}, REQUEST_PERMISSIONS);
} else {
permissionCallback.onPermissionPreGranted(permissionName);
}
}
代码示例来源:origin: lovedise/PermissionGen
@TargetApi(value = Build.VERSION_CODES.M)
private static void requestPermissions(Object object, int requestCode, String[] permissions){
if(!Utils.isOverMarshmallow()) {
doExecuteSuccess(object, requestCode);
return;
}
List<String> deniedPermissions = Utils.findDeniedPermissions(getActivity(object), permissions);
if(deniedPermissions.size() > 0){
if(object instanceof Activity){
((Activity)object).requestPermissions(deniedPermissions.toArray(new String[deniedPermissions.size()]), requestCode);
} else if(object instanceof Fragment){
((Fragment)object).requestPermissions(deniedPermissions.toArray(new String[deniedPermissions.size()]), requestCode);
} else {
throw new IllegalArgumentException(object.getClass().getName() + " is not supported");
}
} else {
doExecuteSuccess(object, requestCode);
}
}
代码示例来源:origin: DaxiaK/MyDiary
if (ActivityCompat.shouldShowRequestPermissionRationale(fragment.getActivity(),
Manifest.permission.ACCESS_FINE_LOCATION)) {
fragment.requestPermissions(new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
requestCode);
return false;
} else {
fragment.requestPermissions(new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
requestCode);
return false;
Manifest.permission.CAMERA) || ActivityCompat.shouldShowRequestPermissionRationale(fragment.getActivity(),
Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
fragment.requestPermissions(new String[]{Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE},
requestCode);
return false;
} else {
fragment.requestPermissions(new String[]{Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE},
requestCode);
return false;
if (ActivityCompat.shouldShowRequestPermissionRationale(fragment.getActivity(),
Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
fragment.requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
requestCode);
return false;
} else {
fragment.requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
requestCode);
return false;
代码示例来源:origin: k0shk0sh/PermissionHelper
/**
* internal usage.
*/
private void handleSingle(@NonNull String permissionName) {
if (permissionExists(permissionName)) {// android M throws exception when requesting
// run time permission that does not exists in AndroidManifest.
if (!permissionName.equalsIgnoreCase(Manifest.permission.SYSTEM_ALERT_WINDOW)) {
if (isPermissionDeclined(permissionName)) {
if (isExplanationNeeded(permissionName) && !skipExplanation) {
permissionCallback.onPermissionNeedExplanation(permissionName);
} else {
context.requestPermissions(new String[]{permissionName}, REQUEST_PERMISSIONS);
}
} else {
permissionCallback.onPermissionPreGranted(permissionName);
}
} else {
requestSystemAlertPermission();
}
} else {
permissionCallback.onPermissionDeclined(new String[]{permissionName});
}
}
代码示例来源:origin: mnnyang/ClassSchedule
@TargetApi(Build.VERSION_CODES.M)
private void request(List<String> deniedList, int code) {
String[] deniedPermissions = deniedList.toArray(new String[deniedList.size()]);
if (target instanceof Activity) {
((Activity) target).requestPermissions(deniedPermissions, code);
callbacks.put(code, callback);
} else if (target instanceof Fragment) {
((Fragment) target).requestPermissions(deniedPermissions, code);
callbacks.put(code, callback);
}
}
代码示例来源:origin: qyxxjd/AndroidBasicProject
@TargetApi(23)
private static void executePermissionsRequest(Object object, String[] perms, int requestCode) {
checkCallingObjectSuitability(object);
if (object instanceof Activity) {
ActivityCompat.requestPermissions((Activity) object, perms, requestCode);
} else if (object instanceof Fragment) {
((Fragment) object).requestPermissions(perms, requestCode);
} else if (object instanceof android.app.Fragment) {
((android.app.Fragment) object).requestPermissions(perms, requestCode);
}
}
代码示例来源:origin: HanderWei/PermissionBestPractice
@TargetApi(23)
static void executePermissionsRequest(Object object, String[] perms, int requestCode) {
checkCallingObjectSuitability(object);
if (object instanceof Activity) {
ActivityCompat.requestPermissions((Activity) object, perms, requestCode);
} else if (object instanceof Fragment) {
((Fragment) object).requestPermissions(perms, requestCode);
} else if (object instanceof android.app.Fragment) {
((android.app.Fragment) object).requestPermissions(perms, requestCode);
}
}
代码示例来源:origin: arvinljw/PictureSelector
@TargetApi(23)
private static void executePermissionsRequest(Object object, String[] perms, int requestCode) {
checkCallingObjectSuitability(object);
if (object instanceof Activity) {
ActivityCompat.requestPermissions((Activity) object, perms, requestCode);
} else if (object instanceof Fragment) {
((Fragment) object).requestPermissions(perms, requestCode);
} else if (object instanceof android.app.Fragment) {
((android.app.Fragment) object).requestPermissions(perms, requestCode);
}
}
代码示例来源:origin: xinshoucb/EasyPermissionsEx
@TargetApi(23)
private static void executePermissionsRequest(Object object, String[] perms, int requestCode) {
checkCallingObjectSuitability(object);
if (object instanceof Activity) {
ActivityCompat.requestPermissions((Activity) object, perms, requestCode);
} else if (object instanceof Fragment) {
((Fragment) object).requestPermissions(perms, requestCode);
} else if (object instanceof android.app.Fragment) {
((android.app.Fragment) object).requestPermissions(perms, requestCode);
}
}
代码示例来源:origin: KunMinX/android-viabus-architecture
public static void requestPermissionInFragment(IPermissionCallback iPermissionCallback, Fragment fragment, String... permissions) {
sIPermissionCallback = iPermissionCallback;
for (String permission : permissions) {
if (needPermission(fragment.getActivity(), permission)) {
fragment.requestPermissions(new String[]{permission}, REQUEST_PERMISSIONS);
}
}
}
代码示例来源:origin: jakubkinst/Android-ViewModelBinding
public void requestPermissions(String[] permissions, PermissionCallback callback) {
mCallback = callback;
if(mViewModel.getView() instanceof Fragment) {
((Fragment) mViewModel.getView()).requestPermissions(permissions, RC_PERMISSIONS);
} else {
ActivityCompat.requestPermissions(mViewModel.getActivity(), permissions, RC_PERMISSIONS);
}
}
内容来源于网络,如有侵权,请联系作者删除!