dog*_*god 32 xcode apple-push-notifications ios ios10 xcode-debugger
我正在构建一组通知扩展(服务/内容).我无法连接到Xcode调试器,甚至无法注销设备日志或控制台.
有没有办法看到任何类型的输出?
Sau*_*ati 30
我按照brendan的答案尝试过,但根本不适合我!
我在控制台中遇到错误
Program ended with exit code: 0
Run Code Online (Sandbox Code Playgroud)
然后在谷歌搜索后,我已经检查了 这个答案.然而这对我来说也没有用!
然后我再次尝试了相同的步骤,在回答中,停止我当前正在运行的应用程序.然后按照相同的步骤.为了清楚起见,我正在编写以下步骤:
运行包含扩展程序的应用程序后,
1) Set your breakpoint in the extension
2) Select Debug / Attach to Process by PID or name
3) Enter the name of the extension target
4) Trigger the push notification
Run Code Online (Sandbox Code Playgroud)
在第2步之前,请确保停止当前正在运行的应用.
这有助于我在扩展中的断点处停止并查看扩展日志:
Choose an app to runMessage from debugger: Terminated due to signal 9在步骤6之后,不会手动终止它.[ 更新:在设备上手动终止应用程序似乎没有必要,如果它不起作用,请尝试任何一种方式.]Debug > Attach to Process by PID or Name就我而言,上述所有方法都有一些错误。重点是,您需要发送一次推送,然后通过调试器连接,然后发送推送以进行调试。所以,完整列表:
启动应用程序(不是扩展程序)。
从 XCode 停止应用程序。
发送一键。
通过“按 PID 或名称附加到进程...”连接到您的扩展进程。
发送另一个推送。
小智 5
通知服务扩展(NSE)实际上不是您的应用程序的一部分,而是说它具有与您的应用程序不同的进程ID(PID)的扩展。您可以转到“调试”选项卡,让XCode监听电话上的每个进程,向下滚动到“附加到进程”,然后查看您的NSE是否列在“喜欢的目标”下。如果不存在,则尝试向设备推送另一个推送通知,并在设备出现时附加到它。
现在,在调试导航器中,您可以看到NES进程,并且可以成功对其进行调试。
如果您已经尝试了上述所有解决方案,但仍然摸不着头脑,想知道为什么断点 point 没有被调用。然后尝试检查deployment target您的操作系统extension应该小于或等于您的设备操作系统。
对我来说,部署目标高于设备操作系统。
| 归档时间: |
|
| 查看次数: |
10058 次 |
| 最近记录: |