访问和下载点播资源iOS9

Abh*_*sh 4 iphone objective-c ios ios9 on-demand-resources

我正在尝试实现新的iOS9功能应用程序精简,我了解如何在Xcode 7中标记图像并启用按需资源,但是我不了解如何在我的应用程序中实现NSBundleResourceRequest,有人可以帮助我,对此深表感谢

Vla*_*pko 5

Apple 文档中提供了大多数信息。

基本上,您需要这样做:

NSSet *tagsSet = [NSSet setWithObjects:@"resourceTag1", @"resourceTag2", nil];
NSBundleResourceRequest *request = [[NSBundleResourceRequest alloc] initWithTags:tagsSet];
[request conditionallyBeginAccessingResourcesWithCompletionHandler:^(BOOL resourcesAvailable) {
    if (resourcesAvailable) {
        // Start using resources.
    } else {
        [request beginAccessingResourcesWithCompletionHandler:^(NSError * _Nullable error) {
            if (error == nil) {
                // Start using resources.
            }
        }];
    }
}];
Run Code Online (Sandbox Code Playgroud)


Rol*_*som 4

首先,检查资源是否可用。否则下载它们。

这是swift我使用的代码

let tags = NSSet(array: ["tag1","tag2"])
let resourceRequest = NSBundleResourceRequest(tags: tags as! Set<String>)
resourceRequest.conditionallyBeginAccessingResourcesWithCompletionHandler {(resourcesAvailable: Bool) -> Void in
    if resourcesAvailable {
        // Do something with the resources
    } else {
        resourceRequest.beginAccessingResourcesWithCompletionHandler {(err: NSError?) -> Void in
            if let error = err {
                print("Error: \(error)")
            } else {
                // Do something with the resources
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我还发现本指南非常有帮助。