Fixed issue with location permissions for Android versions <10 (fixes #75), and added more Polish translations by Jacek.
This commit is contained in:
@@ -34,6 +34,7 @@ import android.content.pm.PackageInfo;
|
|||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
|
import android.os.Build;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.PowerManager;
|
import android.os.PowerManager;
|
||||||
@@ -106,6 +107,7 @@ public class StartupActivity extends AppCompatActivity {
|
|||||||
Manifest.permission.READ_PHONE_STATE,
|
Manifest.permission.READ_PHONE_STATE,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Additional permission required by Android 10 (API 29) and higher.
|
||||||
public final String[] LOCATION_PERMISSIONS_2 = {
|
public final String[] LOCATION_PERMISSIONS_2 = {
|
||||||
Manifest.permission.ACCESS_BACKGROUND_LOCATION,
|
Manifest.permission.ACCESS_BACKGROUND_LOCATION,
|
||||||
};
|
};
|
||||||
@@ -310,7 +312,7 @@ public class StartupActivity extends AppCompatActivity {
|
|||||||
requestLocationPermissions1();
|
requestLocationPermissions1();
|
||||||
allOk = false;
|
allOk = false;
|
||||||
} else if (smsAlarmsActive && !areLocationPermissions2OK()) {
|
} else if (smsAlarmsActive && !areLocationPermissions2OK()) {
|
||||||
Log.i(TAG,"SMS permissions2 NOT OK");
|
Log.i(TAG,"Location permissions2 NOT OK");
|
||||||
tv.setText(getString(R.string.SmsPermissionWarning));
|
tv.setText(getString(R.string.SmsPermissionWarning));
|
||||||
tv.setBackgroundColor(alarmColour);
|
tv.setBackgroundColor(alarmColour);
|
||||||
tv.setTextColor(alarmTextColour);
|
tv.setTextColor(alarmTextColour);
|
||||||
@@ -647,12 +649,17 @@ public class StartupActivity extends AppCompatActivity {
|
|||||||
|
|
||||||
public boolean areLocationPermissions2OK() {
|
public boolean areLocationPermissions2OK() {
|
||||||
boolean allOk = true;
|
boolean allOk = true;
|
||||||
Log.v(TAG, "areSMSPermissions2OK()");
|
Log.v(TAG, "areSMSPermissions2OK() - SDK="+android.os.Build.VERSION.SDK_INT);
|
||||||
for (int i = 0; i < LOCATION_PERMISSIONS_2.length; i++) {
|
if (android.os.Build.VERSION.SDK_INT < 29) {
|
||||||
if (ContextCompat.checkSelfPermission(this, LOCATION_PERMISSIONS_2[i])
|
Log.d(TAG, "areLocationPermission2OK() - SDK <29 (Android 10) so permission not required");
|
||||||
!= PackageManager.PERMISSION_GRANTED) {
|
allOk = true;
|
||||||
Log.i(TAG, LOCATION_PERMISSIONS_2[i] + " Permission Not Granted");
|
} else {
|
||||||
allOk = false;
|
for (int i = 0; i < LOCATION_PERMISSIONS_2.length; i++) {
|
||||||
|
if (ContextCompat.checkSelfPermission(this, LOCATION_PERMISSIONS_2[i])
|
||||||
|
!= PackageManager.PERMISSION_GRANTED) {
|
||||||
|
Log.i(TAG, LOCATION_PERMISSIONS_2[i] + " Permission Not Granted");
|
||||||
|
allOk = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return allOk;
|
return allOk;
|
||||||
|
|||||||
@@ -43,7 +43,12 @@
|
|||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="EventId: " />
|
android:text="@string/eventid" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text=": " />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/eventIdTv"
|
android:id="@+id/eventIdTv"
|
||||||
@@ -60,7 +65,12 @@
|
|||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="Event Date: "
|
android:text="@string/event_date"
|
||||||
|
android:textSize="20sp" />
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text=": "
|
||||||
android:textSize="20sp" />
|
android:textSize="20sp" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
@@ -79,7 +89,12 @@
|
|||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="Alarm State: "
|
android:text="@string/alarm_state"
|
||||||
|
android:textSize="20sp" />
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text=": "
|
||||||
android:textSize="20sp" />
|
android:textSize="20sp" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
@@ -100,6 +115,11 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@string/event_type"
|
android:text="@string/event_type"
|
||||||
android:textSize="20sp" />
|
android:textSize="20sp" />
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text=": "
|
||||||
|
android:textSize="20sp" />
|
||||||
|
|
||||||
<RadioGroup
|
<RadioGroup
|
||||||
android:id="@+id/eventTypeRg"
|
android:id="@+id/eventTypeRg"
|
||||||
@@ -118,6 +138,12 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@string/event_sub_type"
|
android:text="@string/event_sub_type"
|
||||||
android:textSize="20sp" />
|
android:textSize="20sp" />
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text=": "
|
||||||
|
android:textSize="20sp" />
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<RadioGroup
|
<RadioGroup
|
||||||
@@ -134,7 +160,7 @@
|
|||||||
android:layout_marginTop="16dp"
|
android:layout_marginTop="16dp"
|
||||||
android:layout_marginRight="4dp"
|
android:layout_marginRight="4dp"
|
||||||
android:layout_marginBottom="4dp"
|
android:layout_marginBottom="4dp"
|
||||||
android:hint="notes about event" />
|
android:hint="@string/notes_about_event" />
|
||||||
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="date"
|
android:text="@string/date"
|
||||||
android:id="@+id/event_date" />
|
android:id="@+id/event_date" />
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
|||||||
@@ -295,4 +295,14 @@
|
|||||||
<string name="LogNDATitle">Zapisuj Normalne Dzienne Aktywności (NDA)</string>
|
<string name="LogNDATitle">Zapisuj Normalne Dzienne Aktywności (NDA)</string>
|
||||||
<string name="LogNDASummary">Cały czas rejestruj dane w systemie udostępniania danych, aby dostarczać w tle dane dotyczące \'NDA\', w celu zmniejszenia liczby fałszywych alarmów.</string>
|
<string name="LogNDASummary">Cały czas rejestruj dane w systemie udostępniania danych, aby dostarczać w tle dane dotyczące \'NDA\', w celu zmniejszenia liczby fałszywych alarmów.</string>
|
||||||
<string name="cancelBtnTxt">Anuluj</string>
|
<string name="cancelBtnTxt">Anuluj</string>
|
||||||
|
<string name="local_database">Menadżer dziennika danych</string>
|
||||||
|
<string name="save">ZAPISZ</string>
|
||||||
|
<string name="date">Data</string>
|
||||||
|
<string name="eventid">IdZdarzenia</string>
|
||||||
|
<string name="event_date">Data Zdarzenia</string>
|
||||||
|
<string name="alarm_state">Status Alarmu</string>
|
||||||
|
<string name="event_type">Typ zdarzenia</string>
|
||||||
|
<string name="event_sub_type">Podtyp Zdarzenia</string>
|
||||||
|
<string name="notes_about_event">" informacje o zdarzeniu"</string>
|
||||||
|
<string name="not_logged_in">Nieuwierzytelniony</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -339,8 +339,8 @@
|
|||||||
<string name="remoteLogPeriodTitle">Remote Log Period (seconds)</string>
|
<string name="remoteLogPeriodTitle">Remote Log Period (seconds)</string>
|
||||||
<string name="ManualAlarmBtnTxt">Raise Alarm</string>
|
<string name="ManualAlarmBtnTxt">Raise Alarm</string>
|
||||||
<string name="save">Save</string>
|
<string name="save">Save</string>
|
||||||
<string name="event_type">Event Type:</string>
|
<string name="event_type">Event Type</string>
|
||||||
<string name="event_sub_type">"Event Sub-Type: "</string>
|
<string name="event_sub_type">Event Sub-Type</string>
|
||||||
<string name="selectFromOptionselow">"-- select option --"</string>
|
<string name="selectFromOptionselow">"-- select option --"</string>
|
||||||
<string name="waitingForData">...waiting for data...</string>
|
<string name="waitingForData">...waiting for data...</string>
|
||||||
<string name="refreshBtn">Refresh</string>
|
<string name="refreshBtn">Refresh</string>
|
||||||
@@ -461,4 +461,8 @@
|
|||||||
<string name="stop_nda_menu_title">Stop NDA</string>
|
<string name="stop_nda_menu_title">Stop NDA</string>
|
||||||
<string name="start_nda_menu_title">Start NDA</string>
|
<string name="start_nda_menu_title">Start NDA</string>
|
||||||
<string name="seizure_probability">Seizure Probability (%)</string>
|
<string name="seizure_probability">Seizure Probability (%)</string>
|
||||||
|
<string name="eventid">EventId</string>
|
||||||
|
<string name="event_date">Event Date</string>
|
||||||
|
<string name="alarm_state">Alarm State</string>
|
||||||
|
<string name="notes_about_event">notes about event</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
Reference in New Issue
Block a user