diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-15 03:34:42 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-15 03:34:42 +0000 |
commit | da4c7e7ed675c3bf405668739c3012d140856109 (patch) | |
tree | cdd868dba063fecba609a1d819de271f0d51b23e /mobile/android/android-components/samples/dataprotect | |
parent | Adding upstream version 125.0.3. (diff) | |
download | firefox-da4c7e7ed675c3bf405668739c3012d140856109.tar.xz firefox-da4c7e7ed675c3bf405668739c3012d140856109.zip |
Adding upstream version 126.0.upstream/126.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'mobile/android/android-components/samples/dataprotect')
27 files changed, 502 insertions, 0 deletions
diff --git a/mobile/android/android-components/samples/dataprotect/build.gradle b/mobile/android/android-components/samples/dataprotect/build.gradle new file mode 100644 index 0000000000..f9b70a7368 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/build.gradle @@ -0,0 +1,35 @@ +apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' + +android { + defaultConfig { + applicationId "org.mozilla.samples.dataprotect" + + minSdkVersion config.minSdkVersion + compileSdk config.compileSdkVersion + targetSdkVersion config.targetSdkVersion + versionCode 1 + versionName "1.0" + + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } + + namespace 'org.mozilla.samples.dataprotect' +} + +dependencies { + implementation project(':support-ktx') + implementation project(':lib-dataprotect') + + implementation ComponentsDependencies.kotlin_coroutines + + implementation ComponentsDependencies.androidx_appcompat + implementation ComponentsDependencies.androidx_recyclerview +} diff --git a/mobile/android/android-components/samples/dataprotect/lint.xml b/mobile/android/android-components/samples/dataprotect/lint.xml new file mode 100644 index 0000000000..33cf423701 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/lint.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> +<lint> + <issue id="IconMissingDensityFolder" severity="ignore"> + <!-- Suppress lint warnings on mdpi --> + <ignore path="src/debug/res/drawable-mdpi"/> + </issue> + + <issue id="GoogleAppIndexingWarning" severity="ignore" /> +</lint>
\ No newline at end of file diff --git a/mobile/android/android-components/samples/dataprotect/proguard-rules.pro b/mobile/android/android-components/samples/dataprotect/proguard-rules.pro new file mode 100644 index 0000000000..f1b424510d --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile diff --git a/mobile/android/android-components/samples/dataprotect/src/main/AndroidManifest.xml b/mobile/android/android-components/samples/dataprotect/src/main/AndroidManifest.xml new file mode 100644 index 0000000000..72969290ec --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/AndroidManifest.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools"> + + <application + android:allowBackup="false" + android:icon="@mipmap/ic_launcher" + android:label="@string/app_name" + android:roundIcon="@mipmap/ic_launcher_round" + android:supportsRtl="true" + android:theme="@style/AppTheme" + android:dataExtractionRules="@xml/data_extraction_rules" + tools:ignore="DataExtractionRules" + tools:targetApi="s"> + <activity android:name="org.mozilla.samples.dataprotect.MainActivity" + android:exported="true"> + <intent-filter> + <action android:name="android.intent.action.MAIN" /> + + <category android:name="android.intent.category.LAUNCHER" /> + </intent-filter> + </activity> + </application> + +</manifest>
\ No newline at end of file diff --git a/mobile/android/android-components/samples/dataprotect/src/main/java/org/mozilla/samples/dataprotect/Constants.kt b/mobile/android/android-components/samples/dataprotect/src/main/java/org/mozilla/samples/dataprotect/Constants.kt new file mode 100644 index 0000000000..ab648d4fff --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/java/org/mozilla/samples/dataprotect/Constants.kt @@ -0,0 +1,12 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +package org.mozilla.samples.dataprotect + +import android.util.Base64 + +object Constants { + const val B64_FLAGS = Base64.URL_SAFE or Base64.NO_PADDING or Base64.NO_PADDING + const val KEYSTORE_LABEL = "samples-dataprotect" +} diff --git a/mobile/android/android-components/samples/dataprotect/src/main/java/org/mozilla/samples/dataprotect/MainActivity.kt b/mobile/android/android-components/samples/dataprotect/src/main/java/org/mozilla/samples/dataprotect/MainActivity.kt new file mode 100644 index 0000000000..12e30e638d --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/java/org/mozilla/samples/dataprotect/MainActivity.kt @@ -0,0 +1,44 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +package org.mozilla.samples.dataprotect + +import android.os.Bundle +import androidx.appcompat.app.AppCompatActivity +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView +import mozilla.components.lib.dataprotect.SecureAbove22Preferences + +class MainActivity : AppCompatActivity() { + @Suppress("MagicNumber") + private val itemKeys: List<String> = List(5) { "protected item ${it + 1}" } + + private lateinit var listView: RecyclerView + private lateinit var listAdapter: ProtectedDataAdapter + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_main) + + val prefs = SecureAbove22Preferences(this, "secret-data-storage") + + prepareProtectedData(prefs) + + // setup recycler + listAdapter = ProtectedDataAdapter(prefs, itemKeys) + listView = findViewById(R.id.protecteddata_list) + listView.apply { + setHasFixedSize(true) + layoutManager = LinearLayoutManager(this@MainActivity) + adapter = listAdapter + } + } + + private fun prepareProtectedData(prefs: SecureAbove22Preferences) { + for (datakey in itemKeys) { + val plain = "value for $datakey" + prefs.putString(datakey, plain) + } + } +} diff --git a/mobile/android/android-components/samples/dataprotect/src/main/java/org/mozilla/samples/dataprotect/ProtectedDataAdapter.kt b/mobile/android/android-components/samples/dataprotect/src/main/java/org/mozilla/samples/dataprotect/ProtectedDataAdapter.kt new file mode 100644 index 0000000000..366f4a9059 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/java/org/mozilla/samples/dataprotect/ProtectedDataAdapter.kt @@ -0,0 +1,43 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +package org.mozilla.samples.dataprotect + +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.TextView +import androidx.recyclerview.widget.RecyclerView +import mozilla.components.lib.dataprotect.SecureAbove22Preferences + +class ProtectedDataAdapter( + private val prefs: SecureAbove22Preferences, + private val itemKeys: List<String>, +) : RecyclerView.Adapter<ProtectedDataAdapter.Holder>() { + override fun getItemCount(): Int = itemKeys.size + + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): Holder { + val view = LayoutInflater.from(parent.context) + .inflate(R.layout.protecteddata_item, parent, false) + + return Holder(view) + } + + override fun onBindViewHolder(holder: Holder, position: Int) { + val key = itemKeys[position] + var value = prefs.getString(key) + holder.keyView.text = key + holder.valView.text = value + } + + class Holder(val view: View) : RecyclerView.ViewHolder(view) { + var keyView: TextView + var valView: TextView + + init { + keyView = view.findViewById(R.id.protecteddata_item_key_view) + valView = view.findViewById(R.id.protecteddata_item_val_view) + } + } +} diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/drawable-v24/ic_launcher_foreground.xml b/mobile/android/android-components/samples/dataprotect/src/main/res/drawable-v24/ic_launcher_foreground.xml new file mode 100644 index 0000000000..772d73c1a8 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/drawable-v24/ic_launcher_foreground.xml @@ -0,0 +1,38 @@ +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> + +<vector xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:aapt="http://schemas.android.com/aapt" + android:width="108dp" + android:height="108dp" + android:viewportHeight="108" + android:viewportWidth="108"> + <path + android:fillType="evenOdd" + android:pathData="M32,64C32,64 38.39,52.99 44.13,50.95C51.37,48.37 70.14,49.57 70.14,49.57L108.26,87.69L108,109.01L75.97,107.97L32,64Z" + android:strokeColor="#00000000" + android:strokeWidth="1"> + <aapt:attr name="android:fillColor"> + <gradient + android:endX="78.5885" + android:endY="90.9159" + android:startX="48.7653" + android:startY="61.0927" + android:type="linear"> + <item + android:color="#44000000" + android:offset="0.0" /> + <item + android:color="#00000000" + android:offset="1.0" /> + </gradient> + </aapt:attr> + </path> + <path + android:fillColor="#FFFFFF" + android:fillType="nonZero" + android:pathData="M66.94,46.02L66.94,46.02C72.44,50.07 76,56.61 76,64L32,64C32,56.61 35.56,50.11 40.98,46.06L36.18,41.19C35.45,40.45 35.45,39.3 36.18,38.56C36.91,37.81 38.05,37.81 38.78,38.56L44.25,44.05C47.18,42.57 50.48,41.71 54,41.71C57.48,41.71 60.78,42.57 63.68,44.05L69.11,38.56C69.84,37.81 70.98,37.81 71.71,38.56C72.44,39.3 72.44,40.45 71.71,41.19L66.94,46.02ZM62.94,56.92C64.08,56.92 65,56.01 65,54.88C65,53.76 64.08,52.85 62.94,52.85C61.8,52.85 60.88,53.76 60.88,54.88C60.88,56.01 61.8,56.92 62.94,56.92ZM45.06,56.92C46.2,56.92 47.13,56.01 47.13,54.88C47.13,53.76 46.2,52.85 45.06,52.85C43.92,52.85 43,53.76 43,54.88C43,56.01 43.92,56.92 45.06,56.92Z" + android:strokeColor="#00000000" + android:strokeWidth="1" /> +</vector> diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/drawable/ic_launcher_background.xml b/mobile/android/android-components/samples/dataprotect/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 0000000000..84af1fd596 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/drawable/ic_launcher_background.xml @@ -0,0 +1,174 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> + +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:width="108dp" + android:height="108dp" + android:viewportHeight="108" + android:viewportWidth="108"> + <path + android:fillColor="#26A69A" + android:pathData="M0,0h108v108h-108z" /> + <path + android:fillColor="#00000000" + android:pathData="M9,0L9,108" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M19,0L19,108" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M29,0L29,108" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M39,0L39,108" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M49,0L49,108" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M59,0L59,108" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M69,0L69,108" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M79,0L79,108" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M89,0L89,108" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M99,0L99,108" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M0,9L108,9" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M0,19L108,19" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M0,29L108,29" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M0,39L108,39" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M0,49L108,49" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M0,59L108,59" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M0,69L108,69" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M0,79L108,79" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M0,89L108,89" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M0,99L108,99" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M19,29L89,29" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M19,39L89,39" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M19,49L89,49" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M19,59L89,59" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M19,69L89,69" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M19,79L89,79" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M29,19L29,89" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M39,19L39,89" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M49,19L49,89" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M59,19L59,89" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M69,19L69,89" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> + <path + android:fillColor="#00000000" + android:pathData="M79,19L79,89" + android:strokeColor="#33FFFFFF" + android:strokeWidth="0.8" /> +</vector> diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/layout/activity_main.xml b/mobile/android/android-components/samples/dataprotect/src/main/res/layout/activity_main.xml new file mode 100644 index 0000000000..96d6ab81da --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/layout/activity_main.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical" + tools:context="org.mozilla.samples.dataprotect.MainActivity"> + + <androidx.recyclerview.widget.RecyclerView + android:id="@+id/protecteddata_list" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:scrollbars="vertical" /> + +</LinearLayout>
\ No newline at end of file diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/layout/protecteddata_item.xml b/mobile/android/android-components/samples/dataprotect/src/main/res/layout/protecteddata_item.xml new file mode 100644 index 0000000000..4ad43964ab --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/layout/protecteddata_item.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:orientation="horizontal" + android:layout_width="match_parent" + android:layout_height="50sp"> + + <TextView + android:id="@+id/protecteddata_item_key_view" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight=".25" /> + + <TextView + android:id="@+id/protecteddata_item_val_view" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight=".75" /> +</LinearLayout>
\ No newline at end of file diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000000..f39d507313 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> + +<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android"> + <background android:drawable="@drawable/ic_launcher_background" /> + <foreground android:drawable="@drawable/ic_launcher_foreground" /> +</adaptive-icon>
\ No newline at end of file diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml new file mode 100644 index 0000000000..f39d507313 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> + +<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android"> + <background android:drawable="@drawable/ic_launcher_background" /> + <foreground android:drawable="@drawable/ic_launcher_foreground" /> +</adaptive-icon>
\ No newline at end of file diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-hdpi/ic_launcher.png b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-hdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000000..a2f5908281 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-hdpi/ic_launcher.png diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-hdpi/ic_launcher_round.png b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-hdpi/ic_launcher_round.png Binary files differnew file mode 100644 index 0000000000..1b52399808 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-hdpi/ic_launcher_round.png diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-mdpi/ic_launcher.png b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-mdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000000..ff10afd6e1 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-mdpi/ic_launcher.png diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-mdpi/ic_launcher_round.png b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-mdpi/ic_launcher_round.png Binary files differnew file mode 100644 index 0000000000..115a4c768a --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-mdpi/ic_launcher_round.png diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xhdpi/ic_launcher.png b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xhdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000000..dcd3cd8083 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xhdpi/ic_launcher.png diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xhdpi/ic_launcher_round.png Binary files differnew file mode 100644 index 0000000000..459ca609d3 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xhdpi/ic_launcher_round.png diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xxhdpi/ic_launcher.png b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xxhdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000000..8ca12fe024 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xxhdpi/ic_launcher.png diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xxhdpi/ic_launcher_round.png Binary files differnew file mode 100644 index 0000000000..8e19b410a1 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xxhdpi/ic_launcher_round.png diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xxxhdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000000..b824ebdd48 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xxxhdpi/ic_launcher.png diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png Binary files differnew file mode 100644 index 0000000000..4c19a13c23 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/values/colors.xml b/mobile/android/android-components/samples/dataprotect/src/main/res/values/colors.xml new file mode 100644 index 0000000000..3a96673022 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/values/colors.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> +<resources> + <color name="colorPrimary">#3F51B5</color> + <color name="colorPrimaryDark">#303F9F</color> + <color name="colorAccent">#FF4081</color> +</resources> diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/values/strings.xml b/mobile/android/android-components/samples/dataprotect/src/main/res/values/strings.xml new file mode 100644 index 0000000000..2883c42227 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/values/strings.xml @@ -0,0 +1,6 @@ +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> +<resources> + <string name="app_name">DataProtect Demo App</string> +</resources> diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/values/styles.xml b/mobile/android/android-components/samples/dataprotect/src/main/res/values/styles.xml new file mode 100644 index 0000000000..1f33369bc5 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/values/styles.xml @@ -0,0 +1,14 @@ +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> +<resources> + + <!-- Base application theme. --> + <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> + <!-- Customize your theme here. --> + <item name="colorPrimary">@color/colorPrimary</item> + <item name="colorPrimaryDark">@color/colorPrimaryDark</item> + <item name="colorAccent">@color/colorAccent</item> + </style> + +</resources> diff --git a/mobile/android/android-components/samples/dataprotect/src/main/res/xml/data_extraction_rules.xml b/mobile/android/android-components/samples/dataprotect/src/main/res/xml/data_extraction_rules.xml new file mode 100644 index 0000000000..55da967560 --- /dev/null +++ b/mobile/android/android-components/samples/dataprotect/src/main/res/xml/data_extraction_rules.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> +<data-extraction-rules> + <cloud-backup> + <include domain="sharedpref" path="."/> + </cloud-backup> +</data-extraction-rules>
\ No newline at end of file |