2017-11-16 12 views
-1

私は毎朝午前5時にアラームを起動する必要があるアンドロイドアプリケーションに取り組んでいます。私はすでにIntentのコンセプトを使用しています(コードは以下です)。をServiceに入れています。しかし、私はどちらの実装からも問題解決を得られませんでした。私はちょうどこれのための完璧なソリューションを探しています。初めてにリマインダを1ヶ月間追加すると、アプリケーションが初めて開かれたときに動作する可能性があります。しかし、これ以上の解決策がある場合は、提供してください。何時でも毎日午前5時にアラームを起動するはずです。どうすればこれを達成できますか?あなたがサービスを実装する必要が毎日午前5時にアラーム

alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE); 
     Intent alarmIntent = new Intent(this, MyStartServiceReceiver.class); 
     PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 100, alarmIntent, PendingIntent.FLAG_UPDATE_CURRENT); 
     Calendar calendar = Calendar.getInstance(); 
     calendar.set(Calendar.HOUR_OF_DAY, 5); 
     calendar.set(Calendar.MINUTE, 5); 
     calendar.set(Calendar.SECOND, 0); 
     calendar.set(Calendar.AM_PM, Calendar.AM); 
     if (System.currentTimeMillis() > calendar.getTimeInMillis()) { 
      calendar.add(Calendar.DAY_OF_MONTH, 1); 
     } 
     alarmManager.cancel(pendingIntent); 
     alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pendingIntent); 
+0

バックグラウンドで「サービス」が必要な場合があります – ashishdhiman2007

+0

example @ ashishdhiman2007 – XoXo

+0

を提供できますか?[毎日特定の時間にサービス/アラームをトリガするようにアプリを設定する方法](https://stackoverflow.com/questions)/37273528 /毎日特定の時刻にアラームを設定する方法をアプリにトリガーする) – Haem

答えて

-2
+0

私は既にPendingServiceの中でAlarmManagerを設定しようとしましたが、それもうまくいきませんでした。 – XoXo

+0

サービスをAndroidマニフェストに登録しましたか?または活動中? –

+0

はい、私はやりました。通知も受けています。しかし、私が設定している現時点ではありません。 – XoXo

0

でサービスを実装する上で多くのチュートリアルを見つけることは、次のこと

  1. 変更にアラームを変更しようタイプ:inexactrepeatingrepeating
  2. 変更calendar.add(Calendar.DAY_OF_MONTH, 1);calendar.add(Calendar.DATE,1);

私はこれが動作するかどうかお知らせください。

+0

いいえ、それはうまくいきませんでした。 – XoXo

+0

はどこかのように見えますが、いくつかのアクセス許可が不足しているため、これがうまくいかない理由です。私たちがよりよく見えるように、コード全体を貼り付けてください。 – Aradhna

関連する問題