kotlinで〇時〇分になったら何か(トースト、アクティビティ遷移など)をさせたいのですが、
アラームをセットするところまではエラーなくいったのですが
コードのどこにその処理を書けばよいのかわかりませんでした。
コードのどこに実行させたい処理をかけば適切ですか?
コードです(このコードは5分後に何かするコードです。)
アラームマネージャーは
setExactAndAllowWhileIdle
で適切ですか?
mainactivity.kt※一部
KOTLIN
1 startstop.setOnClickListener { 2 //現在時刻を取得 3 var calendar = Calendar.getInstance() 4 calendar.timeInMillis = System.currentTimeMillis() 5 calendar.add(Calendar.MINUTE,5) 6 7 val intent = Intent(this,AlarmBroadcastReceiver::class.java) 8 val pending = PendingIntent.getBroadcast(this,777,intent,0) 9 10 //アラームマネージャーの設定 11 var am : AlarmManager = getSystemService(ALARM_SERVICE) as AlarmManager 12 am.setExactAndAllowWhileIdle(AlarmManager.RTC_WAKEUP,calendar.timeInMillis,pending) 13 startstop.text = "timer_setted" 14 15 }
AlarmBroadcastReceiver.kt
import android.content.BroadcastReceiver import android.content.Context import android.content.Intent import android.widget.Toast class AlarmBroadcastReceiver() : BroadcastReceiver() { override fun onReceive(context: Context?, intent: Intent?) { } }
※startstopはボタンです
試したこと
override fun onReceive(context: Context?, intent: Intent?) { }
に
Toast.makeText(context,"Received", Toast.LENGTH_LONG).show()
を入れた→トーストが出ない
setExact <-> setExactAndAllowWhileIdle
環境
androidstudio 最新
windows 10 home
設定
minSdkVersion 23
回答1件
あなたの回答
tips
プレビュー