Какие типы API используются в гибридных мобильных приложениях?

«Какие типы API используются в гибридных мобильных приложениях?» — вопрос из категории Мобильное тестирование, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Гибридные приложения (на базе WebView) используют комбинацию из двух основных типов API:

  1. Веб-API (Backend API):

    • RESTful API / GraphQL: Для получения данных с сервера, аутентификации и выполнения бизнес-логики.
    • Пример вызова (JavaScript):
      fetch('https://api.example.com/user/1')
      .then(response => response.json())
      .then(data => console.log(data));
  2. Нативные API (через мост/плагины):

    • Фреймворки (Cordova, Capacitor, React Native) предоставляют JavaScript-мост для доступа к функциям устройства.
    • Пример доступа к камере через Cordova API:
      navigator.camera.getPicture(
      (imageData) => { console.log('Photo taken'); },
      (error) => { console.error('Camera error:', error); },
      { quality: 50, destinationType: Camera.DestinationType.DATA_URL }
      );
    • Другие примеры нативных API: Геолокация, контакты, файловая система, акселерометр, push-уведомления.

Архитектура доступа: Веб-интерфейс (HTML/JS) <-> Мост (Plugin) <-> Нативный код (Java/Swift) <-> ОС устройства

При тестировании гибридного приложения необходимо проверять корректность работы обоих типов API и их взаимодействие.