USB连接到手机时自动启动android java应用程序?

Auto start android java application when USB is connected to mobile?

提问人:Rav 提问时间:8/30/2023 更新时间:8/30/2023 访问量:30

问:

每当任何硬件连接到手机的 USB 端口时,我都会尝试启动一个 android 应用程序。

我正在做的是创建一个 BroadcastReceiver 并将其注册到AndroidManifest.xml

<receiver android:name=".MyBroadcastReceiver"
    android:exported="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" />
</receiver>

在 BroadcastReceiver 的 onReceive() 方法中,我正在执行以下操作

if(intent.getAction().equals("android.hardware.usb.action.USB_DEVICE_ATTACHED") {
    Intent launchIntent = new Intent(context, MainActivity.class);
    context.startActivity(launchIntent);
}

但它不起作用。

如果我将意图过滤器和元数据放入清单文件中的活动,我肯定能够启动应用程序。但我不想这样做,因为这会启动测试活动。

我该如何完成这项工作?

这样,每当我将一些硬件连接到我的手机时,我的应用程序就会从广播接收器自动启动。

Android BroadcastReceiver 启动活动

评论


答: 暂无答案