Итак, у меня есть приложение, в котором есть раздел с некоторыми значками, и я хочу сделать эти значки кликабельными и перенаправить на URL-адрес по своему выбору. Я пробовал использовать url_launcher: ^6.1.6 и url_launcher: ^5.7.8 (по крайней мере, один из них вывел меня на пустую страницу). Я не знаю, что делать сейчас. код ссылки выглядит так:
и код, чтобы сделать значок кликабельным, выглядит следующим образом:
А приложение выглядит так:
Я хочу сделать так, чтобы при нажатии на значок он перенаправлял вас на веб-страницу.
не могли бы вы поделиться примером URL, который вы пытаетесь достичь, пожалуйста
await canLaunch(url)
возвращается false
?
Вы добавили необходимую конфигурацию для Android и iOS, указанную в документации url_launcher: pub.dev/packages/url_launcher#configuration?
как я вижу, то, что вы используете для реализации кода url_launcher, устарело, canLaunch()
устарело, вам нужно использовать canLaunchUri()
, или вы можете просто попробовать следующее.
используя пакет url_launcher, допустим, у вас есть такие иконки:
IconButton(
onPressed: () async {
await goToWebPage("https://flutter.dev");
},
icon: Icon(Icons.add)
),
IconButton(
onPressed: () async {
await goToWebPage("https://instagram.com");
},
icon: Icon(Icons.done)
)
вы можете просто реализовать свой метод, например:
Future<void> goToWebPage(String urlString) async {
final Uri _url = Uri.parse(urlString);
if (!await launchUrl(_url)) {
throw 'Could not launch $_url';
}
}
это попытается открыть ссылку https://flutter.dev в браузере, если возникнут какие-либо проблемы, оно выдаст исключение
Отлично Сработало! Но как мне сделать так, чтобы каждая иконка имела отдельный URL-адрес, например, иконка 1 идет на flutter.com, а иконка 2 — на instagram.com/ и так далее?
позвольте мне отредактировать ответ, чтобы он соответствовал этому случаю
проверьте это сейчас, я обновил это $
Можете ли вы включить как фрагмент кода