Page Menu
Home
GitPull.it
Search
Configure Global Search
Log In
Files
F11320451
D159.1772902217.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Size
10 KB
Referenced Files
None
Subscribers
None
D159.1772902217.diff
View Options
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools">
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:tools="http://schemas.android.com/tools">
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
@@ -9,10 +10,11 @@
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
- <uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
- <!-- this is to REMOVE the permission from MQTT service -->
- <uses-permission tools:node="remove"
- android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC"/>
+ <uses-permission
+ android:name="android.permission.POST_NOTIFICATIONS"/> <!-- this is to REMOVE the permission from MQTT service -->
+ <uses-permission
+ android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC"
+ tools:node="remove"/>
<queries>
<intent>
@@ -41,6 +43,12 @@
android:networkSecurityConfig="@xml/networks_security_config"
android:roundIcon="@mipmap/ic_launcher_round"
android:theme="@style/AppTheme.NoActionBar">
+ <activity
+ android:name=".ActivityBackup"
+ android:label="@string/backup_activity"
+ android:parentActivityName=".ActivityPrincipal"
+ android:theme="@style/AppTheme"
+ android:exported="false"/>
<activity
android:name=".ActivityIntro"
android:exported="false"/>
diff --git a/app/src/main/java/it/reyboz/bustorino/ActivityBackup.kt b/app/src/main/java/it/reyboz/bustorino/ActivityBackup.kt
new file mode 100644
--- /dev/null
+++ b/app/src/main/java/it/reyboz/bustorino/ActivityBackup.kt
@@ -0,0 +1,26 @@
+package it.reyboz.bustorino
+
+import android.os.Bundle
+import it.reyboz.bustorino.fragments.BackupImportFragment
+import it.reyboz.bustorino.middleware.GeneralActivity
+
+class ActivityBackup : GeneralActivity() {
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+ setContentView(R.layout.activity_container_fragment)
+
+ val actionBar = supportActionBar
+ if (actionBar != null) {
+ actionBar.setDisplayHomeAsUpEnabled(true)
+ actionBar.setIcon(R.drawable.ic_launcher)
+ actionBar.show()
+ }
+ if (savedInstanceState == null) {
+ supportFragmentManager.beginTransaction()
+ .setReorderingAllowed(true)
+ .add(R.id.fragment_container_view, BackupImportFragment::class.java, null)
+ .commit()
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/it/reyboz/bustorino/ActivityExperiments.java b/app/src/main/java/it/reyboz/bustorino/ActivityExperiments.java
--- a/app/src/main/java/it/reyboz/bustorino/ActivityExperiments.java
+++ b/app/src/main/java/it/reyboz/bustorino/ActivityExperiments.java
@@ -32,7 +32,7 @@
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_experiments);
+ setContentView(R.layout.activity_container_fragment);
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
@@ -54,7 +54,7 @@
//.add(R.id.fragment_container_view, LinesDetailFragment.class,
// LinesDetailFragment.Companion.makeArgs("gtt:4U"))
- .add(R.id.fragment_container_view, TestSavingFragment.class, null)
+ .add(R.id.fragment_container_view, BackupImportFragment.class, null)
.commit();
}
}
diff --git a/app/src/main/java/it/reyboz/bustorino/fragments/TestSavingFragment.kt b/app/src/main/java/it/reyboz/bustorino/fragments/BackupImportFragment.kt
rename from app/src/main/java/it/reyboz/bustorino/fragments/TestSavingFragment.kt
rename to app/src/main/java/it/reyboz/bustorino/fragments/BackupImportFragment.kt
--- a/app/src/main/java/it/reyboz/bustorino/fragments/TestSavingFragment.kt
+++ b/app/src/main/java/it/reyboz/bustorino/fragments/BackupImportFragment.kt
@@ -30,10 +30,10 @@
/**
* A simple [Fragment] subclass.
- * Use the [TestSavingFragment.newInstance] factory method to
+ * Use the [BackupImportFragment.newInstance] factory method to
* create an instance of this fragment.
*/
-class TestSavingFragment : Fragment() {
+class BackupImportFragment : Fragment() {
private val saveFileLauncher =
registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result ->
@@ -279,7 +279,7 @@
@JvmStatic
fun newInstance() =
- TestSavingFragment().apply {
+ BackupImportFragment().apply {
arguments = Bundle() /*.apply {
putString(ARG_PARAM1, param1)
putString(ARG_PARAM2, param2)
diff --git a/app/src/main/java/it/reyboz/bustorino/fragments/SettingsFragment.java b/app/src/main/java/it/reyboz/bustorino/fragments/SettingsFragment.java
--- a/app/src/main/java/it/reyboz/bustorino/fragments/SettingsFragment.java
+++ b/app/src/main/java/it/reyboz/bustorino/fragments/SettingsFragment.java
@@ -18,6 +18,7 @@
package it.reyboz.bustorino.fragments;
import android.content.Context;
+import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.os.Handler;
@@ -33,6 +34,7 @@
import androidx.work.OneTimeWorkRequest;
import androidx.work.WorkInfo;
import androidx.work.WorkManager;
+import it.reyboz.bustorino.ActivityBackup;
import it.reyboz.bustorino.R;
import it.reyboz.bustorino.data.DatabaseUpdate;
import it.reyboz.bustorino.data.GtfsMaintenanceWorker;
@@ -89,15 +91,24 @@
Preference dbUpdateNow = findPreference("pref_db_update_now");
if (dbUpdateNow!=null)
dbUpdateNow.setOnPreferenceClickListener(
- new Preference.OnPreferenceClickListener() {
- @Override
- public boolean onPreferenceClick(@NonNull Preference preference) {
- //trigger update
- if(getContext()!=null) {
- DatabaseUpdate.requestDBUpdateWithWork(getContext().getApplicationContext(), true, true);
- Toast.makeText(getContext(),R.string.requesting_db_update,Toast.LENGTH_SHORT).show();
- return true;
- }
+ preference -> {
+ //trigger update
+ if(getContext()!=null) {
+ DatabaseUpdate.requestDBUpdateWithWork(getContext().getApplicationContext(), true, true);
+ Toast.makeText(getContext(),R.string.requesting_db_update,Toast.LENGTH_SHORT).show();
+ return true;
+ }
+ return false;
+ }
+ );
+ //set click listener on backup item
+ final Preference backupPref = findPreference("pref_backup_open");
+ if (backupPref!=null) backupPref.setOnPreferenceClickListener(
+ preference -> {
+ if(getActivity()!=null){
+ startActivity( new Intent(getActivity().getApplicationContext(), ActivityBackup.class) );
+ return true;
+ } else {
return false;
}
}
diff --git a/app/src/main/res/layout/activity_experiments.xml b/app/src/main/res/layout/activity_container_fragment.xml
rename from app/src/main/res/layout/activity_experiments.xml
rename to app/src/main/res/layout/activity_container_fragment.xml
diff --git a/app/src/main/res/layout/fragment_test_saving.xml b/app/src/main/res/layout/fragment_test_saving.xml
--- a/app/src/main/res/layout/fragment_test_saving.xml
+++ b/app/src/main/res/layout/fragment_test_saving.xml
@@ -3,7 +3,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
- tools:context=".fragments.TestSavingFragment">
+ tools:context=".fragments.BackupImportFragment">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
--- a/app/src/main/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -275,6 +275,9 @@
<string name="grant_notification_permission">Abilita notifiche</string>
<string name="notification_permission_granted">Notifiche abilitate</string>
+ <!-- BACKUP -->
+ <string name="backup_restore">Backup e ripristino</string>
+ <string name="backup_activity">Importa / esporta dati</string>
<string name="saved_data">Dati salvati</string>
<string name="btn_backup_message">Salva backup</string>
<string name="btn_load_backup_message">Importa i dati dal backup</string>
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -304,7 +304,9 @@
<string name="close_tutorial_short">Close the tutorial</string>
<string name="grant_notification_permission">Enable notifications</string>
<string name="notification_permission_granted">Notifications enabled</string>
-
+ <!-- BACKUP -->
+ <string name="backup_restore">Backup and restore</string>
+ <string name="backup_activity">Import/export preferences</string>
<string name="saved_data">Data saved</string>
<string name="btn_backup_message">Backup to file</string>
<string name="btn_load_backup_message">Import data from backup</string>
diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
--- a/app/src/main/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
@@ -100,6 +100,13 @@
/>
</androidx.preference.PreferenceCategory>
+ <androidx.preference.PreferenceCategory android:title="@string/backup_restore">
+ <androidx.preference.Preference
+ android:title="@string/backup_activity"
+ android:key="pref_backup_open"
+ />
+ </androidx.preference.PreferenceCategory>
+
<androidx.preference.PreferenceCategory
android:title="@string/settings_experimental">
<androidx.preference.SwitchPreferenceCompat
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Mar 7, 17:50 (16 h, 54 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1720307
Default Alt Text
D159.1772902217.diff (10 KB)
Attached To
Mode
D159: Create new activity for the backup and restore functionality
Attached
Detach File
Event Timeline
Log In to Comment