首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Trigger.io蓝牙许可?

Trigger.io蓝牙许可?
EN

Stack Overflow用户
提问于 2014-03-12 20:36:44
回答 2查看 409关注 0票数 0

我正在使用一个蓝牙硬件设备,我试图让它与我的Trigger.IO应用程序接口。这似乎是不可能的,即使从技术上讲应该如此。到目前为止,我的步骤如下:

  • 使用Trigger.IO模块功能创建一个模块,该模块能够在Trigger.IO应用程序和本机Java代码之间成功地发送和接收消息
  • 创建了一个本地Android应用程序,该应用程序成功地与蓝牙硬件设备通信。
  • 将我的本地Android蓝牙代码移植到我的Trigger.IO模块中。

此时,自定义模块包含在触发器应用程序中,并且似乎启动正确,但是当我发出一个应该启动蓝牙设备连接逻辑的调用时,我会收到有关蓝牙权限的错误信息。我确保我的模块在其AndroidManifest.xml中拥有必要的蓝牙权限,但我担心基本触发应用程序没有所需的权限。

这些日志是尝试启动蓝牙连接时在LogCat中输出的日志:

代码语言:javascript
复制
D/Forge: Native call module.startDevicePolling with task.params: {}
D/BluetoothManagerService: Message: 20
D/BluetoothManagerService: Added callback: Android.bluetooth.IBluetoothManagerCallback$Stub$Proxy@41f84218:true
W/dalvikvm: threadid=25: thread exiting with uncaught exception (group=0x41612ba8)
I/Process: Sending signal. PID: 11967 SIG: 9
E/AndroidRuntime: FATAL EXCEPTION: Incoming Data Thread
E/AndroidRuntime: Process: io.trigger.forge42a1430afae511e2a0e61231392b77b0, PID: 11967
E/AndroidRuntime: java.lang.SecurityException: Need BLUETOOTH permission: Neither user 10230 nor current process has android.permission.BLUETOOTH.

查看部署的AndroidManfiest.xml根目录下的.APK,看起来触发器似乎只对INTERNET和ACCESS_NETWORK_STATE具有权限。还有人碰到这个吗?我想,如果我能在根AndroidManifest.xml中获得蓝牙权限,事情就会成功,但该文件的编码并不容易。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-14 08:37:01

Trigger.io确实支持模块添加权限的能力--参见更改构建配置

总结如下:

  1. android/build_steps.json中添加构建步骤文件
  2. 对于您的场景,使用:[ { "do": { "android_add_permission": { "permission": "android.permission.BLUETOOTH" } } } ]更新构建步骤文件
  3. 更改Android或iOS的构建步骤后,更新检查器项目很重要。
票数 0
EN

Stack Overflow用户

发布于 2014-03-20 20:37:38

我可以通过更改本地触发器android模板来给我所需的权限来解决我的问题。这显然是不理想的。理想的方法是让触发器逻辑查看本机模块,派生所需的权限,并相应地更新它们的主AndroidManifest.xml

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22363242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档