refactor: Improve structure

This commit is contained in:
Myzel394 2023-08-02 17:45:20 +02:00
parent 3ff6638e95
commit 824fc4ef4f
No known key found for this signature in database
GPG Key ID: 50098FCA22080F0F
5 changed files with 14 additions and 11 deletions

View File

@ -73,5 +73,7 @@ dependencies {
implementation 'com.arthenica:ffmpeg-kit-full:5.1' implementation 'com.arthenica:ffmpeg-kit-full:5.1'
implementation "androidx.datastore:datastore-preferences:1.0.0"
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.3' coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.3'
} }

View File

@ -29,7 +29,7 @@
<category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.LAUNCHER" />
</intent-filter> </intent-filter>
</activity> </activity>
<service android:name=".RecorderService" android:foregroundServiceType="microphone" /> <service android:name=".services.RecorderService" android:foregroundServiceType="microphone" />
</application> </application>
</manifest> </manifest>

View File

@ -10,6 +10,7 @@ import androidx.compose.material3.Text
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.Preview
import app.myzel394.locationtest.ui.screens.AudioRecorder
import app.myzel394.locationtest.ui.theme.LocationTestTheme import app.myzel394.locationtest.ui.theme.LocationTestTheme
class MainActivity : ComponentActivity() { class MainActivity : ComponentActivity() {

View File

@ -1,4 +1,4 @@
package app.myzel394.locationtest package app.myzel394.locationtest.services
import android.app.Service import android.app.Service
import android.content.Context import android.content.Context
@ -12,9 +12,9 @@ import android.os.Looper
import android.util.Log import android.util.Log
import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.mutableStateOf
import androidx.core.app.NotificationCompat import androidx.core.app.NotificationCompat
import app.myzel394.locationtest.R
import com.arthenica.ffmpegkit.FFmpegKit import com.arthenica.ffmpegkit.FFmpegKit
import com.arthenica.ffmpegkit.ReturnCode import com.arthenica.ffmpegkit.ReturnCode
import kotlinx.coroutines.NonCancellable.start
import java.io.File import java.io.File
import java.time.LocalDateTime import java.time.LocalDateTime
import java.time.ZoneId import java.time.ZoneId
@ -30,7 +30,7 @@ class RecorderService: Service() {
private var mediaRecorder: MediaRecorder? = null private var mediaRecorder: MediaRecorder? = null
private var onError: MediaRecorder.OnErrorListener? = null private var onError: MediaRecorder.OnErrorListener? = null
private var onStateChange: (RecorderService.RecorderState) -> Unit = {} private var onStateChange: (RecorderState) -> Unit = {}
private var counter = 0 private var counter = 0
@ -66,7 +66,7 @@ class RecorderService: Service() {
this.onError = onError this.onError = onError
} }
fun setOnStateChangeListener(onStateChange: (RecorderService.RecorderState) -> Unit) { fun setOnStateChangeListener(onStateChange: (RecorderState) -> Unit) {
this.onStateChange = onStateChange this.onStateChange = onStateChange
} }

View File

@ -1,4 +1,4 @@
package app.myzel394.locationtest package app.myzel394.locationtest.ui.screens
import android.Manifest import android.Manifest
import android.content.ComponentName import android.content.ComponentName
@ -10,13 +10,13 @@ import android.os.IBinder
import androidx.activity.compose.rememberLauncherForActivityResult import androidx.activity.compose.rememberLauncherForActivityResult
import androidx.activity.result.contract.ActivityResultContracts import androidx.activity.result.contract.ActivityResultContracts
import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.material3.Button import androidx.compose.material3.Button
import androidx.compose.material3.Text import androidx.compose.material3.Text
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalContext
import androidx.compose.runtime.* import androidx.compose.runtime.*
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import app.myzel394.locationtest.services.RecorderService
@Composable @Composable
fun AudioRecorder() { fun AudioRecorder() {