我认为这是检查用户对资源访问的一种非常糟糕的方法。

有没有更好的方法来获得用户访问权限?

    ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
   // create library

    ALAssetsLibraryAssetForURLResultBlock resultblock = ^(ALAsset *myasset)
    {
        accessGiven = YES;
        return ;
    };
    void (^assetGroupEnumberatorFailure)(NSError *) = ^(NSError *error) {
        accessGiven =  NO;
        return;
    };

   // create 2 blocks

    NSURL *url = [[NSURL alloc] initWithString:@" "];
    [library assetForURL:url resultBlock:resultblock failureBlock:assetGroupEnumberatorFailure];
  // use empty url to check acces..

    [library release];

最佳答案

iOS 6.0拥有更好的方法。

[ALAssetsLibrary authorizationStatus];


Method Description

Authorization Status Enum

关于objective-c - 有没有使用ALAssetsLibrary检查用户访问权限的快速方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8851947/

10-08 21:04