我正在编写一个Android USB主机应用程序,我试图枚举与平板电脑连接的设备.我按照开发人员站点中的android USB主机文档中的代码进行操作.
我的代码如下
AndroidUSBActivity
public class AndroidUSBActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
USBClass usb = new USBClass();
ArrayList<String> deviceList = usb.GetUSBDevices(getBaseContext());
final CharSequence[] items = deviceList.toArray(new CharSequence[deviceList.size()]);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Select a Reader");
builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
String selectedDevice = (String) items[item];
dialog.dismiss();
TextView DeivceName = (TextView)findViewById(R.id.textView1);
DeivceName.setText(selectedDevice);
}
});
AlertDialog alert = builder.create(); …Run Code Online (Sandbox Code Playgroud) permissions usb android broadcastreceiver android-pendingintent
我指的是这个例子用于与Arduino板通信Android.我有USB屏蔽和Android手机(micromax A110(4.1.1),sony xperia P(4.0.6)和samsumg core(4.1.2))的freeduino uno board.我从这里下载了USB_Host_Shield_2.0 .我正在编写草图并成功上传.但是,无法在freeduino uno board和Android手机之间建立通信.我正在尝试使用freduino uno board的PIN 13使LED闪烁,但它无法正常工作.将Android手机连接到freeduino板后,我在串口显示器上输出.
ADK demo start
Waits for Android device get ready.
Waits for Android device get ready.
Waits for Android device get ready.
Waits for Android device get ready.
Waits for Android device get ready.
ADK Init
ADK Init
ADK protocol rev. 0002
swAcc:
ADK Init
getDevDescr 0D
ADK Init
getDevDescr 0D
ADK Init
getDevDescr 0D
Run Code Online (Sandbox Code Playgroud)
如果我将Android手机(v4.0.3)与freeduino板连接,我在串口显示器上遇到以下错误
Device addressed... Requesting device descriptor.
found possible device. …Run Code Online (Sandbox Code Playgroud)