Skip to main content

Инструкция: как использовать нативные функции из WebView


✅ Доступные функции

Название JS-функции

Описание

oneSignalSendTag(key, value)

Устанавливает тег в OneSignal (для сегментации push-уведомлений)

oneSignalRemoveTag(key)

Удаляет тег в OneSignal

hasNotificationPermission(callback)

Проверяет, есть ли разрешение на push-уведомления (callback(result: boolean))

requestNotificationPermission()

Запрашивает разрешение на push-уведомления (если отказано — откроет настройки)

getContact(callback)

Открывает нативный выбор контакта, возвращает номер (callback(phone))

setTopColor(color)

Устанавливает цвет статус-бара (hex-цвет, например #FF0000)

setBottomColor(color)

Устанавливает цвет home-индикатора на iOS

📎 Примеры использования

📍 Установить тег в OneSignal
oneSignalSendTag('user_type', 'premium');
📍 Удалить тег
oneSignalRemoveTag('user_type');
📍 Проверить разрешение на уведомления
hasNotificationPermission(function (hasPermission) {
  if (hasPermission) {
    console.log('Разрешения есть ✅');
  } else {
    console.log('Разрешений нет ❌');
  }
});
📍 Запросить разрешение
requestNotificationPermission();
📍 Получить контакт с устройства
getContact(function (phoneNumber) {
  if (phoneNumber) {
    console.log('Выбран номер:', phoneNumber);
  } else {
    console.log('Контакт не выбран');
  }
});
📍 Изменить цвет верхней панели (статус-бара)
setTopColor('#00FF00'); // Зелёный

Чтобы сбросить цвет на цвет по-умолчанию, передайте пустую строку при установки цвета

📍 Изменить цвет нижней панели (home indicator на iOS)

setBottomColor('#0000FF'); // Синий

Чтобы сбросить цвет на цвет по-умолчанию, передайте пустую строку при установки цвета

🛠 Поддержка

Если у вас не работает какая-либо функция:

  • Проверьте, внедрился ли Bridge (window.BridgeInider === true).

  • Обратитесь к мобильной команде, если требуется подключить новую функцию.