5

我正在尝试在 Mac OS 应用程序和 iOS 应用程序之间实现切换。当 iOS 应用程序位于前台时,它可以正常工作——“继续活动”图标显示在 Mac 的 Dock 中。但是,当 Mac 应用程序处于前台时,我无法在 iOS 设备的锁定屏幕上显示“继续活动”图标。

两个应用程序都使用相同的团队凭据进行签名。两台设备都登录到同一个 iCloud 帐户(通过 iCloud.com 验证)并打开蓝牙。从 Safari 等 Mac 应用程序到 iOS 设备的切换工作正常。并且在运行该应用程序的两台 iOS 设备之间切换工作正常。有任何想法吗?

4

2 回答 2

2

我向 Apple 报告了错误报告,Apple 告诉我,我的 iOS 应用程序的 info.plist 根本没有声明 NSUserActivityTypes,而我的 Mac 应用程序的 info.plist 正确地声明了 NSUserActivityTypes,导致切换只能从 iOS 工作到 Mac 而不是 Mac到 iOS。

This issue is due to the iOS version of the app not claiming the activity type in the info.plist, resulting in the iOS device not knowing what app to give the handoff to.

在左侧导航面板的 Xcode 项目中,我打开 info.plist 并且 NSUserActivityTypes 确实已经存在。但是当我使用项目文件夹中的 Finder 搜索它时,我意识到我的项目中有多个 info.plist 文件。然后我用 Finder 进入我的项目文件夹并试图找到这个 info.plist 文件,但是当我在 projectName/projectName 中找到一个文件时,它打开了一个不同的 info.plist 文件,我最初无法通过 Xcode 项目导航器访问该文件。不同的 info.plist 文件没有 NSUserActivityTypes,所以我添加了它,woala~handoff 终于从 Mac 到 iOS 工作了!很奇怪,我的项目中有多个假的 info.plist。我的真实信息列表被 Xcode 隐藏了......

于 2018-07-24T05:56:40.557 回答
0

我想我可能已经找到了答案。在开发人员中心手动创建配置文件并将其导入mac项目(关闭自动管理签名)后,我能够使其工作。在解决了同样的问题并且像我一样没有得到 DTS 的帮助之后,这篇文章有所帮助。

于 2017-05-25T15:06:23.800 回答