使用 openSystem API 从 Apple Watch 拨打电话?

Posted

技术标签:

【中文标题】使用 openSystem API 从 Apple Watch 拨打电话?【英文标题】:Phone call from Apple Watch with openSystem API? 【发布时间】:2015-06-14 08:51:08 【问题描述】:

当我观看 WWDC 2015 会议视频"Introducing WatchKit for watchOS 2"(13:29)时,我看到可以使用 openSystem API 在 Apple Watch 上直接拨打电话。如何在 Swift 中使用这个 API?

【问题讨论】:

您是否尝试查找 openSystem API 的文档?此类事情通常在 API 文档中进行说明。 【参考方案1】:

您可以使用openSystemURL 方法,该方法在共享WKExtension 对象上可用。将tel: URL 传递给此方法以发起电话呼叫。

if let telURL=NSURL(string:"tel:5553478") 
    let wkExtension=WKExtension.sharedExtension()
    wkExtension.openSystemURL(telURL)

【讨论】:

我把它放在 IBAction 中,当我触摸 Button 时没有任何反应。 您是否设置了断点以确保正在调用代码并且 url 不为零? 现在它在显示加载指示器后崩溃。 我的代码:@IBAction func phoneCall() if let telURL=NSURL(string:"tel:5553478") let wkExtension=WKExtension.sharedExtension() wkExtension.openSystemURL(telURL) 完全有可能。毕竟,它测试版。【参考方案2】:

beta 1 中似乎存在一个错误,不允许在电话号码上使用 openSystemURL。我已经看到了几个示例项目,并且试图将自己的头撞到墙上。没有我见过的实施。 SMS 可以正常工作。

【讨论】:

以上是关于使用 openSystem API 从 Apple Watch 拨打电话?的主要内容,如果未能解决你的问题,请参考以下文章

地理编码服务器 Apple API 从何处获取其信息

如何从 Cognito 获取 Apple 刷新令牌?

有没有像 google Place Search API 这样的 Apple API?

在 Apple 的 Cocoa API 中,为啥从主线程调用 NSApplicationMain 很重要?

Apple Watch 活动应用 API

Apple Watch:这是让 Apple Watch 应用获取新数据的好方法吗?