summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorMike Lockwood <lockwood@android.com>2010-07-27 18:46:57 -0400
committerMike Lockwood <lockwood@android.com>2010-07-27 19:20:31 -0400
commit725552a0df76ee3b2d45650a25224f46597ad589 (patch)
treeda05ab6298f26ebfb11da99784c17c5a98dd75f5 /media
parentda39f0e87814c5acb8b6319a1877b93197fb910e (diff)
downloadframeworks_base-725552a0df76ee3b2d45650a25224f46597ad589.zip
frameworks_base-725552a0df76ee3b2d45650a25224f46597ad589.tar.gz
frameworks_base-725552a0df76ee3b2d45650a25224f46597ad589.tar.bz2
CameraBrowser: Launch itself when a camera is attached to USB.
Change-Id: I00d6980a1f8e6607c1368cbf78d8e824514c666b Signed-off-by: Mike Lockwood <lockwood@android.com>
Diffstat (limited to 'media')
-rw-r--r--media/tests/CameraBrowser/AndroidManifest.xml8
-rw-r--r--media/tests/CameraBrowser/src/com/android/camerabrowser/UsbReceiver.java47
2 files changed, 55 insertions, 0 deletions
diff --git a/media/tests/CameraBrowser/AndroidManifest.xml b/media/tests/CameraBrowser/AndroidManifest.xml
index 5a71179..eae0b01 100644
--- a/media/tests/CameraBrowser/AndroidManifest.xml
+++ b/media/tests/CameraBrowser/AndroidManifest.xml
@@ -14,6 +14,14 @@
<activity android:name="StorageBrowser" />
<activity android:name="ObjectBrowser" />
<activity android:name="ObjectViewer" />
+
+ <receiver android:name="UsbReceiver">
+ <intent-filter>
+ <action android:name="android.hardware.action.USB_CAMERA_ATTACHED" />
+ <data android:scheme="content"/>
+ </intent-filter>
+ </receiver>
+
</application>
diff --git a/media/tests/CameraBrowser/src/com/android/camerabrowser/UsbReceiver.java b/media/tests/CameraBrowser/src/com/android/camerabrowser/UsbReceiver.java
new file mode 100644
index 0000000..c05b239
--- /dev/null
+++ b/media/tests/CameraBrowser/src/com/android/camerabrowser/UsbReceiver.java
@@ -0,0 +1,47 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.camerabrowser;
+
+import android.content.Context;
+import android.content.Intent;
+import android.content.BroadcastReceiver;
+import android.hardware.Usb;
+import android.net.Uri;
+import android.util.Log;
+
+public class UsbReceiver extends BroadcastReceiver
+{
+ private static final String TAG = "UsbReceiver";
+
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ Log.d(TAG, "onReceive " + intent);
+ if (Usb.ACTION_USB_CAMERA_ATTACHED.equals(intent.getAction())) {
+ Uri uri = intent.getData();
+ intent = new Intent(context, StorageBrowser.class);
+ intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ try {
+ // TODO - add a wrapper to Mtp.Device for this
+ int id = Integer.parseInt(uri.getPathSegments().get(1));
+ intent.putExtra("device", id);
+ context.startActivity(intent);
+ } catch (NumberFormatException e) {
+ Log.e(TAG, "bad device Uri " + uri);
+ }
+ }
+ }
+}