Как позвонить в WhatsApp по ссылке из webview в C # / Xamarin? - PullRequest
0 голосов
/ 18 сентября 2018

Я нашел несколько примеров, но для Java.

Ссылка:

<a href="whatsapp://send?text=message">

MainPage.xaml.cs:

public void Webnav_Navigating(object sender, WebNavigatingEventArgs e)
{
    string url = e.Url;
    if (url.StartsWith("whatsapp://"))
    {
        // what I need here?
     }   
 }

1 Ответ

0 голосов
/ 19 сентября 2018

Если установлен WhatsApp, вы можете просто позвонить Device.OpenUri:

void WebView_Navigating(object sender, WebNavigatingEventArgs e)
{
    var url = e.Url;
    if (url.StartsWith("whatsapp://", StringComparison.InvariantCultureIgnoreCase))
    {
        try
        {
            Device.OpenUri(new Uri(e.Url));
        }
        // Can not catch Android exception type in NetStd/PCL library, so hack it...
        catch (Exception ex) when (ex.Message.StartsWith("No Activity found to handle Intent", StringComparison.InvariantCulture))
        {
            // WhatsApp not installed : Android.Content.ActivityNotFoundException: No Activity found to handle Intent
            Console.WriteLine(ex);
        }
    }
}
...