0

Android USB ホストを使用しており、デバイスが電話に接続されているときにアプリを開く意図があります。ただし、アプリが開いている場合は、もう一度開きたくありません。

以下は、マニフェスト ファイルからの関連コードです。

<intent-filter>
     <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/device_filter" />

<intent-filter>
   <action android:name="android.intent.action.MAIN" />
   <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

アプリが既に開いている場合にデバイスを検出できる Java コードがあるため、アプリを再度開く必要はありません。実際には、これは単なる煩わしさです。アプリが開いており、その上に別の「コピー」が開きます。

4

1 に答える 1

1

アクティビティのマニフェスト エントリにフラグを設定する必要があるようです。

必要に応じてsingleTaskまたはのいずれか。それぞれの意味については、ドキュメントsingleInstanceを参照してください。

それが役立つことを願っています!

于 2019-04-29T03:12:19.450 に答える