@Test public void removeDevice() { assertThat(usbManager.getDeviceList()).isEmpty(); shadowOf(usbManager).addOrUpdateUsbDevice(usbDevice1, false); shadowOf(usbManager).addOrUpdateUsbDevice(usbDevice2, false); assertThat(usbManager.getDeviceList().values()) .containsExactly(usbDevice1, usbDevice2); shadowOf(usbManager).removeUsbDevice(usbDevice1); assertThat(usbManager.getDeviceList().values()).containsExactly(usbDevice2); }
public void open() throws IOException { if (!device_found) { throw new IOException("Device not Connected"); } mConnection = mUsbManager.openDevice(mUsbDevice); Log.d(TAG, "Claiming interfaces, count=" + mUsbDevice.getInterfaceCount()); mConnection.controlTransfer(0x21, 0x22, 0x1, 0, null, 0, 0); mControlInterface = mUsbDevice.getInterface(0); Log.d(TAG, "Control interface=" + mControlInterface); if (!mConnection.claimInterface(mControlInterface, true)) { throw new IOException("Could not claim control interface."); } mControlEndpoint = mControlInterface.getEndpoint(0); Log.d(TAG, "Control endpoint direction: " + mControlEndpoint.getDirection()); Log.d(TAG, "Claiming data interface."); mDataInterface = mUsbDevice.getInterface(1); Log.d(TAG, "data interface=" + mDataInterface); if (!mConnection.claimInterface(mDataInterface, true)) { throw new IOException("Could not claim data interface."); } mReadEndpoint = mDataInterface.getEndpoint(1); Log.d(TAG, "Read endpoint direction: " + mReadEndpoint.getDirection()); mWriteEndpoint = mDataInterface.getEndpoint(0); Log.d(TAG, "Write endpoint direction: " + mWriteEndpoint.getDirection()); connected = true; setBaudRate(1000000); //Thread.sleep(1000); clear(); }
private void attemptToGetUSBPermission() { if (!("android.hardware.usb.action.USB_DEVICE_ATTACHED".equals(getIntent().getAction()))) { if (communicationHandler.isDeviceFound() && !usbManager.hasPermission(communicationHandler.mUsbDevice)) { mPermissionIntent = PendingIntent.getBroadcast(this, 0, new Intent(ACTION_USB_PERMISSION), 0); IntentFilter filter = new IntentFilter(ACTION_USB_PERMISSION); registerReceiver(mUsbReceiver, filter); receiverRegister = true; usbManager.requestPermission(communicationHandler.mUsbDevice, mPermissionIntent); } if (communicationHandler.mUsbDevice != null) { if (usbManager.hasPermission(communicationHandler.mUsbDevice)) initialisationDialog.dismiss(); hasPermission = true; } } else if (usbManager.hasPermission(communicationHandler.mUsbDevice)) { hasPermission = true; initialisationDialog.dismiss(); } }
@Test @Config(minSdk = N) public void grantPermission_selfPackage_shouldHavePermission() { usbManager.grantPermission(usbDevice1); assertThat(usbManager.hasPermission(usbDevice1)).isTrue(); }
private void requestPermission() { Activity activity = ctx.get(); if (activity != null) { PendingIntent mPermissionIntent = PendingIntent.getBroadcast(activity, 0, new Intent(ACTION_USB_PERMISSION), 0); //here do emulation to ask all connected usb device for permission for (final UsbDevice usbDevice : usbManager.getDeviceList().values()) { if (usbManager.hasPermission(usbDevice)) { afterGetUsbPermission(usbDevice); } else { usbManager.requestPermission(usbDevice, mPermissionIntent); } } } }
return true; HashMap<String, UsbDevice> devices = manager.getDeviceList(); for (Map.Entry<String, UsbDevice> pair : devices.entrySet()) dev.getVendorId() == NINTENDO_VENDOR_ID) if (manager.hasPermission(dev)) usb_con = manager.openDevice(dev); UsbConfiguration conf = dev.getConfiguration(0);
if (!mUsbManager.hasPermission(usbDevice)) { mUsbManager.requestPermission(usbDevice, mPermissionIntent); mRequestPermissionDevices.add(deviceName); } else { UsbDeviceConnection connection = mUsbManager.openDevice(usbDevice); if (connection != null) { MtpDevice mtpDevice = new MtpDevice(usbDevice);
private void requestUserPermission() { PendingIntent mPendingIntent = PendingIntent.getBroadcast(this, 0, new Intent(ACTION_USB_PERMISSION), 0); usbManager.requestPermission(device, mPendingIntent); }
public static boolean QueryAdapter() { HashMap<String, UsbDevice> devices = manager.getDeviceList(); for (Map.Entry<String, UsbDevice> pair : devices.entrySet()) { UsbDevice dev = pair.getValue(); if (dev.getProductId() == 0x0337 && dev.getVendorId() == 0x057e) { if (manager.hasPermission(dev)) return true; else RequestPermission(); } } return false; }
if( mUsbManager.hasPermission(dexcom)) { // the system is allowing us to poke around this device UsbDeviceConnection connection = mUsbManager.openDevice(driver.getDevice()); if (connection != null) { mSerialDevice = driver;
HashMap<String, UsbDevice> deviceList = usbManager.getDeviceList(); usbManager.requestPermission(hackrfUsbDvice, mPermissionIntent); Log.d(logTag,"Permission request for device " + hackrfUsbDvice.getDeviceName() + " was send. waiting...");
@Test public void hasPermission() { assertThat(usbManager.hasPermission(usbDevice1)).isFalse(); shadowOf(usbManager).addOrUpdateUsbDevice(usbDevice1, false); shadowOf(usbManager).addOrUpdateUsbDevice(usbDevice2, false); assertThat(usbManager.hasPermission(usbDevice1)).isFalse(); assertThat(usbManager.hasPermission(usbDevice2)).isFalse(); shadowOf(usbManager).addOrUpdateUsbDevice(usbDevice1, true); assertThat(usbManager.hasPermission(usbDevice1)).isTrue(); assertThat(usbManager.hasPermission(usbDevice2)).isFalse(); }
private static void RequestPermission() { Context context = NativeLibrary.sEmulationActivity.get(); if (context != null) { HashMap<String, UsbDevice> devices = manager.getDeviceList(); for (Map.Entry<String, UsbDevice> pair : devices.entrySet()) { UsbDevice dev = pair.getValue(); if (dev.getProductId() == 0x0337 && dev.getVendorId() == 0x057e) { if (!manager.hasPermission(dev)) { Intent intent = new Intent(); PendingIntent pend_intent; intent.setClass(context, USBPermService.class); pend_intent = PendingIntent.getService(context, 0, intent, 0); manager.requestPermission(dev, pend_intent); } } } } else { Log.warning("Cannot request GameCube Adapter permission as EmulationActivity is null."); } }
public static boolean OpenAdapter() HashMap<String, UsbDevice> devices = manager.getDeviceList(); for (Map.Entry<String, UsbDevice> pair : devices.entrySet()) if (dev.getProductId() == 0x0337 && dev.getVendorId() == 0x057e) if (manager.hasPermission(dev)) usb_con = manager.openDevice(dev);
if (mUsbDevice != null && !mUsbManager.hasPermission(mUsbDevice)) { Log.d(LOG_TAG, "Request permission"); mPermissionIntent = PendingIntent.getBroadcast(mContext, 0, new Intent(mContext.getPackageName()+".USB_PERMISSION"), 0); mUsbManager.requestPermission(mUsbDevice, mPermissionIntent); } else if (mUsbDevice != null && mUsbManager.hasPermission(mUsbDevice)) { Log.d(LOG_TAG, "Has permission"); } else { UsbDeviceConnection connection = mUsbManager.openDevice(mUsbDevice); if (connection != null && connection.claimInterface(mIntf, true)) { Log.d(LOG_TAG, "open SUCCESS");
/** * Convenience method for requesting permission to use the USB device; may only be called if a * permission handler is installed. * * @param context the current context, e.g., the activity invoking this method */ public void requestPermission(Context context) { if (broadcastReceiver == null) { throw new IllegalStateException( "installPermissionHandler must be called before requesting permission"); } ((UsbManager) context.getSystemService(Context.USB_SERVICE)).requestPermission(device, PendingIntent.getBroadcast(context, 0, new Intent(ACTION_USB_PERMISSION), 0)); }
public static boolean QueryAdapter() { HashMap<String, UsbDevice> devices = manager.getDeviceList(); for (Map.Entry<String, UsbDevice> pair : devices.entrySet()) { UsbDevice dev = pair.getValue(); if (dev.getProductId() == NINTENDO_WIIMOTE_PRODUCT_ID && dev.getVendorId() == NINTENDO_VENDOR_ID) { if (manager.hasPermission(dev)) return true; else RequestPermission(); } } return false; }
if( mUsbManager.hasPermission(dexcom)) { // the system is allowing us to poke around this device UsbDeviceConnection connection = mUsbManager.openDevice(driver.getDevice()); if (connection != null) { mSerialDevice = driver;
public boolean hasPermission(UsbDevice device){ return usbManager.hasPermission(device); }
@Test public void getDeviceList() { assertThat(usbManager.getDeviceList()).isEmpty(); shadowOf(usbManager).addOrUpdateUsbDevice(usbDevice1, true); shadowOf(usbManager).addOrUpdateUsbDevice(usbDevice2, true); assertThat(usbManager.getDeviceList().values()) .containsExactly(usbDevice1, usbDevice2); }