【问题标题】:Compile error with Arduino ADK + Android + Processing Example使用 Arduino ADK + Android + 处理示例编译错误
【发布时间】:2012-03-24 05:18:21
【问题描述】:

我正在尝试运行 Arduino ADK + Android 示例(analogRead、digitalWrite 等),但出现以下编译错误:

-compile:
     [javac] Compiling 3 source files to     C:\Users\???\AppData\Local\Temp\android7678598093798196219sketch\bin\classes
     [javac]  C:\Users\???\AppData\Local\Temp\android7678598093798196219sketch\src\processing\android\test\adk_analogRead.java:28: cannot access com.android.future.usb.UsbAccessory
     [javac] class file for com.android.future.usb.UsbAccessory not found
     [javac]     arduino.connect( arduino.list()[0] );
     [javac]            ^
     [javac] 1 error

我做了一些研究,发现这篇 9 个月大的帖子 - http://forum.processing.org/topic/how-can-you-specify-the-target-api-level - 它谈到了从源代码重新编译处理。但是,我使用的是 2.0a5 版本,并且团队已经将源代码更改为使用 API 级别 10。(当我查看 temp 文件夹中的清单 xml 文件时,我还验证了生成的代码。)知道如何解决这个问题吗?

以防万一,我已成功编译并运行常规处理应用程序并部署到 Android (Nexus One)。

【问题讨论】:

    标签: android processing arduino adk


    【解决方案1】:

    我认为你需要使用Google Android Api 3.1+

    【讨论】:

    • 2.3.3 的最新版本,2.3.4 的 ADK api 应该附带它吗?
    • ok..改成Google Android API 3.1或以上,使用Google Api即可解决问题
    【解决方案2】:

    要使用 ADK,您可以使用 API 级别 10,但它需要附加 Google API(您需要在应用程序中使用地图)。

    如果您在启用 Google API 时遇到问题,请尝试切换到您不再需要插件的 API 级别 12。但是,您现在将使用 android.hardware.usb 库而不是 com.android.future.usb。

    【讨论】:

      【解决方案3】:

      这是我为编译 ArduinoAdkUsb 示例所做的工作:

      1. 在处理中,切换到 Android 模式
      2. 在处理中,转到 Android -> SDK 管理器
      3. 在 SDK 管理器中,安装 Android 2.3.3 (API 10) -> Google API(如果未安装)
      4. 将 sdk/add-ons/addon-google_apis-google-10/libs/usb.jar 复制到 Processing/libraries/ArduinoAdkUsb/library/
      5. 重启处理

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多