通过 iPhone 从 Apple Watch 播放声音
Posted
技术标签:
【中文标题】通过 iPhone 从 Apple Watch 播放声音【英文标题】:Playing sound from Apple Watch through iPhone 【发布时间】:2015-03-24 03:59:20 【问题描述】:我正在尝试将音效整合到我一直在开发的 Apple Watch 应用程序中(用 Objective-C 编写),但我对第三方应用程序不允许直接从手表。作为一种解决方法,我正在寻找是否有办法通过配对设备的扬声器播放指定的声音。我在这里找到了一个这样的线程:
Play sound from Apple Watch speaker
但是,经过验证的答案中的链接此时似乎已关闭。简而言之,如何通过配对的 iPhone 扬声器播放 Apple Watch 触发的音效?另外,是否可以让设备从手表上振动?任何帮助是极大的赞赏。
【问题讨论】:
【参考方案1】:很遗憾,AppleWatch 不允许开发者播放或录制音频。您可以像模拟器一样从 iPhone 扬声器播放声音。如果您在 WatchKit 扩展上实现 AVAudioPlayer,您将在 Mac 中收听,因为 iPhone 模拟器正在为您播放。
取自 Apple 开发者论坛:
由于 simplegames 显示的代码在 iPhone 模拟器而不是手表模拟器上运行,并且手表模拟器上的按钮按下导致 iPhone 模拟器代码激活音频播放器,因此您的 mac 正在模拟来自 iPhone 的声音。
没有。无法在 Apple Watch 上使用 WatchKit 播放声音。
【讨论】:
允许应用程序录制音频,就像 SimpleMic、MP3 Recorder 等一样【参考方案2】:我让手表播放这样的音频。但是,它确实显示了媒体播放器。它并不理想,但它有效。
#import <Foundation/Foundation.h>
NSURL *yourURL = [myBundle URLForResource:@"yourAudioFile" withExtension:@"wav"];
NSDictionary *options = @WKMediaPlayerControllerOptionsAutoplayKey : @YES;
[self presentMediaPlayerControllerWithURL:yourURL options:options completion:^(BOOL didPlayToEnd, NSTimeInterval endTime, NSError * __nullable error) if (error)NSLog(@"Error: %@", [error description]);];
【讨论】:
以上是关于通过 iPhone 从 Apple Watch 播放声音的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Apple Watch 获取传感器数据到 iPhone?
为啥我的 iPhone 无法从 Apple Watch 获取心率数据,但手表扩展程序却可以?
为啥我的 iPhone 无法从 Apple Watch 获取心率数据,但手表扩展程序却可以?
当 Apple Watch 处于后台状态或睡眠模式时,我们如何从 iphone 向 Apple Watch 发送消息?