diff --git a/client/android/AndroidManifest.xml b/client/android/AndroidManifest.xml index 7a362a8a..30b77f09 100644 --- a/client/android/AndroidManifest.xml +++ b/client/android/AndroidManifest.xml @@ -98,6 +98,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + { - intent.getStringExtra(EXTRA_TEXT)?.let(::startMainActivity) - } + "text/plain" -> intent.getStringExtra(EXTRA_TEXT)?.let(::startMainActivity) } } ACTION_VIEW -> { - Log.v(TAG, "Process VIEW action") - intent.data?.toString()?.let(::startMainActivity) + Log.v(TAG, "Process VIEW action, scheme: ${intent.scheme}") + when (intent.scheme) { + "file", "content" -> { + intent.data?.let { uri -> + checkPermissions( + uri, + onSuccess = ::processUri, + onFail = ::finish + ) + } + return + } + + "vpn" -> intent.data?.toString()?.let(::startMainActivity) + } + } } finish()