Compare commits

...

9 Commits
0.1 ... master

Author SHA1 Message Date
5a8279c683 chart translation 2025-05-25 17:07:53 +02:00
60831c9fa0 correct light mode 2025-05-21 11:44:12 +02:00
24986f1885 add zh 2025-05-19 13:35:37 +02:00
e18d0ba99d color changes to use a darker theme 2025-05-15 16:34:27 +02:00
31e1d75fe0 remove useless verification for non-null type 2025-05-15 16:17:01 +02:00
fb62dd37e2 add de 2025-05-15 14:21:43 +02:00
00b7f9f594 add es and ja translation 2025-05-15 12:07:26 +02:00
8f5c8dbd01 Set Toast string dynamically to enable translation and add french 2025-05-15 11:21:11 +02:00
632777819b disable isTesting 2025-04-28 20:01:20 +02:00
12 changed files with 92 additions and 20 deletions

View File

@ -52,7 +52,7 @@ class MainActivity : AppCompatActivity() {
private var startTime: Long = 0L
private val isTesting = true
private val isTesting = false
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@ -72,13 +72,13 @@ class MainActivity : AppCompatActivity() {
bluetoothManager = getSystemService(BLUETOOTH_SERVICE) as android.bluetooth.BluetoothManager
bluetoothAdapter = bluetoothManager.adapter
if (bluetoothAdapter == null) {
Toast.makeText(this, "Bluetooth not supported by your device", Toast.LENGTH_LONG).show()
Toast.makeText(this, getString(R.string.bluetooth_unsupported), Toast.LENGTH_LONG).show()
return
}
connectBtn.setOnClickListener {
if (isConnected) {
Toast.makeText(this, "Already connected", Toast.LENGTH_SHORT).show()
Toast.makeText(this, getString(R.string.already_connected), Toast.LENGTH_SHORT).show()
return@setOnClickListener
}
@ -86,7 +86,7 @@ class MainActivity : AppCompatActivity() {
}
if (isTesting) {
Toast.makeText(this, "Running in testing mode", Toast.LENGTH_SHORT).show()
Toast.makeText(this, getString(R.string.is_testing_mode), Toast.LENGTH_SHORT).show()
Log.d(tag, "Starting fake data stream")
Thread {
@ -111,7 +111,7 @@ class MainActivity : AppCompatActivity() {
val device = pairedDevices?.find { it.name == deviceName }
if (device == null) {
Toast.makeText(this, "HC-05 not found, try pairing it to your phone via bluetooth", Toast.LENGTH_LONG).show()
Toast.makeText(this, getString(R.string.hc05_not_found), Toast.LENGTH_LONG).show()
return
}
@ -121,13 +121,13 @@ class MainActivity : AppCompatActivity() {
bluetoothSocket?.connect()
isConnected = true
runOnUiThread {
Toast.makeText(this, "Connected to HC-05", Toast.LENGTH_SHORT).show()
Toast.makeText(this, getString(R.string.connected), Toast.LENGTH_SHORT).show()
}
listenForData()
} catch (e: IOException) {
Log.e(tag, "Connection failed", e)
runOnUiThread {
Toast.makeText(this, "Connection failed: ${e.message}", Toast.LENGTH_LONG).show()
Toast.makeText(this, getString(R.string.connection_failed) + ": ${e.message}", Toast.LENGTH_LONG).show()
}
}
}.start()
@ -191,7 +191,7 @@ class MainActivity : AppCompatActivity() {
xAxis.apply {
position = XAxis.XAxisPosition.BOTTOM
valueFormatter = object : ValueFormatter() {
override fun getFormattedValue(value: Float): String? {
override fun getFormattedValue(value: Float): String {
return "${value.toInt()}s"
}
}
@ -220,7 +220,7 @@ class MainActivity : AppCompatActivity() {
humEntries.add(Entry(reading.secSinceStart.toFloat(), reading.humidity))
}
val tempSet = LineDataSet(tempEntries, "Temperature (°C)").apply {
val tempSet = LineDataSet(tempEntries, getString(R.string.temp_tx)).apply {
color = Color.RED
lineWidth = 2f
setDrawCircles(false)
@ -229,7 +229,7 @@ class MainActivity : AppCompatActivity() {
fillDrawable = ContextCompat.getDrawable(this@MainActivity, R.drawable.gradiant_temp)
}
val humSet = LineDataSet(humEntries, "Humidity (%)").apply {
val humSet = LineDataSet(humEntries, getString(R.string.hum_tx)).apply {
color = Color.BLUE
lineWidth = 2f
setDrawCircles(false)

View File

@ -66,7 +66,7 @@
android:layout_marginTop="16dp"
android:layout_marginEnd="16dp"
android:layout_marginBottom="8dp"
android:background="@android:color/white"
android:background="@color/colorBackground"
app:layout_constraintTop_toBottomOf="@id/temp_circle"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
@ -80,7 +80,7 @@
android:layout_marginTop="8dp"
android:layout_marginEnd="16dp"
android:layout_marginBottom="16dp"
android:background="@android:color/white"
android:background="@color/colorBackground"
app:layout_constraintTop_toBottomOf="@id/temp_chart"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"

View File

@ -0,0 +1,12 @@
<resources>
<string name="app_name" translatable="false">I2D_Project_15_app</string>
<string name="connect_btn">Anschluss an HC-05</string>
<string name="connected">Verbunden mit HC-05</string>
<string name="bluetooth_unsupported">Bluetooth wird von Ihrem Gerät nicht unterstützt</string>
<string name="already_connected">Das Gerät ist bereits verbunden</string>
<string name="is_testing_mode">Die Anwendung läuft im Testmodus, die Werte sind zufällig</string>
<string name="hc05_not_found">HC-05 nicht gefunden, versuchen Sie, es über Bluetooth mit Ihrem Telefon zu koppeln</string>
<string name="connection_failed">Verbindung fehlgeschlagen</string>
<string name="temp_tx">Temperatur (°C)</string>
<string name="hum_tx">Luftfeuchtigkeit (%)</string>
</resources>

View File

@ -0,0 +1,12 @@
<resources>
<string name="app_name" translatable="false">I2D_Project_15_app</string>
<string name="connect_btn">Conectar a HC-05</string>
<string name="connected">Conectado a HC-05</string>
<string name="bluetooth_unsupported">El dispositivo no es compatible con Bluetooth</string>
<string name="already_connected">El dispositivo ya está conectado</string>
<string name="is_testing_mode">La aplicación se está ejecutando en modo de prueba los valores son aleatorios</string>
<string name="hc05_not_found">HC-05 no encontrado, intente emparejarlo a su teléfono a través de bluetooth</string>
<string name="connection_failed">Error de conexión</string>
<string name="temp_tx">Temperatura (°C)</string>
<string name="hum_tx">Humedad (%)</string>
</resources>

View File

@ -2,4 +2,11 @@
<string name="app_name" translatable="false">I2D_Project_15_app</string>
<string name="connect_btn">Se connecter au HC-05</string>
<string name="connected">Connecté au HC-05</string>
<string name="bluetooth_unsupported">Votre appareil ne supporte pas le bluetooth</string>
<string name="already_connected">Le module est déja connecté</string>
<string name="is_testing_mode">L\'application est en mode de test les valeurs sont aléatoires</string>
<string name="hc05_not_found">HC-05 introuvable, essayez de l\'apparailler a votre téléphone en bluetooth</string>
<string name="connection_failed">Connexion impossible</string>
<string name="temp_tx">Température (°C)</string>
<string name="hum_tx">Humidité (%)</string>
</resources>

View File

@ -0,0 +1,12 @@
<resources>
<string name="app_name" translatable="false">I2D_Project_15_app</string>
<string name="connect_btn">HC-05に接続</string>
<string name="connected">HC-05に接続成功</string>
<string name="bluetooth_unsupported">お使いのデバイスではBluetoothがサポートされていません</string>
<string name="already_connected">デバイスはすでに接続されている</string>
<string name="is_testing_mode">アプリはテストモードで動作しており、値はランダムです。</string>
<string name="hc05_not_found">HC-05が見つかりません。ブルートゥースで携帯電話とペアリングしてみてください。</string>
<string name="connection_failed">接続に失敗</string>
<string name="temp_tx">温度 (°C)</string>
<string name="hum_tx">湿度(%)</string>
</resources>

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary_light">#3D2F71</color>
<color name="colorPrimary_dark">#141118</color>
<color name="colorAccent">#343434</color>
<color name="colorBackground">#141118</color>
</resources>

View File

@ -1,7 +1,10 @@
<resources>
<!-- Base application theme. -->
<style name="Base.Theme.I2D_Project_15_app" parent="Theme.Material3.DayNight.NoActionBar">
<!-- Customize your dark theme here. -->
<!-- <item name="colorPrimary">@color/my_dark_primary</item> -->
<item name="colorPrimary">@color/colorPrimary_light</item>
<item name="colorPrimaryDark">@color/colorPrimary_dark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:background">@color/colorBackground</item>
</style>
<style name="Theme.I2D_Project_15_app" parent="Base.Theme.I2D_Project_15_app" />
</resources>

View File

@ -0,0 +1,12 @@
<resources>
<string name="app_name" translatable="false">I2D_Project_15_app</string>
<string name="connect_btn">连接至 HC-05</string>
<string name="connected">与 HC-05 连接</string>
<string name="bluetooth_unsupported">您的设备不支持蓝牙</string>
<string name="already_connected">设备已连接</string>
<string name="is_testing_mode">应用程序在测试模式下运行,数值是随机的</string>
<string name="hc05_not_found">HC-05 未找到,请尝试通过蓝牙将其与手机配对</string>
<string name="connection_failed">连接失败</string>
<string name="temp_tx">温度°C</string>
<string name="hum_tx">湿度 (%)</string>
</resources>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary_light">#00246B</color>
<color name="colorPrimary_dark">#CADCFC</color>
<color name="colorAccent">#97BAF8</color>
<color name="colorBackground">#97BAF8</color>
<color name="colorPrimary_light">#7C6AE6</color>
<color name="colorPrimary_dark">#1A1147</color>
<color name="colorAccent">#676767</color>
<color name="colorBackground">#FFFFFF</color>
</resources>

View File

@ -3,6 +3,14 @@
<string name="connect_btn">Connect to HC-05</string>
<string name="connected">Connected to HC-05</string>
<string name="bluetooth_unsupported">Bluetooth is not supported by your device</string>
<string name="already_connected">The device is already connected</string>
<string name="is_testing_mode">The app is running in testing mode the values are random</string>
<string name="hc05_not_found">HC-05 not found, try pairing it to your phone via bluetooth</string>
<string name="connection_failed">Connection failed</string>
<string name="temp_tx">Temperature (°C)</string>
<string name="hum_tx">Humidity (%)</string>
<string name="temp_format" translatable="false">%.1f°C</string>
<string name="hum_format" translatable="false">%.1f%%</string>

View File

@ -1,5 +1,4 @@
<resources>
<!-- Base application theme. -->
<style name="Base.Theme.I2D_Project_15_app" parent="Theme.Material3.DayNight.NoActionBar">
<item name="colorPrimary">@color/colorPrimary_light</item>
<item name="colorPrimaryDark">@color/colorPrimary_dark</item>