无法从 Mac 切换到 iOS,即使从 iOS 切换到 Mac 工作正常

Can't handoff from Mac to iOS, even though handoff from iOS to Mac works fine

我正在尝试在 Mac OS 应用程序和 iOS 应用程序之间实现 Handoff。当 iOS 应用程序位于前台时它工作正常——"Continue Activity" 图标显示在 Mac 的扩展坞中。但是,当 Mac 应用程序位于前台时,我无法让 "Continue Activity" 图标显示在 iOS 设备的锁定屏幕上。

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

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

我向 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~ 切换终于从 Mac 到 iOS!很奇怪在我的项目中有假的多个 info.plist。 Xcode...

隐藏了我的真实信息 plist