什么是应用程序通过href链接发送消息和没有应用程序的用户回退

时间:2016-09-15 08:16:43

标签: android ios whatsapp deep-linking fallback

我在社交页面上工作,该页面允许用户选择将打开whatsapp的链接并向用户选择的联系人发送消息。

我目前正在执行此操作,如下所示。

<a class="modal__link modal__link--whatsapp js-product-share__link--wa"
               href="whatsapp://send?text=<?php echo $whatsappBody . " " . $currentUrl;?>" data-action="share/whatsapp/share">

此方法支持IOS和Android。但是我的问题是,如果未在以太设备上安装whatsapp,我只会收到一般错误消息。

理想情况下,我希望能够将用户重定向到相应的商店以下载whatsapp。

是否有人可以深入了解目前退回的方法是什么?

1 个答案:

答案 0 :(得分:1)

  boolean installed = appInstalledOrNot("com.whatsapp");

if(installed){
// do your task
}else{
try {
    Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + "com.whatsapp"));
    i.addFlag(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(i);
} catch (android.content.ActivityNotFoundException anfe) {
    ...
}
}


 private boolean appInstalledOrNot(String uri) {
            PackageManager pm = getPackageManager();
            boolean app_installed;
            try {
                pm.getPackageInfo(uri, PackageManager.GET_ACTIVITIES);
                app_installed = true;
            }
            catch (PackageManager.NameNotFoundException e) {
                app_installed = false;
            }
            return app_installed;
        }

试试这个,让我知道它是否有效