标签: external-accessory

这个iOS应用程序如何通过USB端口进行通信?

此应用程序承诺将您的iOS设备转换为第二台显示器,并使用标准USB电缆连接到计算机,而不是所有其他类似应用程序使用的网络.

当我听说它时,它还没有,所以我认为这是一个骗局.令我惊讶的是,他们发布了应用程序,它实际上按照描述工作.

它是如何工作的 ?据我所知,在iOS中没有用于驱动USB端口的API,而通过USB通过标准充电/同步电缆连接的计算机不算作MFI附件.

请注意,他们在下载页面上免费提供服务器软件(安装在Mac上并将桌面流式传输到设备上),免费进行逆向工程,这可能会对此有所了解,但遗憾的是我没有这方面的技能.那.

external-accessory ios

19
推荐指数
2
解决办法
2万
查看次数

如何在iOS中找到蓝牙音频设备

好吧,我正在开发一个有趣的项目,我需要为我的iOS应用程序启用蓝牙音频支持.

我遇到的障碍是我甚至无法开始获得连接的蓝牙音频设备列表.即使我的iPhone 5S识别我的耳机(准确地说是一个~3 - 4岁的LG HBM-230)并通过它播放音频进行电话呼叫,但当我查询两者时,BOTH External Accessory和CoreBluetooth都没有给我任何帮助.

我将我自己的代码基于我发现的CoreBluetoothExternal Accessory框架的问题和答案.

当我的代码只是试图" scanForPeripheralsWithServices:nil" 设置 - >蓝牙说的任何蓝牙设备可见并连接时,下面的代码只是CBCentralManagerStatePoweredOn在控制台中的" "消息之外不会出现一次命中.

我的代码中的这一行(带有有效的EAAccessoryManager实例)

NSArray * connectedDevices = [self.eAAccessoryManager connectedAccessories];
Run Code Online (Sandbox Code Playgroud)

还带有一个nil数组.

我能做错什么?

顺便说一下,我已将此代码作为GitHub项目提供.

@implementation BluetoothManager

+ (BluetoothManager *)sharedInstance
{
    static dispatch_once_t pred = 0;
    __strong static id _bluetoothMGR = nil;

    dispatch_once(&pred, ^{
        _bluetoothMGR = [[BluetoothManager alloc] init];
    });

    return _bluetoothMGR;
}

- (id)init
{
    self = [super init];
    if(self)
    {
        dispatch_queue_t …
Run Code Online (Sandbox Code Playgroud)

iphone audio external-accessory ios core-bluetooth

15
推荐指数
1
解决办法
1万
查看次数

连接Lightning kBD或Smart KBD后没有EAAccessoryDidConnectNotification和EAAccessoryDidDisconnectNotification

我不能让这两个通知EAAccessoryDidConnectNotificationEAAccessoryDidDisconnectNotification连接闪电大骨节病和大骨节病灵动与我的应用程序后.但它适用于iOS9.3,我的代码如下,

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(_accessoryDidConnect:) name:EAAccessoryDidConnectNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(_accessoryDidDisconnect:) name:EAAccessoryDidDisconnectNotification object:nil];
[[EAAccessoryManager sharedAccessoryManager] registerForLocalNotifications];
Run Code Online (Sandbox Code Playgroud)

原因是什么?

PS:我在日志中收到以下消息.找不到" com.apple.private.externalaccessory.showallaccessories "权利

objective-c nsnotificationcenter external-accessory ios

14
推荐指数
1
解决办法
2697
查看次数

供应配置文件不支持无线附件配置功能

从Xcode 7.3升级到Xcode 8后,我收到一个错误:

供应配置文件"iOS Team Provisioning Profile:*"不支持无线附件配置功能.

我可以知道如何解决这个问题吗?

external-accessory provisioning-profile xcode8

13
推荐指数
2
解决办法
1万
查看次数

带有iOS ExternalAccessoryFramework的蓝牙经典版

我正在研究一个iOS应用程序的开发,该应用程序将使用iOS支持的蓝牙配置文件与蓝牙经典设备进行通信

据我了解,这应该可以使用外部附件框架,不应该要求参与MFi计划.从MFi常见问题解答:

什么类型的配件和技术不属于MFi计划?

不使用上述任何MFi许可技术的附件不属于MFi计划.例如:

到现在为止还挺好.在外部附件框架文档介绍说,(强调):

外部附件框架支持通过30针底座连接器或使用蓝牙无线连接与连接到基于iOS的设备的外部硬件.支持外部附件的应用程序必须确保正确配置其Info.plist文件.具体而言,您必须包含UISupportedExternalAccessoryProtocols密钥才能声明应用程序支持的特定硬件协议.

上面提到的"特定硬件协议"的值在哪里记录?我假设这是指蓝牙配置文件?

FWIW,我已下载并试图运行Apple的EADemo应用程序.它包含用于UISupportedExternalAccessoryProtocols密钥的值com.apple.p1和com.apple.p2.当我在第4代iPod Touch/iOS8.1.3上运行EADemo应用程序时,它找不到任何BT设备.它应该找到它所连接的Jawbone扬声器.

为了简化,我还创建了一个非常小的示例应用程序来监听EAAccessoryDidConnectNotification通知:

- (void)viewDidLoad {
    [super viewDidLoad];        
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(accessoryDidConnect:) name:EAAccessoryDidConnectNotification object:nil];
    [[EAAccessoryManager sharedAccessoryManager] registerForLocalNotifications];

}

- (void) accessoryDidConnect:(NSNotification *)notification {
    EAAccessory *connectedAccessory = [[notification userInfo] objectForKey:EAAccessoryKey];
    NSLog(@"didConnect: %@", connectedAccessory.name);
}
Run Code Online (Sandbox Code Playgroud)

当我在iPod Touch上运行代码时,不会收到任何通知.应用程序运行时.我关闭了Jawbone扬声器,然后开启连接.(我可以通过查看设置 - >蓝牙确认它确实连接).

我已将UISupportedExternalAccessoryProtocols键添加到app plist并将values数组保留为空并添加了com.apple.p1和com.apple.p2(如EADemo应用程序中所示).

关于我缺少的任何想法?如何使用iOS应用程序与蓝牙经典设备进行通信?

iphone bluetooth objective-c external-accessory ios

11
推荐指数
1
解决办法
4366
查看次数

使用串行蓝牙连接设备时出现问题

我面临着与常规蓝牙相关的2个问题.这是我的代码.

- (void)viewDidLoad {
    [super viewDidLoad];
    [NSTimer scheduledTimerWithTimeInterval:3.0 target:self    selector:@selector(showElements) userInfo:nil repeats:NO]; 
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(accessoryConnected:) name:EAAccessoryDidConnectNotification object:nil];
    [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(accessoryDisconnected:) name:EAAccessoryDidConnectNotification object:nil];    
    [[EAAccessoryManager sharedAccessoryManager]registerForLocalNotifications];
}

-(void)showElements{
    [[EAAccessoryManager sharedAccessoryManager] showBluetoothAccessoryPickerWithNameFilter:nil completion:^(NSError *error) {
        if (error) {
            NSLog(@"error :%@", error);
        }
        else{
            NSLog(@"Its Working");
        }
    }];    
}

- (void)accessoryConnected:(NSNotification *)notification
{    
    EAAccessory *connectedAccessory = [[notification userInfo] objectForKey:EAAccessoryKey];

}
Run Code Online (Sandbox Code Playgroud)

1)连接建立后我收到此错误.

error :Error Domain=EABluetoothAccessoryPickerErrorDomain Code=1 "(null)"
Run Code Online (Sandbox Code Playgroud)

这是完整的日志: -

BTM: attaching to BTServer
BTM: setting pairing enabled
BTM: found device "ESGAA0010" 00:04:3E:95:BF:82
BTM: disabling device …
Run Code Online (Sandbox Code Playgroud)

objective-c external-accessory ios mfi

11
推荐指数
2
解决办法
2751
查看次数

CoreBluetooth和ExternalAccessory框架之间有什么区别?

Apple提供以下两个框架,用于与iOS附近的蓝牙设备进行通信.

CoreBluetooth:

核心蓝牙框架提供iOS和Mac应用程序与配备蓝牙低功耗无线技术的设备进行通信所需的类.

ExternalAccessory:

外部附件框架支持通过Apple Lightning或30针连接器与无线使用蓝牙连接到基于iOS设备的外部硬件.

我以前使用CoreBluetooth框架成功地与蓝牙设备通信.但是,我现在正在尝试与蓝牙打印机通信,并且它不会显示在扫描附近的设备中.使用ExternalAccessory框架,它确实如此.

就与蓝牙设备进行通信而言,这两个框架有何不同?为什么不同的蓝牙设备需要使用不同的框架?

bluetooth external-accessory ios core-bluetooth

11
推荐指数
2
解决办法
1383
查看次数

PhoneGap,usb外部设备和Android主机模式之间的通信

我需要在Android上使用PhoneGap与外部设备通信.

它通过蓝牙与PhoneGap插件一起工作.现在我想通过USB端口进行通信.

通过使用Android设备的USB主机功能,PhoneGap可以访问外部设备吗?

任何现有的PhoneGap/Cordova插件?

任何例子?

我很难找到类似的东西证明我的概念......

usb android external-accessory cordova

9
推荐指数
2
解决办法
7674
查看次数

如何获得swift中配对的蓝牙设备列表?

我需要将配对的蓝牙设备(iOS设备)列表与iOS设置中"蓝牙"部分的列表相同,如下图所示.

在此输入图像描述

可能吗?
您是否看过任何使用此类功能的应用程序?

我尝试了以下: link1,link2,link3,link4,link5,link6

但没有什么能帮我清楚地得到确切的清单.我希望应该有办法实现这一目标.请分享您的经验,帮助我.谢谢.

external-accessory ios core-bluetooth bluetooth-lowenergy ios-bluetooth

9
推荐指数
2
解决办法
9133
查看次数

iOS设备连接到MFI硬件时可以检测或获取哪些硬件属性?

我正在处理项目的外部配件和MFI,并有这个问题:

将iOS设备连接到MFI硬件后,可以识别哪些第三方硬件属性(如果有)?具体来说,我正在寻找一种通用的方法来确定设备类或功能,而不是必须检查特定的制造商和设备名称,类似于Android可以做到的方式(见下文).这可能吗?

http://developer.android.com/reference/android/bluetooth/BluetoothClass.Device.html

最终目标:连接到音频基座时切换布尔值; 忽略其他事件.我不确定iOS可以获得多么精细.iOS可以说出音频底座Golf Putter App Cradle之间的区别 吗?MFi是否可以深入了解设备的功能?

我将针对iOS 4.2+.

external-accessory ios mfi

8
推荐指数
1
解决办法
1605
查看次数