使用Android ADK与Arduino Mega ADK通信时build.xml出现问题
所以几天前我拿到了Arduino Mega ADK板,最近几天晚上我一直在设置开发环境,掌握工具等。工具和库都工作得很好,例如,我可以在处理IDE中编写一个程序,在运行Android 4.03的Asus Eee Pad Transformer TF101上编译和运行。但当我让它尝试编译并运行一个预先编写的示例时,它会给我一个编译器错误: Android SDK工具修订版20 安装在C:\NVPACK\android sdk窗口 项目类型:申请 项目目标:安卓2.3.3 空气污染指数水平:10 库依赖项: 没有图书馆使用Android ADK与Arduino Mega ADK通信时build.xml出现问题,android,arduino,build.xml,adk,processing-ide,Android,Arduino,Build.xml,Adk,Processing Ide,所以几天前我拿到了Arduino Mega ADK板,最近几天晚上我一直在设置开发环境,掌握工具等。工具和库都工作得很好,例如,我可以在处理IDE中编写一个程序,在运行Android 4.03的Asus Eee Pad Transformer TF101上编译和运行。但当我让它尝试编译并运行一个预先编写的示例时,它会给我一个编译器错误: Android SDK工具修订版20 安装在C:\NVPACK\android sdk窗口 项目类型:申请 项目目标:安卓2.3.3 空气污染指数水平:10 库
API听起来好像您还没有将添加到项目中,或者您还没有将其下载到Android SDK中 ADK1 demokit应用程序的目标是API级别10(Android 2.3.3);这意味着您需要在项目中使用支持库,这就是编译器抱怨10级库依赖项不可用的原因。这些支持库在中是单独下载的,因此您的开发环境中可能没有它们 在Android API级别12及更高版本中,USB附件协议被添加到框架API中,因此有必要使用附件协议。因此,如果您的目标是Honeycomb和更高版本,您不必使用支持库,但您必须更新demokit应用程序代码才能实现这一点
希望这能有所帮助。听起来好像您还没有将添加到项目中,或者您还没有将其下载到Android SDK中 ADK1 demokit应用程序的目标是API级别10(Android 2.3.3);这意味着您需要在项目中使用支持库,这就是编译器抱怨10级库依赖项不可用的原因。这些支持库在中是单独下载的,因此您的开发环境中可能没有它们 在Android API级别12及更高版本中,USB附件协议被添加到框架API中,因此有必要使用附件协议。因此,如果您的目标是Honeycomb和更高版本,您不必使用支持库,但您必须更新demokit应用程序代码才能实现这一点
希望这能有所帮助。所以我仔细检查了我的设置,并开始着手一个我想到的项目,它似乎可以适当地导入库。到目前为止还不错,但当我输入:
ArduinoAdkUsb arduino;
void setup() {
arduino = new ArduinoAdkUsb(this);
//Other UI initialisation etc.
}
我得到这个错误:
##name## ##version## by ##author##
FATAL EXCEPTION: Animation Thread
java.lang.NoClassDefFoundError: com.android.future.usb.UsbManager
at cc.arduino.ADKCommunication.<init>(Unknown Source)
at cc.arduino.ArduinoAdkUsb.<init>(Unknown Source)
at
processing.android.test.sketch_120730a.
sketch_120730a.setup(sketch_120730a.java:48)
at processing.core.PApplet.handleDraw(Unknown Source)
at processing.core.PGraphicsAndroid2D.requestDraw(Unknown Source)
at processing.core.PApplet.run(Unknown Source)
at java.lang.Thread.run(Thread.java:856)
###########版本####作者###
致命异常:动画线程
java.lang.NoClassDefFoundError:com.android.future.usb.UsbManager
在cc.arduino.ADKCommunication(未知来源)
抄送arduino.ArduinoAdkUsb(未知来源)
在
processing.android.test.sketch_120730a。
草图\u 120730a.setup(草图\u 120730a.java:48)
正在处理。核心。PApplet。handleDraw(未知来源)
at processing.core.PGraphicsAndroid2D.requestDraw(未知源)
at processing.core.PApplet.run(未知源)
运行(Thread.java:856)
在我正在使用的Android平板电脑上构建并安装应用程序之后。有没有想过我该如何克服这一切?据我所知,找到com.android.future.usb.manager来编译和安装程序是没有问题的,但一旦它尝试运行它,就可以找到它。所以我仔细检查了我的设置并开始着手一个我想到的项目,它似乎可以适当地导入库。到目前为止还不错,但当我输入:
ArduinoAdkUsb arduino;
void setup() {
arduino = new ArduinoAdkUsb(this);
//Other UI initialisation etc.
}
我得到这个错误:
##name## ##version## by ##author##
FATAL EXCEPTION: Animation Thread
java.lang.NoClassDefFoundError: com.android.future.usb.UsbManager
at cc.arduino.ADKCommunication.<init>(Unknown Source)
at cc.arduino.ArduinoAdkUsb.<init>(Unknown Source)
at
processing.android.test.sketch_120730a.
sketch_120730a.setup(sketch_120730a.java:48)
at processing.core.PApplet.handleDraw(Unknown Source)
at processing.core.PGraphicsAndroid2D.requestDraw(Unknown Source)
at processing.core.PApplet.run(Unknown Source)
at java.lang.Thread.run(Thread.java:856)
###########版本####作者###
致命异常:动画线程
java.lang.NoClassDefFoundError:com.android.future.usb.UsbManager
在cc.arduino.ADKCommunication(未知来源)
抄送arduino.ArduinoAdkUsb(未知来源)
在
processing.android.test.sketch_120730a。
草图\u 120730a.setup(草图\u 120730a.java:48)
正在处理。核心。PApplet。handleDraw(未知来源)
at processing.core.PGraphicsAndroid2D.requestDraw(未知源)
at processing.core.PApplet.run(未知源)
运行(Thread.java:856)
在我正在使用的Android平板电脑上构建并安装应用程序之后。有没有想过我该如何克服这一切?据我所知,找到com.android.future.usb.manager来编译和安装程序是没有问题的,但一旦它尝试运行,它就可以找到它。基于本教程 在示例RGB_Arduino中,名称、版本和作者变量设置在草图顶部 尝试在arduino草图顶部的库导入下方添加此部分代码
// accessory descriptor. It's how Arduino identifies itself to Android
char applicationName[] = "Mega_ADK"; // the app on your phone
char accessoryName[] = "Mega_ADK"; // your Arduino board
char companyName[] = "Freeware";
// make up anything you want for these
char versionNumber[] = "1.0";
char serialNumber[] = "1";
char url[] = "http://labs.arduino.cc/adk/"; // the URL of your app online
//initialize the accessory:
AndroidAccessory usb(companyName, applicationName,
accessoryName,versionNumber,url,serialNumber);
基于来自的本教程 在示例RGB_Arduino中,名称、版本和作者变量设置在草图顶部 尝试在arduino草图顶部的库导入下方添加此部分代码
// accessory descriptor. It's how Arduino identifies itself to Android
char applicationName[] = "Mega_ADK"; // the app on your phone
char accessoryName[] = "Mega_ADK"; // your Arduino board
char companyName[] = "Freeware";
// make up anything you want for these
char versionNumber[] = "1.0";
char serialNumber[] = "1";
char url[] = "http://labs.arduino.cc/adk/"; // the URL of your app online
//initialize the accessory:
AndroidAccessory usb(companyName, applicationName,
accessoryName,versionNumber,url,serialNumber);