我正在使用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 代码,如果应用程序已经打开,可以检测设备,因此无需再次打开应用程序。在实践中,这只是一种烦恼。应用程序已打开,并在其顶部打开另一个"副本"。
听起来您需要
在活动的清单条目中设置一个标志。
singleTask
或singleInstance
,具体取决于您的需求。请参阅文档,了解每个含义:
希望对您有所帮助!