Flutter Как открыть приложение через URI схему
Подскажите пожалуйста как в приложении flutter запустить приложение сбербанка. Я использую подход через URI схему String sberbankUrlSchemeLogin = 'sberbankonline://'; Приложение пытается открыться видно логотип Сбербанка но пишет что такой ссылки не существует и выкидывает.
Ответы (1 шт):
Автор решения: MiT
→ Ссылка
Чтобы была поддержка и ios, и android, есть только такой способ:
import 'package:url_launcher/url_launcher.dart';
Future<void> openSberbank() async {
final Uri url = Uri.parse('sberbankonline://');
try {
if (await canLaunchUrl(url)) {
await launchUrl(url);
} else {
await _openSberbankWeb();
}
} catch (e) {
// Обработайте ошибку, например, покажите сообщение пользователю.
print('Ошибка при открытии Сбербанк Онлайн: $e');
}
}
Future<void> _openSberbankWeb() async {
final Uri url = Uri.parse('https://online.sberbank.ru');
try {
if (await canLaunchUrl(url)) {
await launchUrl(url);
} else {
// Обработайте ошибку, например, покажите сообщение пользователю.
}
} catch (e) {
// Обработайте ошибку, например, покажите сообщение пользователю.
print('Ошибка при открытии Сбербанк Онлайн: $e');
}
}
Но нужно учитывать что у сбера есть разные URI-схемы и обычно после //
должно быть что-то ещё:
sber://
sberbankonline://
sbolonline://
ru.sberbankmobile://