SplashFragment: Fix parsing shared app link
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This commit is contained in:
@@ -22,8 +22,6 @@ package com.aurora.extensions
|
||||
import android.graphics.Color
|
||||
import android.text.format.DateFormat
|
||||
import androidx.annotation.ColorInt
|
||||
import java.io.PrintWriter
|
||||
import java.io.StringWriter
|
||||
import java.util.Calendar
|
||||
import java.util.Locale
|
||||
import javax.annotation.Nullable
|
||||
@@ -34,19 +32,6 @@ fun Long.toDate(): String {
|
||||
return DateFormat.format("dd/MM/yy", calendar).toString()
|
||||
}
|
||||
|
||||
fun Throwable.stackTraceToString(): String {
|
||||
val stringWriter = StringWriter(1024)
|
||||
val printWriter = PrintWriter(stringWriter)
|
||||
printStackTrace(printWriter)
|
||||
printWriter.close()
|
||||
return stringWriter.toString()
|
||||
}
|
||||
|
||||
fun isValidPackageName(packageName: String): Boolean {
|
||||
val packageRegex = "^[a-zA-Z][a-zA-Z0-9_]*(\\.[a-zA-Z][a-zA-Z0-9_]*)*$".toRegex()
|
||||
return packageName.matches(packageRegex)
|
||||
}
|
||||
|
||||
/**
|
||||
* Computes a darker color from the given color.
|
||||
* @param color The color to darken.
|
||||
|
||||
@@ -20,12 +20,12 @@
|
||||
package com.aurora.store.view.ui.splash
|
||||
|
||||
import android.content.Intent
|
||||
import android.net.UrlQuerySanitizer
|
||||
import android.os.Bundle
|
||||
import android.view.View
|
||||
import androidx.fragment.app.activityViewModels
|
||||
import androidx.navigation.fragment.findNavController
|
||||
import com.aurora.extensions.hide
|
||||
import com.aurora.extensions.isValidPackageName
|
||||
import com.aurora.extensions.show
|
||||
import com.aurora.store.R
|
||||
import com.aurora.store.data.model.AuthState
|
||||
@@ -209,13 +209,8 @@ class SplashFragment : BaseFragment<FragmentSplashBinding>() {
|
||||
return if (activity?.intent != null && activity?.intent?.scheme == "market") {
|
||||
requireActivity().intent.data!!.getQueryParameter("id") ?: ""
|
||||
} else if (activity?.intent != null && activity?.intent?.action == Intent.ACTION_SEND) {
|
||||
val clipData = requireActivity().intent.clipData?.getItemAt(0)?.text.toString()
|
||||
if (clipData.contains("/store/apps/details?id=")) {
|
||||
val packageName = clipData.split("id=").last().trim()
|
||||
if (isValidPackageName(packageName)) packageName else ""
|
||||
} else {
|
||||
""
|
||||
}
|
||||
val clipData = activity?.intent?.getStringExtra(Intent.EXTRA_TEXT) ?: ""
|
||||
UrlQuerySanitizer(clipData).getValue("id") ?: ""
|
||||
} else {
|
||||
requireArguments().getString("packageName") ?: ""
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user