diff options
-rw-r--r-- | core/java/android/hardware/UsbManager.java (renamed from core/java/android/hardware/Usb.java) | 2 | ||||
-rw-r--r-- | media/tests/CameraBrowser/src/com/android/camerabrowser/DeviceDisconnectedReceiver.java | 4 | ||||
-rw-r--r-- | media/tests/CameraBrowser/src/com/android/camerabrowser/UsbReceiver.java | 4 | ||||
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/usb/UsbStorageActivity.java | 8 | ||||
-rwxr-xr-x | services/java/com/android/server/NotificationManagerService.java | 14 | ||||
-rw-r--r-- | services/java/com/android/server/SystemServer.java | 8 | ||||
-rw-r--r-- | services/java/com/android/server/UsbService.java (renamed from services/java/com/android/server/UsbObserver.java) | 115 | ||||
-rw-r--r-- | services/java/com/android/server/connectivity/Tethering.java | 8 | ||||
-rw-r--r-- | services/jni/Android.mk | 2 | ||||
-rw-r--r-- | services/jni/com_android_server_UsbService.cpp (renamed from services/jni/com_android_server_UsbObserver.cpp) | 14 | ||||
-rw-r--r-- | services/jni/onload.cpp | 4 |
11 files changed, 93 insertions, 90 deletions
diff --git a/core/java/android/hardware/Usb.java b/core/java/android/hardware/UsbManager.java index ebb8296..9709c2d 100644 --- a/core/java/android/hardware/Usb.java +++ b/core/java/android/hardware/UsbManager.java @@ -25,7 +25,7 @@ import java.io.IOException; * Class for accessing USB state information. * @hide */ -public class Usb { +public class UsbManager { /** * Broadcast Action: A broadcast for USB connected events. * diff --git a/media/tests/CameraBrowser/src/com/android/camerabrowser/DeviceDisconnectedReceiver.java b/media/tests/CameraBrowser/src/com/android/camerabrowser/DeviceDisconnectedReceiver.java index fb004c4..d5e433b 100644 --- a/media/tests/CameraBrowser/src/com/android/camerabrowser/DeviceDisconnectedReceiver.java +++ b/media/tests/CameraBrowser/src/com/android/camerabrowser/DeviceDisconnectedReceiver.java @@ -21,7 +21,7 @@ import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; -import android.hardware.Usb; +import android.hardware.UsbManager; import android.net.Uri; public class DeviceDisconnectedReceiver extends BroadcastReceiver { @@ -33,7 +33,7 @@ public class DeviceDisconnectedReceiver extends BroadcastReceiver { mActivity = activity; mDeviceID = deviceID; - IntentFilter filter = new IntentFilter(Usb.ACTION_USB_CAMERA_DETACHED); + IntentFilter filter = new IntentFilter(UsbManager.ACTION_USB_CAMERA_DETACHED); filter.addDataScheme("content"); activity.registerReceiver(this, filter); } diff --git a/media/tests/CameraBrowser/src/com/android/camerabrowser/UsbReceiver.java b/media/tests/CameraBrowser/src/com/android/camerabrowser/UsbReceiver.java index c05b239..07e5a23 100644 --- a/media/tests/CameraBrowser/src/com/android/camerabrowser/UsbReceiver.java +++ b/media/tests/CameraBrowser/src/com/android/camerabrowser/UsbReceiver.java @@ -19,7 +19,7 @@ package com.android.camerabrowser; import android.content.Context; import android.content.Intent; import android.content.BroadcastReceiver; -import android.hardware.Usb; +import android.hardware.UsbManager; import android.net.Uri; import android.util.Log; @@ -30,7 +30,7 @@ public class UsbReceiver extends BroadcastReceiver @Override public void onReceive(Context context, Intent intent) { Log.d(TAG, "onReceive " + intent); - if (Usb.ACTION_USB_CAMERA_ATTACHED.equals(intent.getAction())) { + if (UsbManager.ACTION_USB_CAMERA_ATTACHED.equals(intent.getAction())) { Uri uri = intent.getData(); intent = new Intent(context, StorageBrowser.class); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); diff --git a/packages/SystemUI/src/com/android/systemui/usb/UsbStorageActivity.java b/packages/SystemUI/src/com/android/systemui/usb/UsbStorageActivity.java index 1383216..a834266 100644 --- a/packages/SystemUI/src/com/android/systemui/usb/UsbStorageActivity.java +++ b/packages/SystemUI/src/com/android/systemui/usb/UsbStorageActivity.java @@ -30,7 +30,7 @@ import android.content.DialogInterface.OnCancelListener; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; -import android.hardware.Usb; +import android.hardware.UsbManager; import android.os.Bundle; import android.os.Environment; import android.os.Handler; @@ -82,7 +82,7 @@ public class UsbStorageActivity extends Activity private BroadcastReceiver mUsbStateReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { - if (intent.getAction().equals(Usb.ACTION_USB_STATE)) { + if (intent.getAction().equals(UsbManager.ACTION_USB_STATE)) { handleUsbStateChanged(intent); } } @@ -168,7 +168,7 @@ public class UsbStorageActivity extends Activity super.onResume(); mStorageManager.registerListener(mStorageListener); - registerReceiver(mUsbStateReceiver, new IntentFilter(Usb.ACTION_USB_STATE)); + registerReceiver(mUsbStateReceiver, new IntentFilter(UsbManager.ACTION_USB_STATE)); try { mAsyncStorageHandler.post(new Runnable() { @Override @@ -192,7 +192,7 @@ public class UsbStorageActivity extends Activity } private void handleUsbStateChanged(Intent intent) { - boolean connected = intent.getExtras().getBoolean(Usb.USB_CONNECTED); + boolean connected = intent.getExtras().getBoolean(UsbManager.USB_CONNECTED); if (!connected) { // It was disconnected from the plug, so finish finish(); diff --git a/services/java/com/android/server/NotificationManagerService.java b/services/java/com/android/server/NotificationManagerService.java index ba8af3a..4fbdb2d 100755 --- a/services/java/com/android/server/NotificationManagerService.java +++ b/services/java/com/android/server/NotificationManagerService.java @@ -37,7 +37,7 @@ import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import android.content.res.Resources; import android.database.ContentObserver; -import android.hardware.Usb; +import android.hardware.UsbManager; import android.media.AudioManager; import android.net.Uri; import android.os.Binder; @@ -326,13 +326,13 @@ public class NotificationManagerService extends INotificationManager.Stub boolean queryRestart = false; - if (action.equals(Usb.ACTION_USB_STATE)) { + if (action.equals(UsbManager.ACTION_USB_STATE)) { Bundle extras = intent.getExtras(); - boolean usbConnected = extras.getBoolean(Usb.USB_CONNECTED); - boolean adbEnabled = (Usb.USB_FUNCTION_ENABLED.equals( - extras.getString(Usb.USB_FUNCTION_ADB))); + boolean usbConnected = extras.getBoolean(UsbManager.USB_CONNECTED); + boolean adbEnabled = (UsbManager.USB_FUNCTION_ENABLED.equals( + extras.getString(UsbManager.USB_FUNCTION_ADB))); updateAdbNotification(usbConnected && adbEnabled); - } else if (action.equals(Usb.ACTION_USB_DISCONNECTED)) { + } else if (action.equals(UsbManager.ACTION_USB_DISCONNECTED)) { updateAdbNotification(false); } else if (action.equals(Intent.ACTION_PACKAGE_REMOVED) || action.equals(Intent.ACTION_PACKAGE_RESTARTED) @@ -435,7 +435,7 @@ public class NotificationManagerService extends INotificationManager.Stub // register for various Intents IntentFilter filter = new IntentFilter(); - filter.addAction(Usb.ACTION_USB_STATE); + filter.addAction(UsbManager.ACTION_USB_STATE); filter.addAction(Intent.ACTION_SCREEN_ON); filter.addAction(Intent.ACTION_SCREEN_OFF); filter.addAction(TelephonyManager.ACTION_PHONE_STATE_CHANGED); diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java index 54f7441..95534e3 100644 --- a/services/java/com/android/server/SystemServer.java +++ b/services/java/com/android/server/SystemServer.java @@ -123,7 +123,7 @@ class ServerThread extends Thread { BluetoothA2dpService bluetoothA2dp = null; WiredAccessoryObserver wiredAccessory = null; DockObserver dock = null; - UsbObserver usb = null; + UsbService usb = null; UiModeManagerService uiMode = null; RecognitionManagerService recognition = null; ThrottleService throttle = null; @@ -406,9 +406,9 @@ class ServerThread extends Thread { try { Slog.i(TAG, "USB Observer"); // Listen for USB changes - usb = new UsbObserver(context); + usb = new UsbService(context); } catch (Throwable e) { - Slog.e(TAG, "Failure starting UsbObserver", e); + Slog.e(TAG, "Failure starting UsbService", e); } try { @@ -526,7 +526,7 @@ class ServerThread extends Thread { final BatteryService batteryF = battery; final ConnectivityService connectivityF = connectivity; final DockObserver dockF = dock; - final UsbObserver usbF = usb; + final UsbService usbF = usb; final ThrottleService throttleF = throttle; final UiModeManagerService uiModeF = uiMode; final AppWidgetService appWidgetF = appWidget; diff --git a/services/java/com/android/server/UsbObserver.java b/services/java/com/android/server/UsbService.java index 4a7df8f..b90731f 100644 --- a/services/java/com/android/server/UsbObserver.java +++ b/services/java/com/android/server/UsbService.java @@ -19,7 +19,7 @@ package com.android.server; import android.content.ContentResolver; import android.content.Context; import android.content.Intent; -import android.hardware.Usb; +import android.hardware.UsbManager; import android.net.Uri; import android.os.Handler; import android.os.Message; @@ -35,10 +35,10 @@ import java.io.FileReader; import java.util.ArrayList; /** - * <p>UsbObserver monitors for changes to USB state. + * <p>UsbService monitors for changes to USB state. */ -class UsbObserver extends UEventObserver { - private static final String TAG = UsbObserver.class.getSimpleName(); +class UsbService { + private static final String TAG = UsbService.class.getSimpleName(); private static final boolean LOG = false; private static final String USB_CONFIGURATION_MATCH = "DEVPATH=/devices/virtual/switch/usb_configuration"; @@ -61,58 +61,61 @@ class UsbObserver extends UEventObserver { private PowerManagerService mPowerManager; - public UsbObserver(Context context) { - mContext = context; - init(); // set initial status - - startObserving(USB_CONFIGURATION_MATCH); - startObserving(USB_FUNCTIONS_MATCH); - } - - @Override - public void onUEvent(UEventObserver.UEvent event) { - if (Log.isLoggable(TAG, Log.VERBOSE)) { - Slog.v(TAG, "USB UEVENT: " + event.toString()); - } + private final UEventObserver mUEventObserver = new UEventObserver() { + @Override + public void onUEvent(UEventObserver.UEvent event) { + if (Log.isLoggable(TAG, Log.VERBOSE)) { + Slog.v(TAG, "USB UEVENT: " + event.toString()); + } - synchronized (this) { - String switchState = event.get("SWITCH_STATE"); - if (switchState != null) { - try { - int newConfig = Integer.parseInt(switchState); - if (newConfig != mUsbConfig) { - mPreviousUsbConfig = mUsbConfig; - mUsbConfig = newConfig; - // trigger an Intent broadcast - if (mSystemReady) { - update(); + synchronized (this) { + String switchState = event.get("SWITCH_STATE"); + if (switchState != null) { + try { + int newConfig = Integer.parseInt(switchState); + if (newConfig != mUsbConfig) { + mPreviousUsbConfig = mUsbConfig; + mUsbConfig = newConfig; + // trigger an Intent broadcast + if (mSystemReady) { + update(); + } } + } catch (NumberFormatException e) { + Slog.e(TAG, "Could not parse switch state from event " + event); } - } catch (NumberFormatException e) { - Slog.e(TAG, "Could not parse switch state from event " + event); - } - } else { - String function = event.get("FUNCTION"); - String enabledStr = event.get("ENABLED"); - if (function != null && enabledStr != null) { - // Note: we do not broadcast a change when a function is enabled or disabled. - // We just record the state change for the next broadcast. - boolean enabled = "1".equals(enabledStr); - if (enabled) { - if (!mEnabledFunctions.contains(function)) { - mEnabledFunctions.add(function); - } - mDisabledFunctions.remove(function); - } else { - if (!mDisabledFunctions.contains(function)) { - mDisabledFunctions.add(function); + } else { + String function = event.get("FUNCTION"); + String enabledStr = event.get("ENABLED"); + if (function != null && enabledStr != null) { + // Note: we do not broadcast a change when a function is enabled or disabled. + // We just record the state change for the next broadcast. + boolean enabled = "1".equals(enabledStr); + if (enabled) { + if (!mEnabledFunctions.contains(function)) { + mEnabledFunctions.add(function); + } + mDisabledFunctions.remove(function); + } else { + if (!mDisabledFunctions.contains(function)) { + mDisabledFunctions.add(function); + } + mEnabledFunctions.remove(function); } - mEnabledFunctions.remove(function); } } } } + }; + + public UsbService(Context context) { + mContext = context; + init(); // set initial status + + mUEventObserver.startObserving(USB_CONFIGURATION_MATCH); + mUEventObserver.startObserving(USB_FUNCTIONS_MATCH); } + private final void init() { char[] buffer = new char[1024]; @@ -154,7 +157,7 @@ class UsbObserver extends UEventObserver { // called from JNI in monitorUsbHostBus() private void usbCameraAdded(int deviceID) { - Intent intent = new Intent(Usb.ACTION_USB_CAMERA_ATTACHED, + Intent intent = new Intent(UsbManager.ACTION_USB_CAMERA_ATTACHED, Ptp.Device.getContentUri(deviceID)); Log.d(TAG, "usbCameraAdded, sending " + intent); mContext.sendBroadcast(intent); @@ -162,7 +165,7 @@ class UsbObserver extends UEventObserver { // called from JNI in monitorUsbHostBus() private void usbCameraRemoved(int deviceID) { - Intent intent = new Intent(Usb.ACTION_USB_CAMERA_DETACHED, + Intent intent = new Intent(UsbManager.ACTION_USB_CAMERA_DETACHED, Ptp.Device.getContentUri(deviceID)); Log.d(TAG, "usbCameraRemoved, sending " + intent); mContext.sendBroadcast(intent); @@ -176,7 +179,7 @@ class UsbObserver extends UEventObserver { monitorUsbHostBus(); } }; - new Thread(null, runnable, "UsbObserver host thread").start(); + new Thread(null, runnable, "UsbService host thread").start(); } void systemReady() { @@ -200,10 +203,10 @@ class UsbObserver extends UEventObserver { private void addEnabledFunctions(Intent intent) { // include state of all USB functions in our extras for (int i = 0; i < mEnabledFunctions.size(); i++) { - intent.putExtra(mEnabledFunctions.get(i), Usb.USB_FUNCTION_ENABLED); + intent.putExtra(mEnabledFunctions.get(i), UsbManager.USB_FUNCTION_ENABLED); } for (int i = 0; i < mDisabledFunctions.size(); i++) { - intent.putExtra(mDisabledFunctions.get(i), Usb.USB_FUNCTION_DISABLED); + intent.putExtra(mDisabledFunctions.get(i), UsbManager.USB_FUNCTION_DISABLED); } } @@ -224,17 +227,17 @@ class UsbObserver extends UEventObserver { Intent intent; boolean usbConnected = (mUsbConfig != 0); if (usbConnected) { - intent = new Intent(Usb.ACTION_USB_CONNECTED); + intent = new Intent(UsbManager.ACTION_USB_CONNECTED); addEnabledFunctions(intent); } else { - intent = new Intent(Usb.ACTION_USB_DISCONNECTED); + intent = new Intent(UsbManager.ACTION_USB_DISCONNECTED); } mContext.sendBroadcast(intent); // send a sticky broadcast for clients interested in both connect and disconnect - intent = new Intent(Usb.ACTION_USB_STATE); + intent = new Intent(UsbManager.ACTION_USB_STATE); intent.addFlags(Intent.FLAG_RECEIVER_REPLACE_PENDING); - intent.putExtra(Usb.USB_CONNECTED, usbConnected); + intent.putExtra(UsbManager.USB_CONNECTED, usbConnected); addEnabledFunctions(intent); mContext.sendStickyBroadcast(intent); } diff --git a/services/java/com/android/server/connectivity/Tethering.java b/services/java/com/android/server/connectivity/Tethering.java index d469d67..75a0e82 100644 --- a/services/java/com/android/server/connectivity/Tethering.java +++ b/services/java/com/android/server/connectivity/Tethering.java @@ -26,7 +26,7 @@ import android.content.Intent; import android.content.IntentFilter; import android.content.pm.PackageManager; import android.content.res.Resources; -import android.hardware.Usb; +import android.hardware.UsbManager; import android.net.ConnectivityManager; import android.net.InterfaceConfiguration; import android.net.IConnectivityManager; @@ -159,7 +159,7 @@ public class Tethering extends INetworkManagementEventObserver.Stub { mStateReceiver = new StateReceiver(); IntentFilter filter = new IntentFilter(); - filter.addAction(Usb.ACTION_USB_STATE); + filter.addAction(UsbManager.ACTION_USB_STATE); filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION); filter.addAction(Intent.ACTION_BOOT_COMPLETED); mContext.registerReceiver(mStateReceiver, filter); @@ -492,10 +492,10 @@ public class Tethering extends INetworkManagementEventObserver.Stub { private class StateReceiver extends BroadcastReceiver { public void onReceive(Context content, Intent intent) { String action = intent.getAction(); - if (action.equals(Usb.ACTION_USB_STATE)) { + if (action.equals(UsbManager.ACTION_USB_STATE)) { // process connect events immediately, but delay handling disconnects // to debounce USB configuration changes - boolean connected = intent.getExtras().getBoolean(Usb.USB_CONNECTED); + boolean connected = intent.getExtras().getBoolean(UsbManager.USB_CONNECTED); Message msg = Message.obtain(mUsbHandler, USB_STATE_CHANGE, (connected ? USB_CONNECTED : USB_DISCONNECTED), 0); mUsbHandler.removeMessages(USB_STATE_CHANGE); diff --git a/services/jni/Android.mk b/services/jni/Android.mk index d10f54f..89ead82 100644 --- a/services/jni/Android.mk +++ b/services/jni/Android.mk @@ -8,7 +8,7 @@ LOCAL_SRC_FILES:= \ com_android_server_LightsService.cpp \ com_android_server_PowerManagerService.cpp \ com_android_server_SystemServer.cpp \ - com_android_server_UsbObserver.cpp \ + com_android_server_UsbService.cpp \ com_android_server_VibratorService.cpp \ com_android_server_location_GpsLocationProvider.cpp \ onload.cpp diff --git a/services/jni/com_android_server_UsbObserver.cpp b/services/jni/com_android_server_UsbService.cpp index 7c478d5..d8b2418 100644 --- a/services/jni/com_android_server_UsbObserver.cpp +++ b/services/jni/com_android_server_UsbService.cpp @@ -14,7 +14,7 @@ * limitations under the License. */ -#define LOG_TAG "UsbObserver" +#define LOG_TAG "UsbService" #include "utils/Log.h" #include "jni.h" @@ -134,7 +134,7 @@ static int usb_device_removed(const char *devname, void* client_data) { return 0; } -static void android_server_UsbObserver_monitorUsbHostBus(JNIEnv *env, jobject thiz) +static void android_server_UsbService_monitorUsbHostBus(JNIEnv *env, jobject thiz) { struct usb_host_context* context = usb_host_init(); if (!context) { @@ -146,14 +146,14 @@ static void android_server_UsbObserver_monitorUsbHostBus(JNIEnv *env, jobject th } static JNINativeMethod method_table[] = { - { "monitorUsbHostBus", "()V", (void*)android_server_UsbObserver_monitorUsbHostBus } + { "monitorUsbHostBus", "()V", (void*)android_server_UsbService_monitorUsbHostBus } }; -int register_android_server_UsbObserver(JNIEnv *env) +int register_android_server_UsbService(JNIEnv *env) { - jclass clazz = env->FindClass("com/android/server/UsbObserver"); + jclass clazz = env->FindClass("com/android/server/UsbService"); if (clazz == NULL) { - LOGE("Can't find com/android/server/UsbObserver"); + LOGE("Can't find com/android/server/UsbService"); return -1; } method_usbCameraAdded = env->GetMethodID(clazz, "usbCameraAdded", "(I)V"); @@ -167,7 +167,7 @@ int register_android_server_UsbObserver(JNIEnv *env) return -1; } - return jniRegisterNativeMethods(env, "com/android/server/UsbObserver", + return jniRegisterNativeMethods(env, "com/android/server/UsbService", method_table, NELEM(method_table)); } diff --git a/services/jni/onload.cpp b/services/jni/onload.cpp index 3502aca..613683b 100644 --- a/services/jni/onload.cpp +++ b/services/jni/onload.cpp @@ -9,7 +9,7 @@ int register_android_server_BatteryService(JNIEnv* env); int register_android_server_InputManager(JNIEnv* env); int register_android_server_LightsService(JNIEnv* env); int register_android_server_PowerManagerService(JNIEnv* env); -int register_android_server_UsbObserver(JNIEnv* env); +int register_android_server_UsbService(JNIEnv* env); int register_android_server_VibratorService(JNIEnv* env); int register_android_server_SystemServer(JNIEnv* env); int register_android_server_location_GpsLocationProvider(JNIEnv* env); @@ -33,7 +33,7 @@ extern "C" jint JNI_OnLoad(JavaVM* vm, void* reserved) register_android_server_LightsService(env); register_android_server_AlarmManagerService(env); register_android_server_BatteryService(env); - register_android_server_UsbObserver(env); + register_android_server_UsbService(env); register_android_server_VibratorService(env); register_android_server_SystemServer(env); register_android_server_location_GpsLocationProvider(env); |