Não é possível executar o serviço quando a data muda usando o receptor de difusão

Eu crio um aplicativo de lembrete de aniversário. Eu quero começar o serviço às 12:00 da noite para escanear aniversários de pessoa no banco de dados. Eu adiciono um receptor de broadcast.

<receiver android:name=".MyReceiver">
    <intent-filter>
        <action android:name="android.intent.action.DATE_CHANGED"/>
    </intent-filter>
</receiver>

Mas isso não funciona. Eu não sei porque .. aqui está o código do receptor de broadcast .....

package com.example.forgetmenot;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;

public class MyReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context arg0, Intent arg1) {
        Toast.makeText(arg0, "BroadCast Receiver", Toast.LENGTH_SHORT).show();
        arg0.startService(new Intent("com.example.forgetmenot.BirthdayService"));
    }

}

Eu quero executar este código quando a data mudar. Por favor me ajude. Preciso que isso funcione para concluir meu aplicativo. obrigado...

questionAnswers(1)

yourAnswerToTheQuestion