Откуда андроид знает, который приемник BroadcastReceiver, чтобы позвонить ?
Внутри моего приложения для Android я создал простой Broadcastreceiverclass , а также добавил его в файл манифеста.
Теперь мой вопрос заключается в том , как Android узнает, какой класс Broadcastreceiver вызывать, если все, что мы можем добавить внутри файла Menifest, - это действия под тегом eceiver.
Кроме того , так ли это, что мы можем создать только один класс Broadcasreceiver в приложении для Android ?
или мы можем создать несколько номеров класса Broadcastreceiver ?
ДОБАВЛЕНО В ФАЙЛ МАНИФЕСТА :
<receiver android:name=".MyBroadcast"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> <action android:name="android.intent.action.AIRPLANE_MODE"/> </intent-filter> </receiver>
КЛАСС BROADCASTRECEIVER :
package com.deepesh.broadcastapp; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.util.Log; import android.widget.Toast; public class MyBroadcast extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())){ Toast.makeText(context, "Boot completed !", Toast.LENGTH_SHORT).show(); Log.d("Keyy","Boot completed !"); }else if (Intent.ACTION_AIRPLANE_MODE_CHANGED.equals(intent.getAction())){ Toast.makeText(context, "Airplane mode changed !", Toast.LENGTH_SHORT).show(); Log.d("Keyy","Airplane mode changed ! !"); } } }
Что я уже пробовал:
Попробовал гугл но никакого конкретного ответа на мой запрос я не нашел
David Crow
Вы можете создать как можно больше BroadcastReceiver
-производные классы, как вам нужно. Вызов registerReceiver()
для каждого из них.