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

回到顶部