Send broadcast intent to karoo-powerbar extension on reminder display

This commit is contained in:
Tim Kluge 2024-12-10 22:00:58 +01:00
parent 1b7a2457d0
commit 9ab7a85ab1
3 changed files with 14 additions and 5 deletions

View File

@ -13,8 +13,8 @@ android {
applicationId = "de.timklge.karooreminder" applicationId = "de.timklge.karooreminder"
minSdk = 26 minSdk = 26
targetSdk = 34 targetSdk = 34
versionCode = 5 versionCode = 6
versionName = "1.0.4" versionName = "1.0.5"
} }
buildTypes { buildTypes {

View File

@ -3,8 +3,8 @@
"packageName": "de.timklge.karooreminder", "packageName": "de.timklge.karooreminder",
"iconUrl": "https://github.com/timklge/karoo-reminder/releases/latest/download/karoo-reminder.png", "iconUrl": "https://github.com/timklge/karoo-reminder/releases/latest/download/karoo-reminder.png",
"latestApkUrl": "https://github.com/timklge/karoo-reminder/releases/latest/download/app-release.apk", "latestApkUrl": "https://github.com/timklge/karoo-reminder/releases/latest/download/app-release.apk",
"latestVersion": "1.0.4", "latestVersion": "1.0.5",
"latestVersionCode": 5, "latestVersionCode": 6,
"developer": "timklge", "developer": "timklge",
"description": "Simple karoo extension that shows in-ride alerts every X minutes", "description": "Simple karoo extension that shows in-ride alerts every X minutes",
"releaseNotes": "Added display duration setting, bluetooth alert sound" "releaseNotes": "Added display duration setting, bluetooth alert sound"

View File

@ -1,5 +1,6 @@
package de.timklge.karooreminder package de.timklge.karooreminder
import android.content.Intent
import android.media.MediaPlayer import android.media.MediaPlayer
import android.util.Log import android.util.Log
import de.timklge.karooreminder.screens.Reminder import de.timklge.karooreminder.screens.Reminder
@ -26,7 +27,7 @@ import kotlinx.coroutines.flow.mapNotNull
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import kotlinx.serialization.json.Json import kotlinx.serialization.json.Json
class KarooReminderExtension : KarooExtension("karoo-reminder", "1.0.4") { class KarooReminderExtension : KarooExtension("karoo-reminder", "1.0.5") {
companion object { companion object {
const val TAG = "karoo-reminder" const val TAG = "karoo-reminder"
@ -73,7 +74,15 @@ class KarooReminderExtension : KarooExtension("karoo-reminder", "1.0.4") {
.filter { reminder -> reminder.isActive && elapsedMinutes % reminder.interval == 0 } .filter { reminder -> reminder.isActive && elapsedMinutes % reminder.interval == 0 }
.forEach { reminder -> .forEach { reminder ->
karooSystem.dispatch(TurnScreenOn) karooSystem.dispatch(TurnScreenOn)
val intent = Intent("de.timklge.HIDE_POWERBAR").apply {
putExtra("duration", (if(reminder.isAutoDismiss) reminder.autoDismissSeconds * 1000L else 15_000L) + 1000L)
putExtra("location", "top")
}
delay(1_000) delay(1_000)
applicationContext.sendBroadcast(intent)
if (reminder.tone != ReminderBeepPattern.NO_TONES){ if (reminder.tone != ReminderBeepPattern.NO_TONES){
karooSystem.dispatch(PlayBeepPattern(reminder.tone.tones)) karooSystem.dispatch(PlayBeepPattern(reminder.tone.tones))
mediaPlayer.start() mediaPlayer.start()