Enviar a intenção de BroadcastReceiver com pendingIntent

votos
1

Quero enviar um objeto (o aniversário) usando AlarmManager para broadcastRecieve para notificar (lembrete)

alarmManager= (AlarmManager) getSystemService(ALARM_SERVICE);
            Intent intent=new Intent(NewBirthdayActivity.this, AlarmReceiver.class);

            intent.putExtra(birthday,birthDay);
           // sendBroadcast(intent);
            pendingIntent=PendingIntent.getBroadcast(NewBirthdayActivity.this,0,intent,PendingIntent.FLAG_UPDATE_CURRENT);

e em broadcastRecieve

  public void onReceive(Context context, Intent intent) {
    //c thong tin se duoc tiep nhan o day
    //no co the chay ngam
    Log.d(TAGGGGGGGGGG:,da nhan duoc thong tin dang ky);
    BirthDay birthDay= (BirthDay) intent.getSerializableExtra(  birthday);


    if(birthDay!=null){
        String title=birthDay.getName();
        String content=birthDay.getNote();

        NotificationCompat.Builder mBuilder =
                new NotificationCompat.Builder(context)
                        .setSmallIcon(R.drawable.icon_notify)
                        .setContentTitle(title)
                        .setContentText(content);
        //co the set them conten cho notify o day
        notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
        notificationManager.notify(1, mBuilder.build());
    }

}

mas o aniversário sempre nulo, não posso obter dados de aniversário para definir notificar. Pless me ajudar a resolvê-lo.
UPDATE: eu era converter objeto Birthay a matriz de bytes e enviá-lo. funciona!

Publicado 20/10/2018 em 14:01
fonte usuário
Em outras línguas...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more