1

マニフェストを介して静的に、またはアクティビティでレシーバーを登録および登録解除することにより、プログラムでブロードキャスト レシーバーを登録できることを理解しています。私の場合、コードがメモリにないときに、OS がブロードキャスト レシーバーをインスタンス化して呼び出すようにしたいと考えています。そのため、レシーバーをマニフェストに含めました。残念ながら、コードがメモリにない場合、ブロードキャスト レシーバーは実行されません。これがなぜなのか、私は非常に混乱しています。以下にマニフェストのスニペットを含めました。これに何か問題/不足がある場合はお知らせください。ありがとうございました。

<receiver android:name=".DesktopConnectionReceiver" 
        android:enabled="true"
        android:exported="true"
        android:process=":remote">
        <intent-filter>
            <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"/>
            <action android:name="android.hardware.usb.action.USB_DEVICE_DETACHED" />
            <action android:name="android.intent.action.ACTION_POWER_CONNECTED" />
            <action android:name="android.intent.action.ACTION_POWER_DISCONNECTED"/>
            <action android:name="android.intent.action.UMS_CONNECTED"/>
        </intent-filter>
    </receiver>
4

0 に答える 0