1

Как сделать свое уведомление в качестве сигнала тревоги, на данный момент я получаю уведомление только в том случае, если я нахожусь в приложении.Создать уведомление о тревоге Android

MainActivity:

public void sendNotificationIfTimeEnd01() { 
    Context context = getApplicationContext(); 
    Intent intent01 = new Intent(context, MainActivity.class); 
    PendingIntent pendingIntent01 = PendingIntent.getActivity(this, 1, intent01, 0); 
    NotificationCompat.Builder builder01 = new NotificationCompat.Builder(this) 
      .setSmallIcon(R.drawable.ic_stat_notification) 
      .setContentIntent(pendingIntent01) 
      .setAutoCancel(true) 
      .setLargeIcon(BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher)) 
      .setContentTitle(gamesJuliToStringArray[0]) 
      .setContentText("ready") 
      .setSubText("clkick"); 
    NotificationManager notificationManager = (NotificationManager) getSystemService(
      NOTIFICATION_SERVICE); 
    notificationManager.notify(NOTIFICATION_ID_01, builder01.build()); 
    try { 
     Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); 
     Ringtone r = RingtoneManager.getRingtone(getApplicationContext(), notification); 
     r.play(); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 

ответ

0

Может быть, вы должны использовать службу, как работает в фоновом режиме, в то время как вы выходите из приложения. Поскольку я прочитал ваше описание, кажется, что вы включили его в действие. Когда вы возвращаетесь домой, приложение находится в состоянии паузы. Я рекомендую вам запустить фоновый сервис.

проверка попробовать: Service

Я просто пытаюсь редактировать учебник от Google

public class HelloIntentService extends IntentService { 

    /** 
    * A constructor is required, and must call the super IntentService(String) 
    * constructor with a name for the worker thread. 
    */ 
    public HelloIntentService() { 
     super("HelloIntentService"); 
    } 


    @Override 
    protected void onHandleIntent(Intent intent) { 
     //maybe some works you need to do 
     //sleep for the time until you want the notification 
     //put you notification code here 
    } 
} 

Этого метод только в случае, если у вас есть работа, чтобы сделать до конца работы и отправить уведомление пользователю сигнализации.

Но если вы делаете будильник, который использует уведомление. Возможно, вы также можете попытаться использовать что-то вроде AlarmManager, Receiver для реализации. И я нахожу пример этой страницы: http://javapapers.com/android/android-alarm-clock-tutorial/

Извините за мой плохой английский и надеюсь, что это может вам помочь.

+0

Спасибо за ответ, не удалось найти что-либо в ссылке для запуска службы в фоновом режиме. У вас есть фрагмент, чтобы выполнить это? – Polik