Я написал код, который подключается к базе данных ответов, берет с неё один и выводит его как текст в приложении, но Android Studio ошибок не выдаёт, но приложение сразу вылетает
package com.example.bigpenis
import android.annotation.SuppressLint
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.*
import androidx.compose.material.Button
import androidx.compose.material.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import java.sql.DriverManager
class DatabaseHelper(private val databasePath: String) {
private var connection = DriverManager.getConnection("jdbc:sqlite:$databasePath")
fun getText(): String {
val statement = connection.createStatement()
val resultSet = statement.executeQuery("SELECT * FROM Answer")
val text = if (resultSet.next()) resultSet.getString("ans") else ""
resultSet.close()
statement.close()
return text
}
fun close() {
connection.close()
}
}
@Composable
fun Get_str(databaseHelper: DatabaseHelper) {
val text = databaseHelper.getText()
Text(text)
}
class MainActivity : ComponentActivity() {
@SuppressLint("Range")
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
Box(
modifier = Modifier
.fillMaxSize()
.padding(vertical = 50.dp), contentAlignment = Alignment.TopCenter
) {
val a = DatabaseHelper("D:\\BigPenis\\app\\src\\main\\res\\raw\\man.sqlite")
Get_str(databaseHelper = a)
Box(modifier = Modifier.fillMaxSize(), contentAlignment = Alignment.Center) {
Column(verticalArrangement = Arrangement.Center) {
// Вот в этой хуйне будем стряпать кнопки
Text("Кнопки")
}
}
Box(
modifier = Modifier
.fillMaxSize()
.padding(vertical = 50.dp,), contentAlignment = Alignment.BottomEnd
) {
//
Button(onClick = { /*TODO*/ },) {
Text(text = "Дальше")
}
}
}
}
}
}