Так что я пытался зарегистрировать Intent.ACTION_DREAMING_STARTED
внутри моего AndroidManifest
без успеха.Зарегистрируйтесь для Intent.ACTION_DREAMING_STARTED в AndroidManifest
<application>
...
<receiver android:name=".broadcastReceivers.DreamingReceiver">
<intent-filter>
<action android:name="android.intent.action.DREAMING_STOPPED"/>
<action android:name="android.intent.action.DREAMING_STARTED"/>
</intent-filter>
</receiver>
...
</application>
Это определение приемника.
public class DreamingReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
Log.d("DreamingReceiver", "Intent: " + intent.getAction());
}
}
Когда начинаются мечты, в этом BroadcastReceiver нет ни одного журнала.
Однако, когда я определяю приемник в onCreate
методе мои Activity
«ы так:
this.receiver = new BroadcastReceiver()
{
@Override
public void onReceive(Context context, Intent intent)
{
Log.d("Activity Dreaming", "Intent: " + intent.getAction());
}
};
IntentFilter filter = new IntentFilter(Intent.ACTION_DREAMING_STARTED);
filter.addAction(Intent.ACTION_DREAMING_STOPPED);
this.registerReceiver(this.receiver, filter);
я получить журнал всякий раз, когда мое устройство на входе/выходе грезу. Есть ли причина, почему BroadcastReceiver
, который я определил в своем AndroidManifest, не поймает намерения?
Видимо, это не требует каких-либо разрешений в соответствии с Intent
reference в
FYI, работающий на Android KitKat 4,4
Спасибо! Отличный ответ! – Snaker