Massive/android/app/src/main/java/com/massive/TimerDone.kt

58 lines
2.1 KiB
Kotlin
Raw Normal View History

2022-10-19 06:59:22 +00:00
package com.massive
2022-11-04 23:53:48 +00:00
import android.app.Notification
import android.app.NotificationChannel
import android.app.NotificationManager
2022-10-19 06:59:22 +00:00
import android.content.Intent
2022-11-04 23:53:48 +00:00
import android.os.Build
2022-10-19 06:59:22 +00:00
import android.os.Bundle
import android.util.Log
import android.view.View
2022-11-04 23:53:48 +00:00
import androidx.annotation.RequiresApi
import androidx.appcompat.app.AppCompatActivity
2022-10-19 06:59:22 +00:00
class TimerDone : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_timer_done)
}
2022-11-04 23:53:48 +00:00
@RequiresApi(Build.VERSION_CODES.O)
@Suppress("UNUSED_PARAMETER")
2022-10-19 06:59:22 +00:00
fun stop(view: View) {
Log.d("TimerDone", "Stopping...")
applicationContext.stopService(Intent(applicationContext, AlarmService::class.java))
2022-11-04 23:53:48 +00:00
val manager = getManager()
manager.cancel(AlarmService.NOTIFICATION_ID_DONE)
2022-11-04 23:53:48 +00:00
manager.cancel(AlarmModule.NOTIFICATION_ID_PENDING)
2022-10-19 06:59:22 +00:00
val intent = Intent(applicationContext, MainActivity::class.java)
intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK
applicationContext.startActivity(intent)
}
2022-11-04 23:53:48 +00:00
@RequiresApi(Build.VERSION_CODES.O)
fun getManager(): NotificationManager {
val alarmsChannel = NotificationChannel(
AlarmService.CHANNEL_ID_DONE,
AlarmService.CHANNEL_ID_DONE,
2022-11-04 23:53:48 +00:00
NotificationManager.IMPORTANCE_HIGH
).apply {
description = "Alarms for rest timers."
lockscreenVisibility = Notification.VISIBILITY_PUBLIC
}
val timersChannel = NotificationChannel(
AlarmModule.CHANNEL_ID_PENDING,
AlarmModule.CHANNEL_ID_PENDING,
NotificationManager.IMPORTANCE_LOW
).apply {
setSound(null, null)
description = "Progress on rest timers."
}
val notificationManager = applicationContext.getSystemService(
NotificationManager::class.java
)
notificationManager.createNotificationChannel(alarmsChannel)
notificationManager.createNotificationChannel(timersChannel)
return notificationManager
}
2022-10-19 06:59:22 +00:00
}