diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index bbc0ef6..1942b2e 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -1,5 +1,6 @@
+
+
+
+
+
diff --git a/android/app/src/main/kotlin/com/davide/biteplan/MainActivity.kt b/android/app/src/main/kotlin/com/davide/biteplan/MainActivity.kt
index c87d893..d14c341 100644
--- a/android/app/src/main/kotlin/com/davide/biteplan/MainActivity.kt
+++ b/android/app/src/main/kotlin/com/davide/biteplan/MainActivity.kt
@@ -1,5 +1,29 @@
package com.davide.biteplan
+import android.content.Intent
+import android.net.Uri
import io.flutter.embedding.android.FlutterActivity
+import io.flutter.embedding.engine.FlutterEngine
+import io.flutter.plugin.common.MethodChannel
-class MainActivity : FlutterActivity()
+class MainActivity : FlutterActivity() {
+ private val channel = "com.davide.biteplan/launcher"
+
+ override fun configureFlutterEngine(flutterEngine: FlutterEngine) {
+ super.configureFlutterEngine(flutterEngine)
+ MethodChannel(flutterEngine.dartExecutor.binaryMessenger, channel)
+ .setMethodCallHandler { call, result ->
+ if (call.method == "launch") {
+ val url = call.argument("url")
+ if (url != null) {
+ startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(url)))
+ result.success(null)
+ } else {
+ result.error("INVALID_URL", "URL is null", null)
+ }
+ } else {
+ result.notImplemented()
+ }
+ }
+ }
+}