@Override public void start() { mStorageManager = (StorageManager) mContext.getSystemService(Context.STORAGE_SERVICE); final boolean connected = mStorageManager.isUsbMassStorageConnected(); if (DEBUG) Log.d( TAG, String.format( "Startup with UMS connection %s (media state %s)", mUmsAvailable, Environment.getExternalStorageState())); HandlerThread thr = new HandlerThread("SystemUI StorageNotification"); thr.start(); mAsyncEventHandler = new Handler(thr.getLooper()); if (GN_USB_SUPPORT && isFirstBoot()) { setToMtpByDefault(); } mStorageEventlistener = new StorageNotificationEventListener(); mStorageEventlistener.onUsbMassStorageConnectionChanged(connected); mStorageManager.registerListener(mStorageEventlistener); IntentFilter filter = new IntentFilter(); filter.addAction(UsbManager.ACTION_USB_STATE); mContext.registerReceiver(mUsbStateReceiver, filter); }
@Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (UsbManager.ACTION_USB_STATE.equals(action)) { mUsbDeviceConnect = intent.getBooleanExtra(UsbManager.USB_CONNECTED, false); boolean isConnected = mStorageManager.isUsbMassStorageConnected(); Log.v( TAG, "isConnected = " + isConnected + " mUsbDeviceConnect = " + mUsbDeviceConnect); mStorageEventlistener.onUsbMassStorageConnectionChanged(isConnected); } }
public StorageNotification(Context context) { mContext = context; mStorageManager = (StorageManager) context.getSystemService(Context.STORAGE_SERVICE); final boolean connected = mStorageManager.isUsbMassStorageConnected(); Slog.d( TAG, String.format( "Startup with UMS connection %s (media state %s)", mUmsAvailable, Environment.getExternalStorageState())); HandlerThread thr = new HandlerThread("SystemUI StorageNotification"); thr.start(); mAsyncEventHandler = new Handler(thr.getLooper()); onUsbMassStorageConnectionChanged(connected); }
@Override public void start() { mStorageManager = (StorageManager) mContext.getSystemService(Context.STORAGE_SERVICE); final boolean connected = mStorageManager.isUsbMassStorageConnected(); if (DEBUG) Log.d( TAG, String.format( "Startup with UMS connection %s (media state %s)", mUmsAvailable, Environment.getExternalStorageState())); HandlerThread thr = new HandlerThread("SystemUI StorageNotification"); thr.start(); mAsyncEventHandler = new Handler(thr.getLooper()); StorageNotificationEventListener listener = new StorageNotificationEventListener(); listener.onUsbMassStorageConnectionChanged(connected); mStorageManager.registerListener(listener); }