问题标签 [eaaccessory]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2623 浏览

ios - 使用 IOS 编程将 USB 电缆连接和断开与 iPhone 的连接

我正在计算机上开发像“弹出设备”这样的 iPhone 应用程序。这意味着,当我连接 USB 电缆以连接到计算机时,此应用程序只需单击一下即可断开该连接。我在谷歌上搜索了这个,我对EAAccessoryManager. 这EAAccessoryManager仅用于通知。当 USB 电缆连接或断开时,它可以通知用户。但我需要以编程方式断开连接。是否有任何可用的 API 或教程?请帮助我。

0 投票
2 回答
1361 浏览

nsnotificationcenter - 应用在后台时获取 EAAccessoryDidConnectNotification (iOS)

在我的 'viewDidLoad'in ViewController.m中,我正在NSNotificationCenter defaultCenter使用 ' EAAccessoryDidConnectNotification' 和 ' EAAccessoryDidDisconnectNotification' 注册当我的应用程序在前台处于活动状态时,我会收到通知,并在 accessoryDidConnect 中做出响应。一切正常。但是,当应用程序在后台时,我怎样才能得到这样的通知?

非常感谢。担

0 投票
1 回答
884 浏览

ios - EAAccessory 带车载蓝牙

我正在开发一个需要检测 iPhone 是否连接到汽车的应用程序。我会使用 EAAccessory。我的问题是 EAAccessory 会检测到这个吗?汽车蓝牙(我可以在其上连接我的 iPhone 并播放音乐)MFI 吗?

0 投票
1 回答
2176 浏览

ios - EASession 的 NSOutputStream 停止向 EAAccessory 发送数据

我有一个项目,它连接到外部附件并与 iOS 应用程序进行少量数据通信。我能够像苹果在他们的 EADemo 参考代码中那样设置会话和流,并且一切似乎都运行良好。

我遇到的问题是,在使用该应用程序的随机时间后,输出流停止工作,但输入流仍然运行良好。我在每次写入尝试之前检查以确保 hasSpaceAvailable 为真,当我读回写入的字节数时,一切看起来都是正确的。此外,查看运行循环并不表示工作和非工作之间有任何区别,并且流状态仍然显示为打开。

我能看到的唯一导致这种情况的原因是我的附件没有连续确认应用程序的一些写入尝试,然后它就中断了。

我怎样才能检测到我处于这种状态,我该如何解决?

0 投票
2 回答
1895 浏览

ios - Star Micronics TSP650II 蓝牙打印机,无法写入 EASession.OutputStream

我正在尝试在单点触控应用程序中使用 Star Micronics TSP650II 打印机打印标签。

问题是session.OutputStream.HasSpaceAvailable()总是返回false。我错过了什么?

我的 C# 代码是这样的(为了简单起见):

更新:我能够通过将 Star Micronics iOS SDK 绑定到我的项目来解决这个问题,但这并不理想,因为它在包中添加了 700K 的内容,以便在没有该绑定的情况下工作。

更新 2:我收到了对绑定代码的请求。我仍然强烈建议您尝试弄清楚蓝牙连接并且不要使用绑定但是对于那些足够勇敢的人来说,这里是

0 投票
1 回答
1450 浏览

ios - EAAccessoryManager 的 connectedAccessory 中未显示已连接的蓝牙模块

我正在开发一个使用蓝牙 2.1 的应用程序。每次应用程序激活时,它都会打开一个 EASession。每次应用程序进入后台或终止时,EASession 都会关闭。

如果蓝牙模块已连接,并且应用程序重新启动,则可以正常打开,发送/获取数据一切正常。

但是,如果蓝牙模块在应用程序运行时失去通信,则在重新连接并从后台打开应用程序后。EASession 打开失败。

并且没有列出连接的配件。

  • (EAAccessory *)selectedAccessory

{

}

这里 [_accessoryList 计数] 为 0。

有谁知道发生了什么?谢谢!

编辑:

我进行了更多测试,这次看起来不同。

这次 selectedAccessory 看起来不错。但它不能初始化会话。

在 initWithAccessory 行之后,它会打印出 ERROR:

0 投票
0 回答
413 浏览

objective-c - NSOutput Stream Write 操作在后台模式下通过轮询和运行循环调度失败 iOS 6

我有一个使用外部访问框架的应用程序。我遵循了 Apple 提供的名为 EADemo 的示例。我正在通过轮询机制写入输出流,它在 iOS 5 之前工作正常。当我使用 iOS 6 进行测试并等待 HasSpaceAvailable 时,它​​总是返回一个 NO。从这里的讨论 http://discussions.apple.com/message/21161460#21161460我尝试将当前运行循环更改为主运行循环,但仍然没有成功。

我发布了一些代码来给出一个想法:

我在 EADemo 代码中使用的 write 方法。

我必须支持前台和后台的数据传输。我看到数据传输发生在前台,但在后台失败。我看到该应用程序在 iOS 5 之前运行良好,但是当我尝试在 iOS 6 设备上进行测试时它失败了。有没有人有解决方案?

0 投票
4 回答
4065 浏览

ios - 启动 EASession 失败——EAAccessory 没有协议

我正在开发一个与蓝牙 2.1 通信的 iOS 应用程序。应用程序在激活时连接到 BT。如果应用程序进入后台并再次激活,它工作正常。

但我刚刚注意到一个问题:

如果我关闭 BT 模块电源,应用程序会收到通知,我执行以下操作:

然后我重新打开模块电源,进入设置 -> 蓝牙,将 BT 模块连接到 iPhone,活动应用程序(从后台返回),无法启动 EASession:

启动 _accessoryList 和 _selectedAccessory:

我发现 _accessoryList 有我正在使用的附件,但它的“协议”是空的。

如果我杀死应用程序并重新启动,它工作正常。

有谁知道如何解决这个问题?

这个问题与这个问题类似但发生在不同的情况下,并且该问题的答案似乎无法解决我的问题。

0 投票
1 回答
173 浏览

iphone - EAAccessory 协议字符串问题

我正在尝试将我的 iPhone 连接到自定义蓝牙设备。我正在关注EAdemo。运行该应用程序,我没有在protocolstrings中获得 null 。然而,有时我在调试应用程序时确实得到了对象。关于为什么会发生这种情况的任何见解?

这可能是时间问题吗?

其不一致...

0 投票
1 回答
1440 浏览

ios - EAAcessory 无法使用 showBluetoothAccessoryPickerWithNameFilter: 方法列出设备

我正在使用这种方法

列出 MFI 程序中可用的蓝牙设备。它显示了选择器,但没有设备列表,这与 stackoverflow 上的其他答案不同,它应该显示列表中的设备。我通常可以通过进入设置来连接移动设备和外部设备,并成功传递值。但我想在不手动进入应用程序内的设置的情况下做到这一点。我错过了什么吗!谢谢你的帮助。