diff --git a/app/src/main/java/oppen/ariane/ui/GemActivity.kt b/app/src/main/java/oppen/ariane/ui/GemActivity.kt index 332ab1c..6d3d0c7 100644 --- a/app/src/main/java/oppen/ariane/ui/GemActivity.kt +++ b/app/src/main/java/oppen/ariane/ui/GemActivity.kt @@ -1,8 +1,10 @@ package oppen.ariane.ui +import android.content.ActivityNotFoundException import android.content.Context import android.content.Intent import android.content.pm.PackageManager +import android.content.pm.PackageManager.MATCH_ALL import android.media.MediaPlayer import android.net.Uri import android.os.Bundle @@ -239,11 +241,12 @@ class GemActivity : AppCompatActivity() { private fun externalProtocol(state: GemState.NotGeminiRequest) = runOnUiThread { loadingView(false) - val browserIntent = Intent(Intent.ACTION_VIEW, Uri.parse(state.uri.toString())) + val browserIntent = Intent(Intent.ACTION_VIEW) + browserIntent.data = Uri.parse(state.uri.toString()) - if (browserIntent.resolveActivity(packageManager) != null) { + try { startActivity(browserIntent) - } else { + }catch (e: ActivityNotFoundException){ showAlert("No app installed that can open ${state.uri}") } }