USB Berechtigungen ohne Eingabeaufforderung
Ich habe 2 Aktivitäten in meiner App. SagenFirstActivity
undSecondActivity
. FirstActivity
ist die MAIN- und LAUNCHER-Aktivität.SecondActivity
verwendet USB-Geräte. Ich möchte, dass die Eingabeaufforderung für die USB-Berechtigung nur einmal innerhalb der Lebensdauer der App angezeigt wird.
Wenn es nur eine Aktivität gab, haben die folgenden Zeilen im Manifest meinen Zweck erfüllt:
<activity android:name=".FirstActivity">
<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>
Dies hat Folgendes getan:
Starten von FirstActivity, wenn ein USB-Gerät (in XML erwähnt) angeschlossen ist, ist die App noch nicht geöffnet.Prompt für USB-Geräteberechtigung wird nur einmal angezeigt.Wie ändere ich dies, um Folgendes zu erreichen:
Wenn SecondActivity bereits ausgeführt wird und ein neues USB-Gerät angeschlossen ist, muss ich das Gerät verwenden können, ohne die App neu zu starten. Also habe ich einen Rundfunkempfänger dafür wie folgt geschrieben:
public class TriggerReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(UsbManager.ACTION_USB_DEVICE_ATTACHED)) {
read connected usb devices and register serial port call listener back.
}
}
Aber das Problem istFirstActivity
wird erneut neu gestartet, wenn ein USB-Gerät angeschlossen wird, währendSecondActivity
läuft. Wie vermeide ich das?
Wird bei Bedarf weitere Informationen hinzufügen. Wäre für jede Hilfe dankbar.