iOS 请求权限封装类的实例代码

 更新时间:2018年01月15日 09:53:35   作者:键盘舞者113  
下面小编就为大家分享一篇iOS 请求权限封装类的实例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

直接上代码

#import <Foundation/Foundation.h>
#import <AVFoundation/AVFoundation.h>
#import <AssetsLibrary/AssetsLibrary.h>
#import <Photos/Photos.h>
#import <CoreLocation/CoreLocation.h>
@interface PermissionUtil : NSObject
+(Boolean)JudgeCameraPermission;
+(Boolean)JudgeLocationPermission;
@end
#import "PermissionUtil.h"
@implementation PermissionUtil

+(BOOL)isCanUsePhotos {
 if ([[[UIDevice currentDevice] systemVersion] floatValue] < 8.0) {
  ALAuthorizationStatus author =[ALAssetsLibrary authorizationStatus];
  if (author == kCLAuthorizationStatusRestricted || author == kCLAuthorizationStatusDenied) {
   //无权限
   return NO;
  }
 }
 else {
  PHAuthorizationStatus status = [PHPhotoLibrary authorizationStatus];
  if (status == PHAuthorizationStatusRestricted ||
   status == PHAuthorizationStatusDenied) {
   //无权限
   return NO;
  }
 }
 return YES;
}

+(Boolean)JudgeCameraPermission{
 AVAuthorizationStatus authStatus = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo];
 if (authStatus == AVAuthorizationStatusRestricted || authStatus ==AVAuthorizationStatusDenied||![self isCanUsePhotos])
 {
  return NO;
 }
 return YES;
}

+(Boolean)JudgeLocationPermission{
 if ([CLLocationManager locationServicesEnabled] && ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorizedWhenInUse || [CLLocationManager authorizationStatus] == kCLAuthorizationStatusNotDetermined || [CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized)) {
  return YES;
 }else if ([CLLocationManager authorizationStatus] ==kCLAuthorizationStatusDenied) {
  return NO;
 }
 return NO;
}
@end

以上这篇iOS 请求权限封装类的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

相关文章

  • iOS开发数独小游戏实例

    iOS开发数独小游戏实例

    这篇文章主要为大家详细介绍了iOS开发数独小游戏实例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • IOS中使用UIWebView 加载网页、文件、 html的方法

    IOS中使用UIWebView 加载网页、文件、 html的方法

    UIWebView 是用来加载加载网页数据的一个框,接下来通过本文给大家介绍IOS中使用UIWebView 加载网页、文件、 html的方法,对本文详情感兴趣的朋友一起学习吧
    2016-02-02
  • iOS实现代码只执行一次

    iOS实现代码只执行一次

    本文给大家分享的是在iOS中控制代码在整个软件生命周期中只运行一次的代码,有需要的小伙伴可以参考下。
    2016-03-03
  • IOS开发之@property的详细介绍

    IOS开发之@property的详细介绍

    这篇文章主要介绍了IOS开发之@property的详细介绍的相关资料,希望通过本文能帮助到大家,大家理解并会使用,需要的朋友可以参考下
    2017-09-09
  • iOS App设计模式开发中对建造者模式的运用实例

    iOS App设计模式开发中对建造者模式的运用实例

    这篇文章主要介绍了iOS App设计模式开发中对建造者模式的运用实例,示例代码为传统的Objective-C,需要的朋友可以参考下
    2016-04-04
  • 阿里数据iOS端启动速度优化心得

    阿里数据iOS端启动速度优化心得

    本篇文章给大家详细分析了阿里数据iOS端启动速度优化的知识点以及心得,对此有兴趣的朋友参考学习下吧。
    2018-02-02
  • IOS10 隐私权限设置实例详解

    IOS10 隐私权限设置实例详解

    这篇文章主要介绍了IOS10 隐私权限设置实例详解的相关资料,本文主要是介绍,在使用相机功能是遇到错误,这里说明该如何解决,需要的朋友可以参考下
    2016-12-12
  • iOS推送之本地通知UILocalNotification

    iOS推送之本地通知UILocalNotification

    这篇文章主要为大家详细介绍了iOS本地通知UILocalNotification,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • ios通过按钮点击异步加载图片

    ios通过按钮点击异步加载图片

    本文给大家汇总了几种IOS中实现异步加载图片的方法,十分的简单实用,有需要的小伙伴可以参考下。
    2015-05-05
  • iOS中最全的各种定时器使用教程

    iOS中最全的各种定时器使用教程

    这篇文章主要给大家介绍了关于iOS中最全的各种定时器的使用教程,文中通过示例代码介绍的非常详细,通过文中介绍的最全的定时器相信会对各位iOS开发者们带来一定的帮助,需要的朋友们下面随着小编来一起学习学习吧。
    2017-09-09

最新评论