Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/101.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PFQuery findObjectsInBackgroundWithBlock:in-WatchKit应用程序在模拟器中工作,除非iOS应用程序在前台,否则不在手表上工作_Ios_Objective C_Parse Platform_Watchkit_Apple Watch - Fatal编程技术网

PFQuery findObjectsInBackgroundWithBlock:in-WatchKit应用程序在模拟器中工作,除非iOS应用程序在前台,否则不在手表上工作

PFQuery findObjectsInBackgroundWithBlock:in-WatchKit应用程序在模拟器中工作,除非iOS应用程序在前台,否则不在手表上工作,ios,objective-c,parse-platform,watchkit,apple-watch,Ios,Objective C,Parse Platform,Watchkit,Apple Watch,我正在编写一个WatchKit应用程序,它需要向我们的解析服务器进行查询。由于这是一个网络呼叫,我遵循以下过程: 我使用openParentApplication:reply: 在handleWatchKitExtensionRequest:userInfo:reply:的内部,我使用UIBackgroundTaskIdentifier启动后台任务,以确保iOS应用程序不会立即终止 我设置我的PFQuery并调用findobjectsinbackgroundithblock: 在我传递给PFQu

我正在编写一个WatchKit应用程序,它需要向我们的解析服务器进行查询。由于这是一个网络呼叫,我遵循以下过程:

  • 我使用
    openParentApplication:reply:
  • handleWatchKitExtensionRequest:userInfo:reply:
    的内部,我使用
    UIBackgroundTaskIdentifier
    启动后台任务,以确保iOS应用程序不会立即终止
  • 我设置我的
    PFQuery
    并调用
    findobjectsinbackgroundithblock:
  • 在我传递给PFQuery的块中,我将相关信息回复给watch
  • 我大概一个月前在Apple Watch发布之前写了这个应用程序,它在手表模拟器中运行得很好。昨天我收到了我的Apple Watch,我可以让它在手表上运行,但它不太管用——我设法弄明白,当iOS应用在iPhone的前台积极运行时,一切都很好;但如果应用程序未处于活动状态(例如后台或终止),则
    findobjectsinbackgroundithblock:
    不会实际调用该块,执行似乎只是停止

    有人知道会发生什么吗?我最初的想法是,iOS应用程序在完成查询之前就被挂起/杀死了,但我很确定后台任务会阻止这一点


    注:如果有人偶然发现这个问题,因为他们正在寻找如何让WatchKit应用程序在实际手表上运行,我发现它的运行非常有帮助。

    结果发现,我有几个与openParentApplication相关的问题:回复:,它们似乎都通过使用本文中的技术得到了解决:


    我已经为我自己的应用程序启动了一个后台任务,但我没有使用本文中描述的“虚假解决方案”后台任务,因为我不需要在模拟器中使用它。不过,从手表上看,显然是这样。

    你有没有发现iPhone应用程序中的UIApplicationLegate从未调用过reply()错误?我遇到了一些类似的问题。我从来没有收到过那个特定的错误消息,但可能那个错误消息后来被添加到了Xcode 6.3.1或6.3.2中——这就是问题所在。请看下面我接受的答案,这有帮助吗?基本上,我很确定在解析查询返回之前,iOS应用程序是在后台被杀死的。