diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..35eb1dd
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 3d8607f..d222a26 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,5 +1,6 @@
plugins {
id 'com.android.application'
+ id 'com.google.gms.google-services'
}
android {
@@ -32,7 +33,12 @@ dependencies {
implementation 'androidx.appcompat:appcompat:1.7.0'
implementation 'com.google.android.material:material:1.12.0'
- implementation 'androidx.constraintlayout:constraintlayout:2.2.0'
+ implementation 'androidx.constraintlayout:constraintlayout:2.2.1'
+ //Firebase Dependencies
+ implementation platform('com.google.firebase:firebase-bom:33.10.0')
+ implementation 'com.google.firebase:firebase-analytics'
+ implementation 'com.firebaseui:firebase-ui-auth:7.2.0'
+
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.2.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1'
diff --git a/app/google-services.json b/app/google-services.json
new file mode 100644
index 0000000..8b7b2db
--- /dev/null
+++ b/app/google-services.json
@@ -0,0 +1,47 @@
+{
+ "project_info": {
+ "project_number": "1057049253579",
+ "project_id": "doerflingerhelpers",
+ "storage_bucket": "doerflingerhelpers.firebasestorage.app"
+ },
+ "client": [
+ {
+ "client_info": {
+ "mobilesdk_app_id": "1:1057049253579:android:23793f2a944b05612ead4e",
+ "android_client_info": {
+ "package_name": "com.aldo.apps.familyhelpers"
+ }
+ },
+ "oauth_client": [
+ {
+ "client_id": "1057049253579-7pgnva498827l6e88sags7fam36gktpb.apps.googleusercontent.com",
+ "client_type": 1,
+ "android_info": {
+ "package_name": "com.aldo.apps.familyhelpers",
+ "certificate_hash": "1166e18cf665c3cae0c8ada885a5f0f48d95a9f1"
+ }
+ },
+ {
+ "client_id": "1057049253579-6de9kv08ne2ti29lpptlb10egfcn5s06.apps.googleusercontent.com",
+ "client_type": 3
+ }
+ ],
+ "api_key": [
+ {
+ "current_key": "AIzaSyB7C4QCJEBvS7mFa_DeIZdzqe2hddtl-vk"
+ }
+ ],
+ "services": {
+ "appinvite_service": {
+ "other_platform_oauth_client": [
+ {
+ "client_id": "1057049253579-6de9kv08ne2ti29lpptlb10egfcn5s06.apps.googleusercontent.com",
+ "client_type": 3
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "configuration_version": "1"
+}
\ No newline at end of file
diff --git a/app/src/main/ic_launcher-playstore.png b/app/src/main/ic_launcher-playstore.png
new file mode 100644
index 0000000..3864461
Binary files /dev/null and b/app/src/main/ic_launcher-playstore.png differ
diff --git a/app/src/main/java/com/aldo/apps/familyhelpers/HelperGridActivity.java b/app/src/main/java/com/aldo/apps/familyhelpers/HelperGridActivity.java
index 32a9c75..f1c534b 100644
--- a/app/src/main/java/com/aldo/apps/familyhelpers/HelperGridActivity.java
+++ b/app/src/main/java/com/aldo/apps/familyhelpers/HelperGridActivity.java
@@ -2,11 +2,16 @@ package com.aldo.apps.familyhelpers;
import static android.Manifest.permission.POST_NOTIFICATIONS;
+import static com.aldo.apps.familyhelpers.utils.GlobalConstants.SIGN_IN_PROVIDERS;
+
+import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.util.Log;
+import android.widget.TextView;
import android.widget.Toast;
+import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import androidx.appcompat.app.AppCompatActivity;
@@ -15,6 +20,13 @@ import androidx.core.content.ContextCompat;
import com.aldo.apps.familyhelpers.ui.HelperGroupTile;
import com.aldo.apps.familyhelpers.ui.SleepTimerPopup;
import com.aldo.apps.familyhelpers.utils.DevicePolicyManagerHelper;
+import com.firebase.ui.auth.AuthUI;
+import com.firebase.ui.auth.FirebaseAuthUIActivityResultContract;
+import com.firebase.ui.auth.FirebaseUiException;
+import com.firebase.ui.auth.IdpResponse;
+import com.firebase.ui.auth.data.model.FirebaseAuthUIAuthenticationResult;
+import com.google.firebase.auth.FirebaseAuth;
+import com.google.firebase.auth.FirebaseUser;
/**
* The Activity showing the Grid of helpers to select from.
@@ -36,13 +48,17 @@ public class HelperGridActivity extends AppCompatActivity {
*/
private DevicePolicyManagerHelper mDevicePolicyHelper;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- mDevicePolicyHelper = DevicePolicyManagerHelper.getInstance(this);
- initSleepTimer();
- } /**
+ /**
+ * The {@link TextView} showing the welcome message to the user.
+ */
+ private TextView mWelcomeMessageView;
+
+ /**
+ * The currently active {@link FirebaseUser}.
+ */
+ private FirebaseUser mCurrentUser = FirebaseAuth.getInstance().getCurrentUser();;
+
+ /**
* The {@link ActivityResultLauncher} to ask for the NotificationPermission.
*/
private final ActivityResultLauncher mRequestPermissionLauncher =
@@ -58,6 +74,37 @@ public class HelperGridActivity extends AppCompatActivity {
}
});
+ /**
+ * The {@link ActivityResultLauncher} for the sign in of a firebase user.
+ */
+ private final ActivityResultLauncher mSignInLauncher =
+ registerForActivityResult(new FirebaseAuthUIActivityResultContract(), this::onSignInResult);
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_main);
+ mWelcomeMessageView = findViewById(R.id.tv_welcome_message);
+ if (mCurrentUser == null) {
+ final Intent signInIntent = AuthUI.getInstance()
+ .createSignInIntentBuilder()
+ .setAvailableProviders(SIGN_IN_PROVIDERS)
+ .setTheme(R.style.Theme_MyApplication)
+ .build();
+ mSignInLauncher.launch(signInIntent);
+ } else {
+ mWelcomeMessageView.setText(String.format(getString(R.string.welcome_message_placeholder),
+ mCurrentUser.getDisplayName()));
+ }
+ }
+
+ @Override
+ protected void onResume() {
+ super.onResume();
+ mDevicePolicyHelper = DevicePolicyManagerHelper.getInstance(this);
+ initSleepTimer();
+ }
+
/**
* Helper method to initialize the sleepTimer tile.
*/
@@ -108,5 +155,25 @@ public class HelperGridActivity extends AppCompatActivity {
}
}
+ private void onSignInResult(final FirebaseAuthUIAuthenticationResult result) {
+ final IdpResponse idpResponse = result.getIdpResponse();
+ if (result.getResultCode() == RESULT_OK) {
+ mCurrentUser = FirebaseAuth.getInstance().getCurrentUser();
+ Log.d(TAG, "onSignInResult: Successfully logged in [" + mCurrentUser.getDisplayName() + "]");
+ mWelcomeMessageView.setText(String.format(getString(R.string.welcome_message_placeholder),
+ mCurrentUser.getDisplayName()));
+ } else {
+ Log.w(TAG, "onSignInResult: Sign-In failed");
+ mWelcomeMessageView.setText(String.format(getString(R.string.welcome_message_placeholder),
+ getString(R.string.unknown_user)));
+ if (idpResponse == null) {
+ Log.w(TAG, "onSignInResult: User canceled, cannot continue");
+ } else {
+ Log.e(TAG, "onSignInResult: Login failed with errorCode ["
+ + idpResponse.getError().getErrorCode() + "]");
+ }
+ }
+ }
+
}
\ No newline at end of file
diff --git a/app/src/main/java/com/aldo/apps/familyhelpers/utils/GlobalConstants.java b/app/src/main/java/com/aldo/apps/familyhelpers/utils/GlobalConstants.java
index cfdc756..9c6cbd0 100644
--- a/app/src/main/java/com/aldo/apps/familyhelpers/utils/GlobalConstants.java
+++ b/app/src/main/java/com/aldo/apps/familyhelpers/utils/GlobalConstants.java
@@ -1,5 +1,10 @@
package com.aldo.apps.familyhelpers.utils;
+import com.firebase.ui.auth.AuthUI;
+
+import java.util.Arrays;
+import java.util.List;
+
/**
* Utility class holding global constants to be used for the application.
*/
@@ -40,4 +45,11 @@ public final class GlobalConstants {
* Action to cancel an ongoing sleep timer.
*/
public static final String SLEEP_TIMER_CANCEL_ACTION = "SLEEP_TIMER_CANCEL";
+
+ /**
+ * List of available Firebase signIn/Login providers.
+ */
+ public static final List SIGN_IN_PROVIDERS = Arrays.asList(
+ new AuthUI.IdpConfig.GoogleBuilder().build()
+ );
}
diff --git a/app/src/main/res/drawable/ic_launcher_foreground.xml b/app/src/main/res/drawable/ic_launcher_foreground.xml
index 2b068d1..17d12f8 100644
--- a/app/src/main/res/drawable/ic_launcher_foreground.xml
+++ b/app/src/main/res/drawable/ic_launcher_foreground.xml
@@ -1,30 +1,21 @@
-
-
-
-
-
-
-
-
+ android:viewportWidth="429"
+ android:viewportHeight="377">
+
-
\ No newline at end of file
+ android:pathData="M242.64,50.5C240.33,52.81 240.59,54.75 243.99,60.69C248.29,68.19 255.65,73.25 265.5,75.48C274.72,77.57 277.49,74.65 269.14,71.65C263.2,69.51 260.05,66.29 256.52,58.71C253.76,52.8 251.49,50.62 246.89,49.49C245.13,49.06 243.76,49.39 242.64,50.5M270.2,56.2C267.88,58.52 268.95,62.03 273.43,66.82C279.86,73.7 283.33,81.12 283.8,89C284.16,95.01 283.89,96.06 280.22,103C274.76,113.32 274.32,115.92 277.11,121.5C278.85,124.99 279.1,126.3 278.19,127.21C277.28,128.12 276.38,127.93 274.31,126.38C265.3,119.65 262.86,111.15 267.39,102.22C271.78,93.56 270.9,91.87 260,88.05C249.49,84.37 244.18,80.99 237.39,73.66C233.88,69.86 231,66.41 231,65.99C231,64.05 199.98,61.42 166.5,60.52C154.95,60.21 141.23,59.75 136,59.5C92.88,57.43 80.37,57.91 75,61.85C67.25,67.53 66.45,73.65 70.66,95C73.22,107.97 73.48,108.64 77.16,112.1C81.29,115.96 81.99,119.11 79.47,122.44C77.41,125.17 77.64,127.31 80.26,129.78C83.59,132.9 88.2,134.54 100.5,136.95C114.97,139.79 123.96,144.18 131.49,152.08C135.93,156.73 137.07,158.56 136.82,160.67C136.36,164.56 134.81,164.52 129.88,160.53C121.27,153.55 115.98,151.74 101.94,150.96C86.89,150.12 80.79,148.33 74.65,142.92C67.58,136.7 66.72,131.61 71.22,122.64C72.88,119.32 72.98,118.36 71.91,115.77C69.33,109.56 59.88,106.95 54.71,111.01C50.88,114.03 48.59,120.93 49.34,127.25C50.87,140.11 60.53,151.85 75.45,158.98L83.69,162.91 86.29,175.71C99.08,238.65 114.5,310.28 115.99,313.68C118.79,320.07 125.21,326.37 132.02,329.43C138.73,332.44 146.97,333.62 163.39,333.92L174.29,334.11 173.63,328.47C173.26,325.37 172.29,321.52 171.46,319.93C169.35,315.85 163.94,310.67 158.84,307.86C155.53,306.03 154.5,304.87 154.5,302.98C154.5,300.66 154.82,300.51 159.26,300.66C170.36,301.04 186.82,316.48 190.13,329.6C191.07,333.35 191.54,333.83 194.84,334.37C201.05,335.4 205,335.12 205,333.65C205,331.2 193.34,316.59 185.31,308.98C180.96,304.87 174.8,299.7 171.61,297.5C158.46,288.41 157.51,287.55 157.19,284.27C156.95,281.82 157.44,280.76 159.41,279.47C163.26,276.95 168.95,278.36 175.77,283.52C183.18,289.13 212.16,319.54 218.29,328.15L223.03,334.8 236.26,335.4C263.12,336.61 267.73,336.67 278.57,335.89C297.13,334.55 318.03,329.03 333.07,321.5C349.83,313.11 368.3,296.54 376.94,282.14C396.22,250.04 395.7,209.22 375.5,169.28C366.78,152.04 357.92,139.93 343,124.91C328.35,110.15 323.99,106.51 310.35,97.67L300.2,91.09 299.52,86.12C297.62,72.33 283.3,55 273.8,55C272.48,55 270.86,55.54 270.2,56.2M143.75,113.74C141.62,114.23 141.6,114.92 143.48,123.63C144.3,127.41 146.8,139.27 149.05,150C151.3,160.73 156.03,183.18 159.57,199.89C163.1,216.61 165.97,231.23 165.93,232.39C165.88,233.69 163.87,236.05 160.68,238.54C154.75,243.18 148.93,252 149.74,255.12C150.04,256.25 151.37,257.67 152.71,258.28C156.23,259.88 160.61,257.16 165.5,250.32C170.45,243.39 177.53,238.57 185.89,236.44C198.87,233.13 215,238.41 215,245.97C215,250.95 212.14,251.85 200.31,250.58C191.65,249.65 187.12,250.88 183.56,255.11C177.75,262.01 178,272.4 184.23,282.8C188.16,289.36 200.19,302.53 204.1,304.55C211.75,308.51 212.54,304.96 206.16,295.23C199.47,285.03 197.71,280.62 197.69,274C197.66,264.13 203.32,257.67 211.5,258.23C213.75,258.38 215.5,259.02 215.5,259.68C215.5,260.33 213.6,262.23 211.29,263.91C205.9,267.81 203.75,272.02 203.75,278.64C203.75,289.84 216.43,302.05 223.91,298.05C226.89,296.45 226.54,292.65 222.94,287.42C216.5,278.05 215.57,272.85 219.53,268.15C222.49,264.63 226.92,263.36 230.19,265.08C233.79,266.98 234.04,268.15 231.76,272.2C230.6,274.28 229.99,276.32 230.4,276.74C231.72,278.06 251.78,278.24 262.35,277.02C291.57,273.66 313.38,258.44 321.11,236C324.47,226.27 324.87,210.34 322.06,198.5C314.05,164.76 282.75,134.12 243.5,121.62C226.83,116.31 218.06,115.34 178,114.44C161.77,114.08 147.82,113.68 147,113.56C146.18,113.44 144.71,113.52 143.75,113.74"
+ android:fillColor="#fffcfc"
+ android:fillType="evenOdd"
+ android:strokeColor="#00000000"/>
+
+
+
diff --git a/app/src/main/res/drawable/ic_launcher_icon.xml b/app/src/main/res/drawable/ic_launcher_icon.xml
new file mode 100644
index 0000000..5a24d07
--- /dev/null
+++ b/app/src/main/res/drawable/ic_launcher_icon.xml
@@ -0,0 +1,16 @@
+
+
+
+
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index e0605d4..c934435 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -3,11 +3,24 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context=".HelperGridActivity">
+
+
-
-
-
+
+
\ No newline at end of file
diff --git a/app/src/main/res/mipmap-anydpi/ic_launcher_round.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
similarity index 56%
rename from app/src/main/res/mipmap-anydpi/ic_launcher_round.xml
rename to app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
index 6f3b755..7353dbd 100644
--- a/app/src/main/res/mipmap-anydpi/ic_launcher_round.xml
+++ b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
@@ -1,6 +1,5 @@
-
-
-
+
+
\ No newline at end of file
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.webp b/app/src/main/res/mipmap-hdpi/ic_launcher.webp
index c209e78..13606df 100644
Binary files a/app/src/main/res/mipmap-hdpi/ic_launcher.webp and b/app/src/main/res/mipmap-hdpi/ic_launcher.webp differ
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp
index b2dfe3d..f9f3540 100644
Binary files a/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp and b/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp differ
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.webp b/app/src/main/res/mipmap-mdpi/ic_launcher.webp
index 4f0f1d6..956c51a 100644
Binary files a/app/src/main/res/mipmap-mdpi/ic_launcher.webp and b/app/src/main/res/mipmap-mdpi/ic_launcher.webp differ
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp
index 62b611d..099d46f 100644
Binary files a/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp and b/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp differ
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher.webp
index 948a307..1a54b24 100644
Binary files a/app/src/main/res/mipmap-xhdpi/ic_launcher.webp and b/app/src/main/res/mipmap-xhdpi/ic_launcher.webp differ
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp
index 1b9a695..76d96a0 100644
Binary files a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp and b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp differ
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp b/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp
index 28d4b77..e8793d2 100644
Binary files a/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp and b/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp differ
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp
index 9287f50..a611dae 100644
Binary files a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp and b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp differ
diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp
index aa7d642..e6a7a45 100644
Binary files a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp and b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp differ
diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp
index 9126ae3..d076115 100644
Binary files a/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp and b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp differ
diff --git a/app/src/main/res/values-night/colors.xml b/app/src/main/res/values-night/colors.xml
index 951ced7..96bd8d5 100644
--- a/app/src/main/res/values-night/colors.xml
+++ b/app/src/main/res/values-night/colors.xml
@@ -1,144 +1,142 @@
- #91D5AC
- #003921
- #055232
- #ADF2C7
- #B5CCBB
- #213528
- #374B3E
- #D0E8D6
- #A4CDDC
- #043541
- #224C59
- #BFE9F9
+ #FFB4AC
+ #561E1A
+ #73332E
+ #FFDAD6
+ #E7BDB8
+ #442927
+ #5D3F3C
+ #FFDAD6
+ #E0C38C
+ #3F2D04
+ #584419
+ #FEDFA6
#FFB4AB
#690005
#93000A
#FFDAD6
- #0F1511
- #DFE4DD
- #0F1511
- #DFE4DD
- #404942
- #C0C9C0
- #8A938B
- #404942
+ #1A1110
+ #F1DEDC
+ #1A1110
+ #F1DEDC
+ #534341
+ #D8C2BF
+ #A08C8A
+ #534341
#000000
- #DFE4DD
- #2C322D
- #276A49
- #ADF2C7
- #002111
- #91D5AC
- #055232
- #D0E8D6
- #0B1F14
- #B5CCBB
- #374B3E
- #BFE9F9
- #001F27
- #A4CDDC
- #224C59
- #0F1511
- #353B36
- #0A0F0C
- #171D19
- #1B211D
- #262B27
- #303632
- #96D9B0
- #001B0D
- #5C9E79
+ #F1DEDC
+ #392E2D
+ #904A44
+ #FFDAD6
+ #3B0907
+ #FFB4AC
+ #73332E
+ #FFDAD6
+ #2C1513
+ #E7BDB8
+ #5D3F3C
+ #FEDFA6
+ #261900
+ #E0C38C
+ #584419
+ #1A1110
+ #423735
+ #140C0B
+ #231918
+ #271D1C
+ #322826
+ #3D3231
+ #FFBAB2
+ #330404
+ #CC7B73
#000000
- #B9D1BF
- #061A0F
- #809686
+ #EBC1BC
+ #26100E
+ #AD8884
#000000
- #A8D1E0
- #001921
- #6E97A5
+ #E5C790
+ #1F1400
+ #A78D5B
#000000
#FFBAB1
#370001
#FF5449
#000000
- #0F1511
- #DFE4DD
- #0F1511
- #F7FCF5
- #404942
- #C4CDC4
- #9CA59D
- #7D857E
+ #1A1110
+ #F1DEDC
+ #1A1110
+ #FFF9F9
+ #534341
+ #DCC6C3
+ #B39E9C
+ #927F7D
#000000
- #DFE4DD
- #262B27
- #075333
- #ADF2C7
- #001509
- #91D5AC
- #003F25
- #D0E8D6
- #02150A
- #B5CCBB
- #263B2E
- #BFE9F9
- #00141A
- #A4CDDC
- #0D3B47
- #0F1511
- #353B36
- #0A0F0C
- #171D19
- #1B211D
- #262B27
- #303632
- #EEFFF1
+ #F1DEDC
+ #322826
+ #74352F
+ #FFDAD6
+ #2C0102
+ #FFB4AC
+ #5E231F
+ #FFDAD6
+ #200B09
+ #E7BDB8
+ #4B2F2C
+ #FEDFA6
+ #191000
+ #E0C38C
+ #463309
+ #1A1110
+ #423735
+ #140C0B
+ #231918
+ #271D1C
+ #322826
+ #3D3231
+ #FFF9F9
#000000
- #96D9B0
+ #FFBAB2
#000000
- #EEFFF1
+ #FFF9F9
#000000
- #B9D1BF
+ #EBC1BC
#000000
- #F5FCFF
+ #FFFAF7
#000000
- #A8D1E0
+ #E5C790
#000000
#FFF9F9
#000000
#FFBAB1
#000000
- #0F1511
- #DFE4DD
- #0F1511
+ #1A1110
+ #F1DEDC
+ #1A1110
#FFFFFF
- #404942
- #F4FDF4
- #C4CDC4
- #C4CDC4
+ #534341
+ #FFF9F9
+ #DCC6C3
+ #DCC6C3
#000000
- #DFE4DD
+ #F1DEDC
#000000
- #00311C
- #B1F6CB
+ #4E1714
+ #FFE0DC
#000000
- #96D9B0
- #001B0D
- #D5EDDB
+ #FFBAB2
+ #330404
+ #FFE0DC
#000000
- #B9D1BF
- #061A0F
- #C3EEFD
+ #EBC1BC
+ #26100E
+ #FFE3B3
#000000
- #A8D1E0
- #001921
- #0F1511
- #353B36
- #0A0F0C
- #171D19
- #1B211D
- #262B27
- #303632
+ #E5C790
+ #1F1400
+ #1A1110
+ #423735
+ #140C0B
+ #231918
+ #271D1C
\ No newline at end of file
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 80479f9..1a5c4a1 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -13,143 +13,143 @@
#FF757575
- #276A49
+ #904A44
#FFFFFF
- #ADF2C7
- #002111
- #4E6355
+ #FFDAD6
+ #3B0907
+ #775653
#FFFFFF
- #D0E8D6
- #0B1F14
- #3C6471
+ #FFDAD6
+ #2C1513
+ #715B2E
#FFFFFF
- #BFE9F9
- #001F27
+ #FEDFA6
+ #261900
#BA1A1A
#FFFFFF
#FFDAD6
#410002
- #F6FBF4
- #171D19
- #F6FBF4
- #171D19
- #DCE5DC
- #404942
- #717972
- #C0C9C0
+ #FFF8F7
+ #231918
+ #FFF8F7
+ #231918
+ #F5DDDB
+ #534341
+ #857371
+ #D8C2BF
#000000
- #2C322D
- #EDF2EB
- #91D5AC
- #ADF2C7
- #002111
- #91D5AC
- #055232
- #D0E8D6
- #0B1F14
- #B5CCBB
- #374B3E
- #BFE9F9
- #001F27
- #A4CDDC
- #224C59
- #D6DBD5
- #F6FBF4
+ #392E2D
+ #FFEDEA
+ #FFB4AC
+ #FFDAD6
+ #3B0907
+ #FFB4AC
+ #73332E
+ #FFDAD6
+ #2C1513
+ #E7BDB8
+ #5D3F3C
+ #FEDFA6
+ #261900
+ #E0C38C
+ #584419
+ #E8D6D4
+ #FFF8F7
#FFFFFF
- #F0F5EE
- #EAEFE9
- #E4EAE3
- #DFE4DD
- #004D2F
+ #FFF0EF
+ #FCEAE7
+ #F6E4E2
+ #F1DEDC
+ #6E302A
#FFFFFF
- #40815E
+ #AA6058
#FFFFFF
- #33473A
+ #593B38
#FFFFFF
- #647A6B
+ #8F6C68
#FFFFFF
- #1E4855
+ #544015
#FFFFFF
- #527A88
+ #897142
#FFFFFF
#8C0009
#FFFFFF
#DA342E
#FFFFFF
- #F6FBF4
- #171D19
- #F6FBF4
- #171D19
- #DCE5DC
- #3C453F
- #59615A
- #747D76
+ #FFF8F7
+ #231918
+ #FFF8F7
+ #231918
+ #F5DDDB
+ #4E3F3E
+ #6C5B59
+ #897674
#000000
- #2C322D
- #EDF2EB
- #91D5AC
- #40815E
+ #392E2D
+ #FFEDEA
+ #FFB4AC
+ #AA6058
#FFFFFF
- #256846
+ #8D4842
#FFFFFF
- #647A6B
+ #8F6C68
#FFFFFF
- #4C6153
+ #745450
#FFFFFF
- #527A88
+ #897142
#FFFFFF
- #39626F
+ #6F592C
#FFFFFF
- #D6DBD5
- #F6FBF4
+ #E8D6D4
+ #FFF8F7
#FFFFFF
- #F0F5EE
- #EAEFE9
- #E4EAE3
- #DFE4DD
- #002816
+ #FFF0EF
+ #FCEAE7
+ #F6E4E2
+ #F1DEDC
+ #44100D
#FFFFFF
- #004D2F
+ #6E302A
#FFFFFF
- #12261B
+ #341C19
#FFFFFF
- #33473A
+ #593B38
#FFFFFF
- #002630
+ #2E2000
#FFFFFF
- #1E4855
+ #544015
#FFFFFF
#4E0002
#FFFFFF
#8C0009
#FFFFFF
- #F6FBF4
- #171D19
- #F6FBF4
+ #FFF8F7
+ #231918
+ #FFF8F7
#000000
- #DCE5DC
- #1E2620
- #3C453F
- #3C453F
+ #F5DDDB
+ #2E211F
+ #4E3F3E
+ #4E3F3E
#000000
- #2C322D
+ #392E2D
#FFFFFF
- #B6FBD0
- #004D2F
+ #FFE7E4
+ #6E302A
#FFFFFF
- #00341E
+ #521A16
#FFFFFF
- #33473A
+ #593B38
#FFFFFF
- #1D3125
+ #402623
#FFFFFF
- #1E4855
+ #544015
#FFFFFF
- #00323D
+ #3B2A02
#FFFFFF
- #D6DBD5
- #F6FBF4
+ #E8D6D4
+ #FFF8F7
#FFFFFF
- #F0F5EE
- #EAEFE9
+ #FFF0EF
+ #FCEAE7
\ No newline at end of file
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
new file mode 100644
index 0000000..6019e6e
--- /dev/null
+++ b/app/src/main/res/values/dimens.xml
@@ -0,0 +1,4 @@
+
+
+ 28sp
+
\ No newline at end of file
diff --git a/app/src/main/res/values/ic_launcher_background.xml b/app/src/main/res/values/ic_launcher_background.xml
new file mode 100644
index 0000000..c8533f2
--- /dev/null
+++ b/app/src/main/res/values/ic_launcher_background.xml
@@ -0,0 +1,4 @@
+
+
+ #560A0A
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 50cad2c..281b6b9 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -3,6 +3,11 @@
The action you would like to perform requires DeviceAdmin privileges, please grant them before continuing.
+
+ Welcome %s
+ Welcome User Whatever
+ Unknown User
+
Sleep Timer
SleepTimer
@@ -13,4 +18,5 @@
Cancel
%02d:%02d:%02d"
%02d:%02d"
+
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
index 025cef8..7c75968 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,4 +1,5 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
id 'com.android.application' version '8.2.0-beta03' apply false
+id 'com.google.gms.google-services' version '4.4.2' apply false
}
\ No newline at end of file