1

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

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

    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];
4

1 回答 1

1

iOS 6.0有更好的方法来做到这一点。

[ALAssetsLibrary authorizationStatus];

方法说明

授权状态枚举

于 2013-02-01T20:58:03.573 回答