无忧处理权限问题!
只需按照以下步骤请求访问照片库的权限。
[AQSPermissions askPhotoLibraryPermissionWithBlock:^(BOOL permission) {
if (permission) {
NSLog(@"Yay! The permission has granted.");
} else {
NSLog(@"You could not get the permission.");
}
}];
- askPhotoLibraryPermissionWithBlock:
如果已授予/拒绝权限,则不会执行任何操作(只需调用带有当前权限的块),因此您在调用此方法之前不需要检查权限是否已检查。
以下代码效果良好。
// XXPrePermissionViewController.m
// In view, show a button and some tutorial.
- (IBAction)didPushAskPermissionButton:(id)sender {
[AQSPermissions askPhotoLibraryPermissionWithBlock:^(BOOL permission) {
if (permission) {
// Go to the main view.
} else {
// Show some help to turn on the permission.
}
}];
}
此代码的效果如下。
或者,如果你只是检查是否已授予访问权限(没有使用 blocks),
BOOL permission = [AQSPermissions checkPhotoLibraryPermission];
请注意,如果没有请求权限,则 - checkPhotoLibraryPermission
返回 NO
。
pod 'AQSPermissionsLib'
并将 AQSPermissions.h
导入以开始使用!
您可以为权限请求添加用法描述,如下所示。
要执行此操作,只需将键 NSPhotoLibraryUsageDescription
添加到 <appname>-Info.plist
并赋予字符串值。进行本地化时,按照以下方式编辑 InfoPlist.strings
。
这可能会提高审批率。
NSCameraUsageDescription = "I want to access your photos.";
只需将您应用的 Bundle Identifier 从 org.openaquamarine.PermissionsLib
更改为 org.openaquamarix.PermissionsLib
。
iOS 会将它们识别为不同的应用。
MIT 许可证 (MIT)
版权所有 (c) 2014 AquaSupport
本协议特此授予任何获得本软件及其相关文档文件(统称为“软件”)副本的个人无限制地使用、复制、修改、合并、出版、分发、再许可和/或销售软件副本的权利,并允许使用软件的个人从事上述活动,前提是必须遵守以下条件
上述版权声明和本许可说明应包含在软件的任何副本或实质部分中。
软件按“原样”提供,不提供任何明示或默示的保证,包括但不限于适销性、特定目的适用性和非侵权性保证。在任何情况下,作者或版权持有人不对任何索赔、损害或其他责任负责,无论是基于合同、侵权或其他原因,无论这些索赔、损害或其他责任是出于、源于或与软件或其使用或其他方式有关。