Android Studio inappwebview uygulamamda WhatsApp linkleri ve telefon linkleri çalışmıyor. WhatsApp mesaj veya telefon araması linklerine tıkladığımda şu hata geliyor.
Bu linkleri nasıl çalışır duruma getirebilirim ?
Android Studio inappwebview uygulamamda WhatsApp linkleri ve telefon linkleri çalışmıyor. WhatsApp mesaj veya telefon araması linklerine tıkladığımda şu hata geliyor.
Bu linkleri nasıl çalışır duruma getirebilirim ?
@HseyinAkkaya bu konuda yardımcı olabilir misin ?
karakartal
şu şekilde bir yapı deneyebilirsin.
onLoadStart: (controller, url) {
if (url.toString().toLowerCase().contains("://wa.me/") ||
url.toString().toLowerCase().contains("://api.whatsapp.com/") ||
!url.toString().toLowerCase().startsWith("http"))
{
webViewController?.stopLoading();
launch(url.toString());
return;
}
setState(() {
this.url = url.toString();
urlController.text = this.url;
});
},
Veya hata aldığında canLaunch(url.toString()) ile sorgulayıp true ise launch metoduyla url’i çalıştırabilirsin. False ise hata sayfanı gösterirsin.
HseyinAkkaya teşekkür ederim işe yaradı
HseyinAkkaya Şöyle bir sorun var telefonun arama yerini ve whatsapp ı açtı. Ancak açarken yine ilk önce bu sayfayı açıyor sonra aramayı veya whatsaap ı açıyor.
Telefonun geri tuşuna bastığımda kendi uygulamama geri dönüyor ama uygulama donuyor. Dokunmalarımı algılamıyor. Muhtemelen geri tuşuna basınca bu hata sayfasına geri dönmeye çalışıyor.
karakartal
peki onun yerine şunu eklemeyi dener misin
shouldOverrideUrlLoading:
(controller, navigationAction) async {
var uri = navigationAction.request.url!;
if (![
"http",
"https",
"file",
"chrome",
"data",
"javascript",
"about"
].contains(uri.scheme)) {
if (await canLaunch(url)) {
// Launch the App
await launch(
url,
);
// and cancel the request
return NavigationActionPolicy.CANCEL;
}
}
return NavigationActionPolicy.ALLOW;
},
HseyinAkkaya maalesef olmadı bunu eklediğimde arama butonuna tıkladıktan sonra chrome i açmak için izin istiyor
karakartal
bu yapıyı dener misin bir de
shouldOverrideUrlLoading:
(controller, navigationAction) async {
var uri = navigationAction.request.url!;
if (uri.toString().toLowerCase().contains("://wa.me/") ||
uri.toString().toLowerCase().contains("://api.whatsapp.com/") ||
!uri.toString().toLowerCase().startsWith("http")) {
if (await canLaunch(uri.toString())) {
// Launch the App
await launch(uri.toString());
// and cancel the request
return NavigationActionPolicy.CANCEL;
}
}
return NavigationActionPolicy.ALLOW;
},
HseyinAkkaya Whatsaap kısmı düzeldi ancak aramaya tıklayınca doğrudan bu geliyor .
karakartal debug eder misin uri ne olarak geliyo sorgulara
HseyinAkkaya
urinin ne olarak geldiğini bulamadım.
Bir de emilatörde arama düzgün çalışıyor whatsapp çalışmıyor. Gerçek cihazda ise whatsapp çalışıyor arama çalışmıyor. Çözemedim neden öyle olduğunu.