2015-01-02 2 views
0

Я хочу добавить напоминание в свое приложение для Android, такое как Google Keep приложение напоминание для заметок, как вы знаете, в Gkeep вы можете установить напоминание для заметок по дате установки (сегодня , Завтра, В следующий же день или Выберите дату из Календаря) и установите время (Утро, День, Вечер, Ночь или выберите время с Часов). Любая помощь?Android: Как создать напоминание, такое как напоминание google

+1

Что именно вы возникли проблемы с? –

+0

Этот сайт не является бесплатной версией Mechanical Turk. Покажите свои попытки и укажите, где именно вы застряли; до тех пор, чтобы пометить закрытие. –

ответ

0

Я нашел свой ответ! и поделитесь им с тобой, потому что я думаю, что это не имеет ничего общего с механическим турком :)). в MainActivity:

final AlarmManager alarmManager = (AlarmManager)getSystemService(Context.ALARM_SERVICE); 
final Intent intentAlarm = new Intent(MainActivity.this, AlarmReceiver.class); 
Calendar calendar = Calendar.getInstance(); 
calendar.set(Calendar.SECOND, 0); 
calendar.set(Calendar.MINUTE, 22); 
calendar.set(Calendar.HOUR, 5); 
calendar.set(Calendar.AM_PM, Calendar.PM); 
calendar.set(Calendar.MONTH, 0); 
calendar.set(Calendar.DAY_OF_MONTH, 6); 
calendar.set(Calendar.YEAR,2015); 
long when = calendar.getTimeInMillis(); 
alarmManager.set(AlarmManager.RTC_WAKEUP,when, PendingIntent.getBroadcast(MainActivity.this,1, intentAlarm, PendingIntent.FLAG_UPDATE_CURRENT)); 

и класс AlarmReciver:

public class AlarmReceiver extends BroadcastReceiver { 
    @Override 
    public void onReceive(Context context, Intent intent) { 
     Calendar now = GregorianCalendar.getInstance(); 
      Notification.Builder mBuilder = 
        new Notification.Builder(context) 
        .setSound(android.provider.Settings.System.DEFAULT_NOTIFICATION_URI) 
        .setSmallIcon(R.drawable.ic_launcher) 
        .setContentTitle("my title") 
        .setContentText("my text");    
      Intent resultIntent = new Intent(context, MainActivity.class); 
      TaskStackBuilder stackBuilder = TaskStackBuilder.create(context); 
      stackBuilder.addParentStack(MainActivity.class); 
      stackBuilder.addNextIntent(resultIntent); 
      PendingIntent resultPendingIntent = stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT); 
      mBuilder.setContentIntent(resultPendingIntent); 
      NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); 
      mNotificationManager.notify(1, mBuilder.build()); 
    } 
} 

И отменить напоминание:

if (alarmManager!= null) { 
       alarmManager.cancel(PendingIntent.getBroadcast(MainActivity.this,1, intentAlarm, PendingIntent.FLAG_UPDATE_CURRENT)); 
      } 
Смежные вопросы