Iphone - How to enable application access to media

2020-06-16 04:29发布

问题:

OK, so I have had this problem before and solved it unknowingly and now it is reoccurring!

"error: 
 Error Domain=ALAssetsLibraryErrorDomain Code=-3312 "Global denied access" UserInfo=0x169aa0 
 {NSLocalizedFailureReason=The user has denied all applications access to their media., 
 NSLocalizedRecoverySuggestion=This setting can be changed in Preferences., 
 NSLocalizedDescription=Global denied access}"

Please NOTE://I do not get this issue in the simulator - my code for iterating assets works perfectly on the simulator.

Surely this is an easy fix but be damned if I can find anything under 'Preferences' anywhere that assists.

Please halp!

回答1:

What a joke - Location services must be turned on...

What a JOKE!



回答2:

Simply go to Settings>General>Reset>Reset Location Warnings.

However this won't help your users out but it is useful for development



回答3:

For iOS 4.2 and later use CLLocationManager authorizationStatus class method.

it will return a CLAuthorizationStatus enum ( declared at CLLocationManager.h ), you can test the return for kCLAuthorizationStatusAuthorized.

if ( [CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized ) {
    // do your stuff
} else {
   // sorry user, you must enable us to see your location if you want to use YOURS assets library
}

iOS 6 introduce this method for ALAssetsLibrary class also.



标签: iphone media