mirror of
https://codeberg.org/timelimit/opentimelimit-android.git
synced 2025-10-05 19:42:25 +02:00
Add battery optimizations info
This commit is contained in:
parent
d41fdc0962
commit
5105282a90
6 changed files with 168 additions and 3 deletions
|
@ -30,10 +30,8 @@ import android.widget.ArrayAdapter
|
|||
import android.widget.Toast
|
||||
import androidx.fragment.app.Fragment
|
||||
import androidx.lifecycle.LiveData
|
||||
import androidx.lifecycle.MutableLiveData
|
||||
import androidx.lifecycle.Observer
|
||||
import androidx.navigation.Navigation
|
||||
import com.google.android.material.snackbar.Snackbar
|
||||
import io.timelimit.android.R
|
||||
import io.timelimit.android.data.model.Device
|
||||
import io.timelimit.android.databinding.FragmentManageDeviceBinding
|
||||
|
@ -46,7 +44,6 @@ import io.timelimit.android.livedata.switchMap
|
|||
import io.timelimit.android.logic.AppLogic
|
||||
import io.timelimit.android.logic.DefaultAppLogic
|
||||
import io.timelimit.android.sync.actions.SetDeviceUserAction
|
||||
import io.timelimit.android.sync.actions.UpdateDeviceNameAction
|
||||
import io.timelimit.android.ui.main.ActivityViewModel
|
||||
import io.timelimit.android.ui.main.ActivityViewModelHolder
|
||||
import io.timelimit.android.ui.main.AuthenticationFab
|
||||
|
@ -267,6 +264,12 @@ class ManageDeviceFragment : Fragment(), FragmentWithCustomTitle {
|
|||
user = userEntry
|
||||
)
|
||||
|
||||
ManageDeviceTroubleshooting.bind(
|
||||
view = binding.troubleshootingView,
|
||||
userEntry = userEntry,
|
||||
lifecycleOwner = this
|
||||
)
|
||||
|
||||
return binding.root
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,41 @@
|
|||
/*
|
||||
* Open TimeLimit Copyright <C> 2019 Jonas Lochmann
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation version 3 of the License.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package io.timelimit.android.ui.manage.device.manage
|
||||
|
||||
import android.text.method.LinkMovementMethod
|
||||
import androidx.lifecycle.LifecycleOwner
|
||||
import androidx.lifecycle.LiveData
|
||||
import androidx.lifecycle.Observer
|
||||
import io.timelimit.android.data.model.User
|
||||
import io.timelimit.android.data.model.UserType
|
||||
import io.timelimit.android.databinding.ManageDeviceTroubleshootingViewBinding
|
||||
|
||||
object ManageDeviceTroubleshooting {
|
||||
fun bind(
|
||||
view: ManageDeviceTroubleshootingViewBinding,
|
||||
userEntry: LiveData<User?>,
|
||||
lifecycleOwner: LifecycleOwner
|
||||
) {
|
||||
view.bateryOptimizationsText.movementMethod = LinkMovementMethod.getInstance()
|
||||
|
||||
userEntry.observe(lifecycleOwner, Observer {
|
||||
val isChild = it?.type == UserType.Child
|
||||
|
||||
view.showBatteryOptimizations = isChild
|
||||
view.showNoChildUser = !isChild
|
||||
})
|
||||
}
|
||||
}
|
|
@ -379,6 +379,9 @@
|
|||
</LinearLayout>
|
||||
</androidx.cardview.widget.CardView>
|
||||
|
||||
<include android:id="@+id/troubleshooting_view"
|
||||
layout="@layout/manage_device_troubleshooting_view" />
|
||||
|
||||
</LinearLayout>
|
||||
</ScrollView>
|
||||
|
||||
|
|
|
@ -0,0 +1,65 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
Open TimeLimit Copyright <C> 2019 Jonas Lochmann
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation version 3 of the License.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<layout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<data>
|
||||
<variable
|
||||
name="showNoChildUser"
|
||||
type="boolean" />
|
||||
|
||||
<variable
|
||||
name="showBatteryOptimizations"
|
||||
type="boolean" />
|
||||
|
||||
<import type="android.view.View" />
|
||||
</data>
|
||||
|
||||
<androidx.cardview.widget.CardView
|
||||
app:cardUseCompatPadding="true"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
<LinearLayout
|
||||
android:padding="8dp"
|
||||
android:orientation="vertical"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<TextView
|
||||
android:textAppearance="?android:textAppearanceLarge"
|
||||
android:text="@string/manage_device_troubleshooting_title"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<TextView
|
||||
android:visibility="@{showNoChildUser ? View.VISIBLE : View.GONE}"
|
||||
android:textAppearance="?android:textAppearanceMedium"
|
||||
android:text="@string/manage_device_troubleshooting_text_no_child"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<TextView
|
||||
android:visibility="@{showBatteryOptimizations ? View.VISIBLE : View.GONE}"
|
||||
android:id="@+id/batery_optimizations_text"
|
||||
android:textAppearance="?android:textAppearanceMedium"
|
||||
android:text="@string/manage_device_troubleshooting_text_battery_optimization"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
</LinearLayout>
|
||||
</androidx.cardview.widget.CardView>
|
||||
</layout>
|
|
@ -0,0 +1,27 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
Open TimeLimit Copyright <C> 2019 Jonas Lochmann
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation version 3 of the License.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<resources>
|
||||
<string name="manage_device_troubleshooting_title">Warum wird dieses Gerät nicht eingeschränkt?</string>
|
||||
<string name="manage_device_troubleshooting_text_no_child">Es wurde kein Kind-Benutzer für dieses Gerät gewählt. Nur Kind-Benutzer werden eingeschränkt.</string>
|
||||
<string name="manage_device_troubleshooting_text_battery_optimization">Wahrscheinlich hat
|
||||
der Hersteller dieses Gerätes Energiesparfunktionen
|
||||
eingebaut, die nicht abgeschaltet wurden und Probleme verursachen.
|
||||
Sie finden die Details zu den Energiesparfunktionen einiger Hersteller und deren Abschaltung
|
||||
auf der englischen Seite <a href="https://dontkillmyapp.com/">https://dontkillmyapp.com/</a>
|
||||
\nWenden Sie sich an den Support von TimeLimit, wenn das nicht Ihr Problem behebt.
|
||||
</string>
|
||||
</resources>
|
|
@ -0,0 +1,26 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
Open TimeLimit Copyright <C> 2019 Jonas Lochmann
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation version 3 of the License.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<resources>
|
||||
<string name="manage_device_troubleshooting_title">Why is this device not limited?</string>
|
||||
<string name="manage_device_troubleshooting_text_no_child">There is no child assigned to this device. Only children are limited.</string>
|
||||
<string name="manage_device_troubleshooting_text_battery_optimization">Most likely,
|
||||
this devices manufacturer added some battery optimizations
|
||||
which were not disabled and cause trouble. You can find details for
|
||||
some common manufacturers at <a href="https://dontkillmyapp.com/">https://dontkillmyapp.com/</a>
|
||||
\nIf that does not solve your issue, get in touch with the support of TimeLimit.
|
||||
</string>
|
||||
</resources>
|
Loading…
Add table
Add a link
Reference in a new issue