I have a custom dialog with editText
and save button
. When button
clicked, I want it call MyReceiver. But the log and Toast in MyReceiver never get displayed.
Reminder
final AlertDialog.Builder builder = new AlertDialog.Builder(this);
LayoutInflater inflater = LayoutInflater.from(this);
View promptView = getLayoutInflater().inflate(R.layout.dialog_with_edittext, null);
Button save = (Button) promptView.findViewById(R.id.okBtn);
final EditText task = (EditText) promptView.findViewById(R.id.task);
time = (EditText) promptView.findViewById(R.id.time);
date = (EditText) promptView.findViewById(R.id.date);
final AlertDialog alert = builder.create();
date.setOnClickListener(this);
save.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
String addTask= task.getText().toString();
String time1= time.getText().toString();
String date1= date.getText().toString();
if (adapter != null) {
adapter.add(addTask,time1,date1);
insertTask(addTask, time1, date1);
listview.setAdapter(adapter);
alert.dismiss();
check();
}
c.set(Calendar.YEAR,year1);
c.set(Calendar.MONTH, month1);
c.set(Calendar.DAY_OF_MONTH, day1);
c.set(Calendar.HOUR_OF_DAY, hour1);
c.set(Calendar.MINUTE, min1);
c.set(Calendar.SECOND, 0);
c.set(Calendar.AM_PM,Calendar.AM);
Toast.makeText(getApplicationContext(),year1+""+month1+""+day1+"",Toast.LENGTH_SHORT).show();
Toast.makeText(getApplicationContext(),hour1+""+min1+"",Toast.LENGTH_SHORT).show();
Intent myIntent = new Intent(ReminderPage.this, MyReceiver.class);
pendingIntent = PendingIntent.getBroadcast(ReminderPage.this, 123456789, myIntent,0);
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, c.getTimeInMillis(), pendingIntent);
Toast.makeText(getApplicationContext(),"Alarm",Toast.LENGTH_SHORT).show();
}
});
alert.setView(promptView);
alert.show();
return true;
MyReceiver
public class MyReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
Log.i("App", "called receiver method");
try{
Toast.makeText(context,"Call Utils1",Toast.LENGTH_SHORT).show();
Utils1.generateNotification(context);
}catch(Exception e){
Toast.makeText(context,"Not Call Utils1",Toast.LENGTH_SHORT).show();
e.printStackTrace();
}
}
}
I also added this in my AndroidMainfest
<receiver android:name="com.example.MyReceiver"></receiver>
Utils1
public class Utils1 {
public static NotificationManager mManager;
@SuppressWarnings("static-access")
public static void generateNotification(Context context){
mManager = (NotificationManager) context.getSystemService(context.NOTIFICATION_SERVICE);
Intent intent1 = new Intent(context,Register.class);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 1, intent1, 0);
Notification.Builder builder = new Notification.Builder(context);
builder.setAutoCancel(false);
builder.setTicker("this is ticker text");
builder.setContentTitle("WhatsApp Notification");
builder.setContentText("You have a new message");
builder.setSmallIcon(R.drawable.done);
builder.setContentIntent(pendingIntent);
builder.setOngoing(true);
builder.setSubText("This is subtext..."); //API level 16
builder.setNumber(100);
builder.build();
Notification myNotication = builder.getNotification();
mManager.notify(0, myNotication);
}
}
Any help would be greatly appreciated.