From cd39282253ec8a27eae1d580fbaa91a8f3c7c5ff Mon Sep 17 00:00:00 2001 From: Mike Lockwood Date: Mon, 2 May 2011 14:31:47 -0400 Subject: [PATCH] Add USB MissleLauncher sample program This is sample code that controls a USB missle launcher using USB host APIs Change-Id: Ic4201faccc4562bf114c70d50b0cab6a00d28a98 Signed-off-by: Mike Lockwood --- build/sdk.atree | 2 + samples/USB/Android.mk | 1 + samples/USB/MissileLauncher/Android.mk | 12 + .../USB/MissileLauncher/AndroidManifest.xml | 25 ++ samples/USB/MissileLauncher/README.txt | 13 + samples/USB/MissileLauncher/_index.html | 11 + .../USB/MissileLauncher/default.properties | 11 + .../MissileLauncher/res/layout/launcher.xml | 37 +++ .../MissileLauncher/res/values/strings.xml | 22 ++ .../MissileLauncher/res/xml/device_filter.xml | 21 ++ .../MissileLauncherActivity.java | 249 ++++++++++++++++++ samples/USB/_index.html | 1 + 12 files changed, 405 insertions(+) create mode 100644 samples/USB/Android.mk create mode 100644 samples/USB/MissileLauncher/Android.mk create mode 100644 samples/USB/MissileLauncher/AndroidManifest.xml create mode 100644 samples/USB/MissileLauncher/README.txt create mode 100644 samples/USB/MissileLauncher/_index.html create mode 100644 samples/USB/MissileLauncher/default.properties create mode 100644 samples/USB/MissileLauncher/res/layout/launcher.xml create mode 100644 samples/USB/MissileLauncher/res/values/strings.xml create mode 100644 samples/USB/MissileLauncher/res/xml/device_filter.xml create mode 100644 samples/USB/MissileLauncher/src/com/android/missilelauncher/MissileLauncherActivity.java create mode 100644 samples/USB/_index.html diff --git a/build/sdk.atree b/build/sdk.atree index d098400dd..e5da0a208 100644 --- a/build/sdk.atree +++ b/build/sdk.atree @@ -177,6 +177,8 @@ development/samples/Spinner samples/${PLATFORM_NAME}/Spinner development/samples/SpinnerTest samples/${PLATFORM_NAME}/SpinnerTest development/samples/TicTacToeLib samples/${PLATFORM_NAME}/TicTacToeLib development/samples/TicTacToeMain samples/${PLATFORM_NAME}/TicTacToeMain +development/samples/USB/MissileLauncher samples/${PLATFORM_NAME}/USB/MissileLauncher +development/samples/USB/AdbTest samples/${PLATFORM_NAME}/USB/AdbTest development/samples/VoiceRecognitionService samples/${PLATFORM_NAME}/VoiceRecognitionService development/samples/WeatherListWidget samples/${PLATFORM_NAME}/WeatherListWidget development/apps/WidgetPreview samples/${PLATFORM_NAME}/WidgetPreview diff --git a/samples/USB/Android.mk b/samples/USB/Android.mk new file mode 100644 index 000000000..5053e7d64 --- /dev/null +++ b/samples/USB/Android.mk @@ -0,0 +1 @@ +include $(call all-subdir-makefiles) diff --git a/samples/USB/MissileLauncher/Android.mk b/samples/USB/MissileLauncher/Android.mk new file mode 100644 index 000000000..daabb0c3a --- /dev/null +++ b/samples/USB/MissileLauncher/Android.mk @@ -0,0 +1,12 @@ +LOCAL_PATH:= $(call my-dir) +include $(CLEAR_VARS) + +LOCAL_MODULE_TAGS := samples + +LOCAL_SRC_FILES := $(call all-subdir-java-files) + +LOCAL_PACKAGE_NAME := MissileLauncher + +LOCAL_SDK_VERSION := current + +include $(BUILD_PACKAGE) \ No newline at end of file diff --git a/samples/USB/MissileLauncher/AndroidManifest.xml b/samples/USB/MissileLauncher/AndroidManifest.xml new file mode 100644 index 000000000..b1c2c2b8b --- /dev/null +++ b/samples/USB/MissileLauncher/AndroidManifest.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/samples/USB/MissileLauncher/README.txt b/samples/USB/MissileLauncher/README.txt new file mode 100644 index 000000000..863baad7f --- /dev/null +++ b/samples/USB/MissileLauncher/README.txt @@ -0,0 +1,13 @@ +MissileLauncher is a simple program that controls Dream Cheeky USB missile launchers. +You control the left/right/up/down orientation of the launcher using the accelerometer. +Tilt the tablet to change the direction of the launcher. +Pressing the "Fire" button will fire one missile. + +This program serves as an example of the following USB host features: + +- filtering for multiple devices based on vendor and product IDs (see device_filter.xml) + +- Sending control requests on endpoint zero that contain data + +- Receiving packets on an interrupt endpoint using a thread that calls + UsbRequest.queue and UsbDeviceConnection.requestWait() diff --git a/samples/USB/MissileLauncher/_index.html b/samples/USB/MissileLauncher/_index.html new file mode 100644 index 000000000..99a5cf454 --- /dev/null +++ b/samples/USB/MissileLauncher/_index.html @@ -0,0 +1,11 @@ +

MissileLauncher is a simple program that controls Dream Cheeky USB missile launchers. +You control the left/right/up/down orientation of the launcher using the accelerometer. +Tilt the tablet to change the direction of the launcher. Pressing the Fire button will fire one missile.

+ +

This program serves as an example of the following USB host features:

+