ios - 通过 iOS 中定制的可穿戴设备控制 iPhone 的音乐播放器

标签 ios cocoa-touch bluetooth-lowenergy core-bluetooth audio-player

我正在制作一个应用程序,用于连接到定制的可穿戴设备。我没有使用 MFi 程序,而只是使用 CoreBluetooth 框架。我还在硬件方面利用了 ANCS 来处理各种通知。

这里的问题是我无法找到任何方法通过可穿戴设备控制iPhone的音乐播放器。 iOS 是否在 CoreBluetooth 下提供了此控件,因为 Pebble 已经实现了它,或者我们需要专门注册 MFi 程序才能使用此功能。

我尚未找到任何有关控制音乐播放器的相关文章或帖子。因此,任何帮助都将受到高度赞赏。

提前致谢。

最佳答案

在我看来,您所需要做的就是使用 CoreBluetooth 监控可穿戴设备(按钮或您使用的任何东西)上的某些东西,并使用标准的 iOS MediaPlayer 框架在可穿戴设备触发时播放/暂停音乐。如果您不知道如何监控可穿戴设备的特性,请查看 CoreBluetooth Programming Guide: Performing Common Central Role Tasks .

音乐播放器非常易于使用。您使用 MPMusicPlayerController 类来播放和暂停音乐。下面是一个基本示例,其中我使用了 ViewControllerUIButton 来激活播放/暂停功能。适应 CoreBluetooth 实现应该相当容易。

#import "ViewController.h"
@import MediaPlayer;

@interface ViewController ()
@property (strong, nonatomic) MPMusicPlayerController *musicPlayer;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    self.musicPlayer = [MPMusicPlayerController systemMusicPlayer];
}

- (BOOL)isPlaying
{
    if ([self.musicPlayer playbackState] == MPMusicPlaybackStatePlaying) {
        return YES;
    } else {
        return NO;
    }
}

- (IBAction)play
{
    if ([self isPlaying]) [self.musicPlayer pause];
    else                  [self.musicPlayer play];
}

关于ios - 通过 iOS 中定制的可穿戴设备控制 iPhone 的音乐播放器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27859794/

相关文章:

javascript - 在哪里检查我使用模拟器创建的数据库

ios - 如果可用,将项目添加到特定 TableView 行

iphone - 简单 iOS 应用程序的基于 Web 的后端?

android - 如何在 Android 中强制蓝牙 LE "Just Works"配对

python - 如何在 Python3.6 中激活 socket.AF_BLUETOOTH?

ios - 管理每个用户的 Xcode 命令行工具版本

ios - 调用类扩展中定义的方法时无法识别的选择器

objective-c - 带有星期几和一年中月份的 NSArray

iphone - 如果父级处于纵向模式,如何在横向模式下加载 UIViewController?

java - 安卓 : Programmatically pair a bluetooth device; Incorrect pin or passkey on some devices?