iOS 9:如何在不出现错误257的情况下访问UIApplicationLaunchOptionsURLKey?
我的didFinishLaunchingWithOptions
方法存储UIApplicationLaunchOptionsURLKey
的文件名并尝试打开它。iOS 9:如何在不出现错误257的情况下访问UIApplicationLaunchOptionsURLKey?
-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
NSURL* url = [launchOptions objectForKey:UIApplicationLaunchOptionsURLKey];
NSError* err;
if ([url checkResourcesIsReachableAndReturnError:&err])
{
...
}
}
对于iOS 8,此代码正常工作。我的应用程序被启动,因为某些其他应用程序中选择“打开”我的应用程序,但适用于iOS 9这个代码不工作,我也得到
ERR = NSCocoaErrorDomain:代码257:“文件‘XXX’无法打开 ,因为您无权查看它。“
“的操作无法完成操作不允许”
非常重要的注意事项:当我的应用程序被关闭,而用户试图从另一个应用程序打开文件这只发生。我发现在UIApplicationLaunchOptionsURLKey中发送的文件确实与我的应用程序不在同一个沙箱中。如果它没有关闭,只是最小化,所有的行为都很好,因为UIApplicationLaunchOptionsURLKey在同一个沙箱中。
回答:
这是在IOS 9的β3的问题,即在测试解决4.
didFinishLaunchingWithOptions方法用在,这是在不同的应用程序的空间UIApplicationLaunchOptionsURLKey文件路径触发,因此它被沙盒和iPhone应用程序无法访问它。
无论如何,苹果现在解决了这个问题。
以上是 iOS 9:如何在不出现错误257的情况下访问UIApplicationLaunchOptionsURLKey? 的全部内容, 来源链接: utcz.com/qa/259471.html