0

The following is in AndroidManifest.xml for MainActivity:

   <activity
        android:name=".MainActivity"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:directBootAware="true"
        android:exported="true"
        android:icon="@mipmap/ic_launcher_round"
        android:launchMode="singleInstance"
        >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
            <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
        </intent-filter>

        <meta-data
            android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"
            android:resource="@xml/usb_device_filter" />
    </activity>

If I plug in USB devices A, B, and C for the first time, the OS prompts me to select the app. This is exactly what it should be. After I unplug all of them, then plug them back, MainActivity pauses and resumes three times (i.e., pauses and resumes, and in a fraction of a second, pauses and resumes again, then in a faction of a second, pauses and resumes for the last time). The app is always in the foreground.

This is not a huge problem. It is manageable. I am curious if there is a way to avoid this kind of useless pause/resume cycle when the app is already in the foreground.

Hong
  • 17,643
  • 21
  • 81
  • 142

0 Answers0