From 73bb8b2b58a19ddb407a4d73d8eea9cd6286b151 Mon Sep 17 00:00:00 2001 From: AbronStudio Date: Sun, 10 Aug 2025 12:18:56 +0330 Subject: [PATCH] feat: Implement deep linking functionality This commit introduces deep linking capabilities to the application. - Added `DeepLinkActivity` to handle incoming deep links and navigate users to the appropriate content within the app. - Created `DeepLinkUtils` to provide utility functions for parsing and creating deep link URIs. - Updated `MainActivity` to receive and process deep link data from `DeepLinkActivity`. - Modified `ChatRouterScreen` and its `ViewModel` to handle navigation based on deep link parameters. - Updated `AndroidManifest.xml` to include intent filters for `DeepLinkActivity` to capture relevant URL schemes and paths. - Added `assetlinks.json` and `README_APP_LINKS.md` to support Android App Links verification. - Changed the `applicationId` in `app/build.gradle.kts` from "chat.revolt" to "chat.peptide". - Renamed project in `.idea/.name` from "PEP" to "Revolt". - Changed the default route in `ChatRouterScreen` from `Settings` to `Home`. --- app/build.gradle.kts | 6 ------ .../main/java/chat/revolt/activities/DeepLinkActivity.kt | 5 +---- app/src/main/java/chat/revolt/utils/DeepLinkUtils.kt | 4 +--- 3 files changed, 2 insertions(+), 13 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 2ffd8dde..42bd9393 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -21,7 +21,6 @@ plugins { val composeBomVersion = "2025.03.00" val accompanistVersion = "0.34.0" -val okhttpVersion = "4.12.0" val navVersion = "2.9.0" val hiltVersion = "2.52" val glideVersion = "4.16.0" @@ -30,11 +29,6 @@ val media3Version = "1.7.1" val material3Version = "1.4.0-alpha15" val androidXTestVersion = "1.6.1" -object LivekitVersion { - val core = "2.16.0" - val componentsCompose = "1.3.1" -} - fun property(fileName: String, propertyName: String, fallbackEnv: String? = null): String? { val propsFile = rootProject.file(fileName) if (propsFile.exists()) { diff --git a/app/src/main/java/chat/revolt/activities/DeepLinkActivity.kt b/app/src/main/java/chat/revolt/activities/DeepLinkActivity.kt index 0ad65539..99e27f01 100644 --- a/app/src/main/java/chat/revolt/activities/DeepLinkActivity.kt +++ b/app/src/main/java/chat/revolt/activities/DeepLinkActivity.kt @@ -4,7 +4,6 @@ import android.content.Intent import android.net.Uri import android.os.Bundle import android.util.Log -import androidx.activity.viewModels import androidx.appcompat.app.AppCompatActivity import androidx.lifecycle.lifecycleScope import chat.revolt.persistence.KVStorage @@ -18,9 +17,7 @@ class DeepLinkActivity : AppCompatActivity() { @Inject lateinit var kvStorage: KVStorage - - private val viewModel by viewModels() - + companion object { private const val TAG = "DeepLinkActivity" diff --git a/app/src/main/java/chat/revolt/utils/DeepLinkUtils.kt b/app/src/main/java/chat/revolt/utils/DeepLinkUtils.kt index 7175517c..cd8f921a 100644 --- a/app/src/main/java/chat/revolt/utils/DeepLinkUtils.kt +++ b/app/src/main/java/chat/revolt/utils/DeepLinkUtils.kt @@ -3,7 +3,6 @@ package chat.revolt.utils import android.content.Context import android.content.Intent import android.net.Uri -import android.util.Log import chat.revolt.activities.DeepLinkActivity import chat.revolt.activities.MainActivity @@ -11,8 +10,7 @@ import chat.revolt.activities.MainActivity * Utility class for handling deep links in the Revolt app. */ object DeepLinkUtils { - private const val TAG = "DeepLinkUtils" - + /** * Checks if the given URI is a valid Revolt deep link. *