Android 阻止连接到指定设备上的USB_设备

Android 阻止连接到指定设备上的USB_设备,android,usb,Android,Usb,我有一个当用户连接USB设备时打开的应用程序。一切都很好。 我需要的是仅为一个指定设备阻止此功能。 在AndroidManifest.xml中,我有: <activity android:name=".ConnectUSB" android:noHistory="true"> <intent-filter> <

我有一个当用户连接USB设备时打开的应用程序。一切都很好。 我需要的是仅为一个指定设备阻止此功能。 在AndroidManifest.xml中,我有:

        <activity
            android:name=".ConnectUSB"
            android:noHistory="true">
            <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" />
        </activity>
如果我将If添加到此类中,如:

boolean doNotStart=“Device”.equalsIgnoreCase(Build.BRAND)和&“XXX”.equalsIgnoreCase(Build.MODEL)

只有当设置为false时,才使用
startActivity
,此时仍会出现一个空白屏幕

如果我使用
finish
,当它为真时,显示屏上会出现白色闪烁


有人知道是否有可能做到这一点吗?

难道
设备过滤器不适合你吗?您可以在其中声明可以处理哪些设备


您也可以使用
服务
(中的概述)收听此
意图过滤器
,该过滤器将在后台启动。在那里检查连接的设备是否是“您的”,如果是
startActivity

设备过滤器
工作正常,但我不希望此过滤器仅在一个指定的设备上工作。我会检查
服务
。非常感谢。
public class ConnectUSB extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        Intent intent = new Intent(ConnectUSB.this, MainProg.class);
        intent.putExtra(MainProg.RUN_USB, true);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
        startActivity(intent);
    }
}