Прямое открытие мессенджеров по ссылке из приложения Apache Cordova

Просмотров: 2258

Задача: При клике по ссылкам на Telegram и WhatsApp в мобильном приложении необходимо сразу открывать мессенджеры без промежуточного открытия системного браузера.

Прямое открытие мессенджеров по ссылке из мобильного приложения Apache Cordova

Если просто разместить ссылку на нужный мессенджер в мобильном приложении, то при клике на нее она откроется в системном браузере телефона или планшета. Пользователь должен будет согласиться на открытие мессенджера, после чего откроется нужный чат.

Для того, чтобы избежать открытия мессенджера в системном браузере и сразу запустить его, необходимо добавить следующие строки в файл конфигурации приложения (config.xml):

<allow-intent href="tg://*/*" />
<allow-intent href="whatsapp://*/*" />

Добавление ссылок на мессенджеры, в зависимости от платформы

На iOS есть особенность, заключающаяся в том, что ссылка на нужный чат в WhatsApp отличается от ссылки для Android. Поэтому для этого мессенджера необходимо проверять платформу и использовать соответствующую ссылку.

Для реализации данной функциональности необходимо создать две кнопки с соответствующими ID и добавить небольшой JavaScript-скрипт, который будет реагировать на нажатия кнопок и открывать соответствующий мессенджер, сразу открывая чат с пользователем.


<button id="open_tg_chat">Открыть Telegram </button>
<button id="open_wa_chat">Открыть WhatsApp </button>

<script>
    document.addEventListener("deviceready", onDeviceReady, false);

    function onDeviceReady() {

        // Telegram ======================================================
        document.getElementById("open_tg_chat").onclick = function () {
            function openTelegramChat(username) {
                var url = "tg://resolve?domain=" + username;
                var target = "_system";
                var options = "location=yes";
                window.open(url, target, options);
            }
            openTelegramChat("ВАШ_ФААКАУНТ_В_ТЕЛЕГЕ");
        }

        // Whatsapp ======================================================
        var devicePlatform = device.platform;
        if (devicePlatform === 'Android') {
            document.getElementById("open_wa_chat").onclick = function () {
                function sendWhatsAppMessage(number, message) {
                    window.location.href = "whatsapp://send?phone=" + number + "&text=" + message;
                }
                sendWhatsAppMessage("+7911_ВАШ_НОМЕР");  // Замените на нужный номер телефона
            }
        } else {
            document.getElementById("open_wa_chat").onclick = function () {
                function sendWhatsAppMessage(number, message) {
                    window.location.href = "whatsapp://send?abid=" + number + "&text=" + message;
                }
                sendWhatsAppMessage("+7911_ВАШ_НОМЕР");  // Замените на нужный номер телефона
            }
        }

    }
</script>
Если вы хотите перенаправлять пользователей в разные чаты в Telegram, то проверку платформы можно также делать и для ссылок на этот мессенджер. Это может быть полезно для сегментации пользователей.

Теперь, при нажатии на кнопку с мессенджером, не будет открываться системный браузер, а сразу произойдет переход в нужное приложение.

Стоимость разработки на 1С-Битрикс:

Индивидуальная разработка магазина

от 500 000 руб. от 5-ти недель

Разработка магазина на 1С-Битрикс с нуля. Дизайн, сборка и оптимизация производительности под конкретный проект и требования. Реализация любого функционала без ограничений готовых решений.

Запуск сайта на готовом решении

от 100 000 руб. от 7-ми дней

Вариант для тех, кто не хочет тратить много средств на индивидуальный проект, и не имеет серьезных требований к сайту. Магазин, быстро запускается на базе одного из 200-та готовых решений.

Мобильное приложение

от 500 000 руб. от 1-го месяца

Разработка кроссплатформенного мобильного приложения, которое не уступает нативным решениям как в производительности, так и пользовательском опыте. Публикуется в AppStore, GooglePlay и RuStore

Сайт компании

от 350 000 руб. от 1-го месяца

Корпоративный сайт с информационными разделами, каталогом товаров или услуг. Включает формы обратной связи карточек каталога, любое количество статичных и динамичных разделов.

Инфресурс

от 400 000 руб. от 5-ти недель

Информационный ресурс любой сложности. Сайт для СМИ, городской портал или многопользовательская доска объявлений. Внутренние форумы, блоги- по необходимости.

Лечение сайтов от вирусов

от 40 000 руб. от 2-х дней

Выполню полную проверку сайта и окружения. В случае обнаружения вирусов проведу полный комплекс лечения проекта и закрытия лазеек.