Bugfix #2 for showing Glocke Image in Notification and Activity.

This commit is contained in:
2025-10-11 13:24:42 +02:00
committed by fklebl
parent d488b1dc48
commit 232f76215f
15 changed files with 81 additions and 86 deletions

2
.idea/compiler.xml generated
View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<bytecodeTargetLevel target="17" />
<bytecodeTargetLevel target="21" />
</component>
</project>

2
.idea/gradle.xml generated
View File

@@ -4,6 +4,7 @@
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="testRunner" value="CHOOSE_PER_TEST" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleJvm" value="#GRADLE_LOCAL_JAVA_HOME" />
<option name="modules">
@@ -12,7 +13,6 @@
<option value="$PROJECT_DIR$/app" />
</set>
</option>
<option name="resolveExternalAnnotations" value="false" />
</GradleProjectSettings>
</option>
</component>

2
.idea/misc.xml generated
View File

@@ -1,6 +1,6 @@
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="jbr-17" project-jdk-type="JavaSDK">
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" default="true" project-jdk-name="jbr-21" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">

View File

@@ -12,7 +12,7 @@ android {
minSdk 26
targetSdk 34
versionCode 1
versionName "25.1006.1"
versionName "25.1011.1"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}

Binary file not shown.

View File

@@ -111,11 +111,7 @@ public class FragmentHeizkoerper extends Fragment {
}
picker.setDisplayedValues(values);
builder.setPositiveButton(android.R.string.ok, (dialog, id) -> {
if (values[picker.getValue()].equals("on") || values[picker.getValue()].equals("off")) {
button.setText(values[picker.getValue()]);
} else {
button.setText(values[picker.getValue()]);
}
button.setText(values[picker.getValue()]);
Log.d("SollTempGrossraum", "Solltemp" + roomSollTemp + ", Button " + button.getText());
if (!roomSollTemp.contentEquals(button.getText())) {
@@ -144,7 +140,7 @@ public class FragmentHeizkoerper extends Fragment {
btn_HK_Bad = view.findViewById(R.id.btn_HK_Bad);
btn_HK_Florian = view.findViewById(R.id.btn_HK_Florian);
btn_HK_Stefan = view.findViewById(R.id.btn_HK_Stefan);
btn_HK_Dachboden = view.findViewById(R.id.btn_HK_Dachboden);
// btn_HK_Dachboden = view.findViewById(R.id.btn_HK_Dachboden);
Log.d("SollTempGrossraum", sollTempHKGrossraum);
Log.d("SollTempDoris", sollTempHKDoris);
@@ -167,7 +163,7 @@ public class FragmentHeizkoerper extends Fragment {
btn_HK_Bad.setText(sollTempHKBad);
btn_HK_Florian.setText(sollTempHKFlorian);
btn_HK_Stefan.setText(sollTempHKStefan);
btn_HK_Dachboden.setText(sollTempHKDachboden);
// btn_HK_Dachboden.setText(sollTempHKDachboden);
btn_HK_Grossraum.setOnClickListener(v -> showNumberPickerDialog(btn_HK_Grossraum, sollTempHKGrossraum, "Grossraum", switch_HK_Grossraum));
@@ -188,7 +184,7 @@ public class FragmentHeizkoerper extends Fragment {
btn_HK_Stefan.setOnClickListener(v -> showNumberPickerDialog(btn_HK_Stefan, sollTempHKStefan, "Stefan", switch_HK_Stefan));
btn_HK_Dachboden.setOnClickListener(v -> showNumberPickerDialog(btn_HK_Dachboden, sollTempHKDachboden, "Dachboden", switch_HK_Dachboden));
// btn_HK_Dachboden.setOnClickListener(v -> showNumberPickerDialog(btn_HK_Dachboden, sollTempHKDachboden, "Dachboden", switch_HK_Dachboden));
}
private void handleTextViews() {
@@ -214,7 +210,7 @@ public class FragmentHeizkoerper extends Fragment {
switch_HK_Bad = view.findViewById(R.id.switch_HK_Bad);
switch_HK_Florian = view.findViewById(R.id.switch_HK_Florian);
switch_HK_Stefan = view.findViewById(R.id.switch_HK_Stefan);
switch_HK_Dachboden = view.findViewById(R.id.switch_HK_Dachboden);
// switch_HK_Dachboden = view.findViewById(R.id.switch_HK_Dachboden);
if (modeHKGrossraum.equals("manual")) {
switch_HK_Grossraum.setChecked(false);
@@ -288,13 +284,13 @@ public class FragmentHeizkoerper extends Fragment {
switch_HK_Stefan.setText(R.string.auto);
}
if (modeHKDachboden.equals("manual")) {
switch_HK_Dachboden.setChecked(false);
switch_HK_Dachboden.setText(R.string.man);
} else {
switch_HK_Dachboden.setChecked(true);
switch_HK_Dachboden.setText(R.string.auto);
}
// if (modeHKDachboden.equals("manual")) {
// switch_HK_Dachboden.setChecked(false);
// switch_HK_Dachboden.setText(R.string.man);
// } else {
// switch_HK_Dachboden.setChecked(true);
// switch_HK_Dachboden.setText(R.string.auto);
// }
switch_HK_Grossraum.setOnClickListener(v -> {
if (switch_HK_Grossraum.isChecked()) {
@@ -404,17 +400,17 @@ public class FragmentHeizkoerper extends Fragment {
}
});
switch_HK_Dachboden.setOnClickListener(v -> {
if (switch_HK_Dachboden.isChecked()) {
Log.d("Mode" + modeHKDachboden, "Mode auto");
switch_HK_Dachboden.setText(R.string.auto);
MqttClient.publish("fhem/Heizung/MAX_Dachboden/set/mode", "auto", 2, false);
} else if (!switch_HK_Dachboden.isChecked()) {
Log.d("Mode" + modeHKDachboden, "Mode manual");
switch_HK_Dachboden.setText(R.string.man);
MqttClient.publish("fhem/Heizung/MAX_Dachboden/set/mode", "manual", 2, false);
}
});
// switch_HK_Dachboden.setOnClickListener(v -> {
// if (switch_HK_Dachboden.isChecked()) {
// Log.d("Mode" + modeHKDachboden, "Mode auto");
// switch_HK_Dachboden.setText(R.string.auto);
// MqttClient.publish("fhem/Heizung/MAX_Dachboden/set/mode", "auto", 2, false);
// } else if (!switch_HK_Dachboden.isChecked()) {
// Log.d("Mode" + modeHKDachboden, "Mode manual");
// switch_HK_Dachboden.setText(R.string.man);
// MqttClient.publish("fhem/Heizung/MAX_Dachboden/set/mode", "manual", 2, false);
// }
// });
}
private void setTextColor(TextView tv, String temp) {

View File

@@ -70,10 +70,8 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
ID = "haussteuerung-android-" + Build.MODEL + "-" + androidId;
Log.d("ID", ID);
int permissionState = 0;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
permissionState = ContextCompat.checkSelfPermission(this, Manifest.permission.POST_NOTIFICATIONS);
}
int permissionState;
permissionState = ContextCompat.checkSelfPermission(this, Manifest.permission.POST_NOTIFICATIONS);
// If the permission is not granted, request it.
if (permissionState == PackageManager.PERMISSION_DENIED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.POST_NOTIFICATIONS}, 1);

View File

@@ -124,7 +124,7 @@ public class MqttClient {
try {
client.connect(mqttConnectOptions);
subscribe("stat/Haussteuerung/#");
subscribe("fhem/temp/#");
// subscribe("fhem/temp/#");
subscribe("fhem/Heizung/#");
subscribe("tele/sonoff153/#");
subscribe("growatt/#");
@@ -226,11 +226,11 @@ public class MqttClient {
}
if (topic.equals("fhem/temp/Temp_Boiler_oben")) {
if (topic.equals("stat/Haussteuerung/Temperatur/Temp_Boiler_oben")) {
FragmentWW.tempBoilerOben = message.toString();
}
if (topic.equals("fhem/temp/Temp_Boiler_unten")) {
if (topic.equals("stat/Haussteuerung/Temperatur/Temp_Boiler_unten")) {
FragmentWW.tempBoilerUnten = message.toString();
}
@@ -243,7 +243,7 @@ public class MqttClient {
FragmentHeizkoerper.sollTempHKGrossraum = message.toString();
}
if (topic.equals("fhem/temp/Temp_Grossraum")) {
if (topic.equals("stat/Haussteuerung/Temperatur/Temp_Wohnzimmer")) {
FragmentHeizkoerper.istTempHKGrossraum = message.toString();
}
@@ -256,7 +256,7 @@ public class MqttClient {
FragmentHeizkoerper.sollTempHKDoris = message.toString();
}
if (topic.equals("fhem/temp/Temp_Doris")) {
if (topic.equals("stat/Haussteuerung/Temperatur/Temp_Doris")) {
FragmentHeizkoerper.istTempHKDoris = message.toString();
}
@@ -269,7 +269,7 @@ public class MqttClient {
FragmentHeizkoerper.sollTempHKDorisBad = message.toString();
}
if (topic.equals("fhem/temp/Temp_DorisBad")) {
if (topic.equals("stat/Haussteuerung/Temperatur/Temp_Doris_Bad")) {
FragmentHeizkoerper.istTempHKDorisBad = message.toString();
}
@@ -282,7 +282,7 @@ public class MqttClient {
FragmentHeizkoerper.sollTempHKArbeitszimmer = message.toString();
}
if (topic.equals("fhem/temp/Temp_Arbeitszimmer")) {
if (topic.equals("stat/Haussteuerung/Temperatur/Temp_Arbeitszimmer")) {
FragmentHeizkoerper.istTempHKArbeitszimmer = message.toString();
}
@@ -321,21 +321,20 @@ public class MqttClient {
FragmentHeizkoerper.sollTempHKBad = message.toString();
}
if (topic.equals("fhem/temp/Temp_Bad")) {
if (topic.equals("stat/Haussteuerung/Temperatur/Temp_Bad")) {
FragmentHeizkoerper.istTempHKBad = message.toString();
}
// Florian
if (topic.equals("fhem/Heizung/MAX_Florian/Mode")) {
FragmentHeizkoerper.modeHKFlorian = message.toString();
}
if (topic.equals("fhem/Heizung/MAX_Florian/Solltemperatur")) {
FragmentHeizkoerper.sollTempHKFlorian = message.toString();
}
if (topic.equals("fhem/temp/Temp_Flo")) {
if (topic.equals("stat/Haussteuerung/Temperatur/Temp_Florian")) {
FragmentHeizkoerper.istTempHKFlorian = message.toString();
}
@@ -349,7 +348,7 @@ public class MqttClient {
Log.d("SollTempStefan", message.toString());
}
if (topic.equals("fhem/temp/Temp_Stefan")) {
if (topic.equals("stat/Haussteuerung/Temperatur/Temp_Stefan")) {
FragmentHeizkoerper.istTempHKStefan = message.toString();
Log.d("IstTempStefan", message.toString());
}
@@ -363,7 +362,7 @@ public class MqttClient {
FragmentHeizkoerper.sollTempHKDachboden = message.toString();
}
if (topic.equals("fhem/temp/Temp_Dachboden")) {
if (topic.equals("stat/Haussteuerung/Temperatur/Temp_Dachboden")) {
FragmentHeizkoerper.istTempHKDachboden = message.toString();
}
}

View File

@@ -43,7 +43,7 @@ public class activityGlocke extends AppCompatActivity {
Intent i = getIntent();
Bitmap bitmap;
if ((i.getExtras() != null) && (i.hasExtra("TimeFB"))) {
bitmap = loadBitmapFromMediaStore(getApplicationContext(), i.getStringExtra("Time") + ".jpg");
bitmap = loadBitmapFromMediaStore(getApplicationContext(), i.getStringExtra("TimeFB") + ".jpg");
} else {
bitmap = loadBitmapFromMediaStore(getApplicationContext(), "cam.jpg");
}

View File

@@ -871,42 +871,44 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tv_HK_Dachboden" />
<androidx.appcompat.widget.SwitchCompat
android:id="@+id/switch_HK_Dachboden"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_marginTop="35dp"
android:layout_marginEnd="10dp"
android:gravity="center|end"
android:paddingTop="5dp"
android:paddingStart="0dp"
android:paddingEnd="12dp"
android:text="@string/man"
android:theme="@style/Switch.TrackTint"
android:textColor="@color/black"
android:textSize="16sp"
app:layout_constraintEnd_toStartOf="@+id/btn_HK_Dachboden"
app:layout_constraintStart_toEndOf="@id/tv_temp_Dachboden"
app:layout_constraintTop_toTopOf="parent"
app:showText="false" />
<!-- <androidx.appcompat.widget.SwitchCompat-->
<!-- android:id="@+id/switch_HK_Dachboden"-->
<!-- android:layout_width="0dp"-->
<!-- android:layout_height="50dp"-->
<!-- android:layout_marginTop="35dp"-->
<!-- android:layout_marginEnd="10dp"-->
<!-- android:gravity="center|end"-->
<!-- android:paddingTop="5dp"-->
<!-- android:paddingStart="0dp"-->
<!-- android:paddingEnd="12dp"-->
<!-- android:enabled="false"-->
<!-- android:text="@string/man"-->
<!-- android:theme="@style/Switch.TrackTint"-->
<!-- android:textColor="@color/black"-->
<!-- android:textSize="16sp"-->
<!-- app:layout_constraintEnd_toStartOf="@+id/btn_HK_Dachboden"-->
<!-- app:layout_constraintStart_toEndOf="@id/tv_temp_Dachboden"-->
<!-- app:layout_constraintTop_toTopOf="parent"-->
<!-- app:showText="false" />-->
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_HK_Dachboden"
android:layout_width="0dp"
android:layout_height="78dp"
android:layout_marginStart="0dp"
android:layout_marginTop="4dp"
android:layout_marginEnd="5dp"
android:background="@drawable/button_text_color"
android:tag="Lamp1"
android:text="@string/temp_tv"
android:textAllCaps="false"
android:textColor="#FFFFFF"
android:textSize="24sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/switch_HK_Dachboden"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="TextContrastCheck" />
<!-- <androidx.appcompat.widget.AppCompatButton-->
<!-- android:id="@+id/btn_HK_Dachboden"-->
<!-- android:layout_width="0dp"-->
<!-- android:layout_height="78dp"-->
<!-- android:layout_marginStart="0dp"-->
<!-- android:layout_marginTop="4dp"-->
<!-- android:layout_marginEnd="5dp"-->
<!-- android:background="@drawable/button_text_color"-->
<!-- android:tag="Lamp1"-->
<!-- android:text="@string/temp_tv"-->
<!-- android:enabled="false"-->
<!-- android:textAllCaps="false"-->
<!-- android:textColor="#FFFFFF"-->
<!-- android:textSize="24sp"-->
<!-- app:layout_constraintEnd_toEndOf="parent"-->
<!-- app:layout_constraintStart_toEndOf="@+id/switch_HK_Dachboden"-->
<!-- app:layout_constraintTop_toTopOf="parent"-->
<!-- tools:ignore="TextContrastCheck" />-->
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -101,7 +101,7 @@
<string name="boiler_nunten">Boiler\nUnten</string>
<string name="_38">38°</string>
<string name="_44">44°</string>
<string name="version">Version 25.1006.1</string>
<string name="version">Version 25.1011.1</string>
<string name="frueh">Früh</string>
<string name="plus2h">+2h</string>
<string name="nacht">Nacht</string>

View File

@@ -1,5 +1,5 @@
[versions]
agp = "8.3.2"
agp = "8.13.0"
junit = "4.13.2"
junitVersion = "1.3.0"
espressoCore = "3.7.0"

View File

@@ -1,6 +1,6 @@
#Fri Apr 19 12:54:48 CEST 2024
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists