fix: kotlin code

This commit is contained in:
2025-10-21 17:29:03 +02:00
parent 845022ad6d
commit 0d4ec3c415
2 changed files with 10 additions and 19 deletions

View File

@ -1,10 +0,0 @@
package de.cfp.duck
import android.util.Log
class Duck {
fun pong(value: String): String {
Log.i("Pong", value)
return value
}
}

View File

@ -1,6 +1,7 @@
package de.cfp.duck
import android.app.Activity
import android.content.Context
import app.tauri.annotation.Command
import app.tauri.annotation.InvokeArg
import app.tauri.annotation.TauriPlugin
@ -10,19 +11,20 @@ import app.tauri.plugin.Invoke
import android.media.AudioFocusRequest
import android.media.AudioManager
import android.context.Context
import android.os.Build
import android.webkit.WebView
import androidx.annotation.RequiresApi
@TauriPlugin
class DuckPlugin(private val activity: Activity): Plugin(activity) {
private val implementation = Duck()
private lateinit var audioManager: AudioManager
private lateinit var focusRequest: AudioFocusRequest
private var focusRequest: AudioFocusRequest? = null
override fun load(webView: WebView) {
audioManager = (AudioManager) getBridge().getActivity().getSystemService(Context.AUDIO_SERVICE)
audioManager = activity.getSystemService(Context.AUDIO_SERVICE) as AudioManager
}
@RequiresApi(Build.VERSION_CODES.P)
@Command
fun duck(invoke: Invoke) {
focusRequest = AudioFocusRequest.Builder(AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK)
@ -30,19 +32,18 @@ class DuckPlugin(private val activity: Activity): Plugin(activity) {
.setWillPauseWhenDucked(false)
.setForceDucking(true)
.build()
audioManager.requestAudioFocus(focusRequest)
focusRequest?.let { audioManager.requestAudioFocus(it) }
val ret = JSObject()
ret.put("success", true)
invoke.resolve(ret)
}
@RequiresApi(Build.VERSION_CODES.O)
@Command
fun unduck(invoke: Invoke) {
if (focusRequest != null) {
audioManager.abandonAudioFocusRequest(focusRequest)
}
focusRequest?.let { audioManager.abandonAudioFocusRequest(it) }
val ret = JSObject()
ret.put("success", true)