- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在尝试在 iOS 7 上的应用程序中使用 BluetoothManager,但它似乎无法正常工作。
在 BluetoothManager 上调用 setEnabled:
和 setPowered:
没有任何效果,我正在注册通知 (BluetoothAvailabilityChangedNotification
) 但是这些永远不会发送。
我已经导入了框架,并且正在使用这些问题给出的示例代码,但这些都是 iOS 7 之前的版本,这可能是问题所在;
iOS BluetoothManager Framwork
iOS: Can't get BluetoothManager to work
Programmatically turn on bluetooth in the iphone sdk?
最佳答案
事实证明,这个框架在 iOS 7 中没有受到保护,仍然可以使用。
我认为问题出在 BluetoothManager.h 和 BluetoothDevice.h 头文件的位置。它们需要位于以下目录中:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/PrivateFrameworks/BluetoothManager.framework/Headers
并且项目的“框架搜索路径”build设置需要包含 $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks
才能使用这些文件。
我不确定为什么会这样 - Xcode 项目中的头文件仍然为 [BluetoothManager sharedInstance]
返回一个有效(?)对象,但只是没有提供任何其他功能。至少现在可以用了,耶!
哦,我应该提一下我是如何发现这个的! michaeldorner's "BeeTee" github project几乎是为 iOS 7 设计的一个基本的 BluetoothManager 示例项目。自述文件描述了头文件的位置,除此之外它只是他项目中的build设置以启用这些头文件。
关于ios - BluetoothManager 不适用于 iOS 7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19858710/
我是一名优秀的程序员,十分优秀!