Android 设备上的 PhoneGap 蓝牙插件

2024-06-20

我一直在尝试让 PhoneGap 工作的蓝牙插件,但我似乎不知道哪里出了问题。首先,我的测试设备是 Galaxy S3 (GT-19305T),应用程序是使用PhoneGap CLI http://docs.phonegap.com/en/3.0.0/guide_cli_index.md.html.

可以找到我尝试使用的插件here https://github.com/tanelih/phonegap-bluetooth-plugin举个例子here http://blogit.jamk.fi/metsaapuilta/2013/10/24/bluetooth-for-phonegap/.

我尝试了这个例子,但它似乎没有实际做任何事情。

然后我开始基础操作,并尝试使用 PhoneGap 给出的示例插件。我可以很容易地让所有这些工作起来。在我的示例中,我使用基本设备信息插件。

这是一些示例代码:

JavaScript:

<script type="text/javascript" charset="utf-8">
    // Wait for device API libraries to load
    document.addEventListener("deviceready", onDeviceReady, false);
    // device APIs are available
    function onDeviceReady() {
        var element = document.getElementById('deviceProperties');
        element.innerHTML = 'Device Model: '    + device.model    + '<br />' +
                            'Device Cordova: '  + device.cordova  + '<br />' +
                            'Device Platform: ' + device.platform + '<br />' +
                            'Device UUID: '     + device.uuid     + '<br />' +
                            'Device Version: '  + device.version  + '<br />';
        var btstatus = document.getElementById('status');
        btstatus.innerHTML = "Getting bluetooth information";

        window.bluetooth.isEnabled(isEnabledSuccess, isEnabledError);
    }

    function checkBluetoothStatus() {
        var btstatus = document.getElementById('status');
        btstatus.innerHTML = "Checking bluetooth information";
        window.bluetooth.isEnabled(isEnabledSuccess, isEnabledError);
    }

    function isEnabledSuccess(isEnabled){
       var btstatus = document.getElementById('status');
       if(isEnabled){
         btstatus.innerHTML = "Enabled";
       }else{
         btstatus.innerHTML = "Disabled";
       }
    }

    function isEnabledError(error){
       var btstatus = document.getElementById('status');
       btstatus.innerHTML = "Cannot determine Bluetooth status: " + error.message;
    }

    function enableBluetooth(){
        var btstatus = document.getElementById('status');
        btstatus.innerHTML = "Attempting to turn bluetooth on";
        window.bluetooth.enable(bluetoothTestSucces, bluetoothTestFail);
    }
</script>

Html:

  <body>
    <p id="deviceProperties">Loading device properties...</p>
    <br />
    <button onclick="enableBluetooth();">Enable Bluetooth</button>
    <br />
    <button onclick="checkBluetoothStatus();">Check Bluetooth Status</button>
    <br />
    <p id="status">Loading bluetooth information...</p>
  </body>

所以基本上我试图让插件返回当前的蓝牙连接信息,或者在单击“启用蓝牙”按钮时启用蓝牙。

不幸的是,到目前为止没有任何效果,正如我之前所说,我不确定我哪里出错了。

我尝试过手动应用它并使用 CLI。


我最近尝试了相同的示例并能够使其正常工作。然而主要的区别是我使用 Cordova CLI 代替.

Note:您需要安装:Apache ANT、JAVA、Android SDK、GIT 命令行工具。前三个还需要在您的环境路径中正确设置。

这些是我执行的步骤:

  1. 下载 Node.JS(然后运行命令提示符)
  2. npm install -g cordova
  3. npm install -g coffee-script
  4. cd C:\
  5. cordova create bluetooth com.example.bluetooth bluetooth
  6. cd bluetooth
  7. cordova platform add android
  8. cordova plugin add https://github.com/tanelih/phonegap-bluetooth-plugin.git
  9. 下载this https://gist.github.com/tanelih/7193921
  10. Covert main.coffee to main.js using coffee --compile main.coffee
  11. 下载库文件(jQuery、bootstrap、underscore、backbone)并将它们放在正确的目录中
  12. 将所有示例文档放在正确的目录中,并编辑索引以具有<script src="cordova.js">代替<script src="phonegap.js">
  13. cordova build android
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 设备上的 PhoneGap 蓝牙插件 的相关文章

随机推荐

  • Calendly 未在 Webflow 中预填写表单

    我在 Webflow 项目中使用 Calendly 并且它有效 不过 我想在 Calendly 中预先填写表格 这里有一个指南 https help calendly com hc en us articles 226766767 Pre
  • GitHub API 获取用户/组织总数

    Using GitHub API https developer github com v3 如何计算请求时的用户 组织总数 Users https developer github com v3 users and 组织机构 https
  • time_select 表单助手将新时间对象解释为 UTC,而不是配置的时区

    我遇到了对我来说似乎很简单的问题 但我无法弄清楚我做错了什么 在我的应用程序中 用户可以通过简单的 form for 添加他们的课程 他们可以输入课程讲座的开始时间和结束时间 如下所示 div class field Start Time
  • 序列的排列?

    我有具体数量的数字 现在我想以某种方式显示这个序列的所有可能的排列 例如 如果数字数量为3 我想显示 0 0 0 0 0 1 0 0 2 0 1 0 0 1 1 0 1 2 0 2 0 0 2 1 0 2 2 1 0 0 1 0 1 1 0
  • 服务层和存储库

    我使用 MVC 框架已经有一段时间了 我真的很喜欢如何分离关注点 我养成了让控制器做大量工作的坏习惯 所以我真的在寻求一些建议 当我第一次开始使用 MVC 时 我经常在数据库工作完成后让控制器对模型进行操作 我知道这很糟糕 所以将这项工作转
  • 如何并行运行多个Spark作业?

    一个 Spark 有一个 Oracle 查询 所以我必须并行运行多个作业 以便所有查询同时触发 如何并行运行多个作业 引用官方文档作业调度 http spark apache org docs latest job scheduling h
  • 我不断收到错误“关系 [TABLE] 不存在”

    我一直在尝试查询数据库中的两个表 在服务器资源管理器中 我可以看到两个表 甚至可以看到其中的列 我们将它们称为 Schema table1 和 Schema table2 其中 Schema 的第一个字母大写 我尝试运行以下查询 selec
  • 双击,怎么处理?

    我试图找出如何处理用鼠标左键 或任何 双击 但我找不到任何有关它的信息 有谁能够帮助我 我不想编写自己的双击处理程序 GLFW REPEAT 不适用于鼠标按钮 编写自己的双击处理程序有什么问题吗 只需节省鼠标单击发生的时间 例如和std c
  • 关闭选项卡时要求确认[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 当我在某些浏览器上关闭页面时 我希望出现一个消息框 并询问我是否真的要关闭页面 有两个按钮 如果我单击No那么这个标签就不会被关闭 我怎样
  • 如何测试 javascript 闭包内的函数

    这似乎是不可能的 也可能是 但我正在尝试更多的 TDD 但我总是在闭包方面碰壁 假设我有以下内容 function createSomething init function privateMethod param return init
  • 如何将 Hex 或 RGB 颜色分配给 Android Converter 中的 MvxColor

    我有如下转换器 我想返回我自己的十六进制或 RGB 颜色 In iOS public class PinkSelectedWhiteUnselectedValueConverter MvxValueConverter
  • Android 初学者:Android gridview 中的触摸事件

    我正在使用以下代码来使用 gridview 执行操作 稍作修改http developer android com resources tutorials views hello gridview html http developer a
  • Spring应用中Eureka健康检查的问题

    我正在开发一个基于 Spring 的应用程序 其中包含多个微服务 我的一个微服务充当尤里卡服务器 到目前为止一切正常 在我所有其他微服务中 用 EnableEurekaClient 我想启用这样的健康检查 应用程序 yml eureka c
  • Mockito:如何通过模拟测试我的服务?

    我是模拟测试新手 我想测试我的服务方法CorrectionService correctPerson Long personId 实现尚未编写 但这就是它将执行的操作 CorrectionService将调用一个方法AddressDAO这将
  • React js Stripe 结账不起作用

    我正在尝试在 React js 应用程序中呈现条带结账默认表单
  • Junit:如何测试从属性文件读取属性的方法

    嗨 我有课ReadProperty其中有一个方法ReadPropertyFile返回类型的Myclass从属性文件读取参数值并返回Myclass目的 我需要帮助来测试ReadPropertyFile方法与JUnit 如果可能的话使用模拟文件
  • 了解设置 JQuery 变量

    了解设置 JQuery 变量 最近 我通过在 StackOverflow 上遇到的另一个问题寻找帮助 了解到如何设置 JQuery 变量 如下所示 您可以通过简单地调用变量来创建输入字段 并且锚变量似乎也定义了样式 var clicked
  • 如何将用户输入与枚举值映射?

    我有一个基本的enum宣言 enum Title Prof Dr Mr Mdm Mrs Miss NA 我正在尝试将用户输入 0 1 2 3 4 5 AnyNumber 映射为正确的值enum像这样 std map
  • 在一个提交按钮中的新窗口中打开 URL 的两个表单操作?

    是否可以将两个表单操作放在一个提交按钮中 用户将能够选择两个单选按钮 每个表单操作将同时在新窗口中打开 URL 我不知道该怎么做 而且我在编码方面没有太多知识 这段代码不是我的 我只是想修改一下 这是代码
  • Android 设备上的 PhoneGap 蓝牙插件

    我一直在尝试让 PhoneGap 工作的蓝牙插件 但我似乎不知道哪里出了问题 首先 我的测试设备是 Galaxy S3 GT 19305T 应用程序是使用PhoneGap CLI http docs phonegap com en 3 0