Описание методов iOS-фреймворка

Для разработки мобильного приложения в запросах к серверу мобильной платформы используются методы iOS-фреймворка основного класса HHFWController.

Большинство методов выполняются асинхронно в фоновом потоке. Для отображения результата выполнения запроса передайте в метод замыкание «handler» типа «HHFWCompletionHandler?», которое автоматически вызывается на основном потоке после выполнения метода.

Примечание. Перед выполнением методов выполните аутентификацию на сервере мобильной платформы по логину и паролю или со сменой пароля. Для работы с локальной базой данных и ресурсами откройте соединение и загрузите схемы ресурсов, иначе методы будут вызывать замыкание «handler» c параметром «nil».

Методы аутентификации

Аутентификация пользователя по логину и паролю (auth)

Аутентификация пользователя со сменой пароля (auth)

Проверка использования LDAP по протоколу SSL (setSSLChecks)

Отмена аутентификации (unAuth)

Использование методов приведено в примерах «Примеры аутентификации на сервере мобильной платформы».

Метод проверки доступности сервера

Проверка доступности сервера мобильной платформы (connectionStatus)

Использование метода приведено в примере «Пример проверки доступности сервера мобильной платформы».

Методы работы с локальной базой данных

Открытие или создание базы данных (openBase)

Смена ключа шифрования базы данных (rekeyBase)

SQL-запрос к базе данных (query)

Получение наименований таблиц (getTablesName)

Удаление таблиц из базы данных (dropCache)

Закрытие базы данных (closeBase)

Использование методов приведено в примерах «Примеры работы с ресурсами».

Методы работы с ресурсами

Загрузка схемы ресурсов (resources)

Синхронная загрузка дельты в базу данных (deltaStream)

Асинхронная загрузка дельты в базу данных (deltaStreamAsync)

Синхронная загрузка табличных данных в базу данных (tableStream)

Асинхронная загрузка табличных данных в базу данных (tableStreamAsync)

Синхронное получение табличных данных ресурса без загрузки в базу данных (table)

Асинхронное получение табличных данных ресурса без загрузки в базу данных (tableAsync)

Синхронный запрос к ресурсу без загрузки в базу данных (request)

Асинхронный запрос к ресурсу без загрузки в базу данных (requestAsync)

Установка пути к папке с файлами текущего состояния загрузки ресурса (setDownloadPath)

Возобновление загрузки ресурса (useDownload)

Использование методов приведено в примерах «Примеры работы с ресурсами».

Методы работы с рush-уведомлениями

Для работы с push-уведомлениями используйте мобильное устройство, подготовьте приложение к получению push-уведомлений и определите токен устройства.

Для отправки push-уведомлений с сервера мобильной платформы на мобильное устройство сформируйте pem-сертификат Apple Push Services на основе сертификатов, которые получены в Apple Developer Account:

  1. Скачайте необходимый сертификат из профиля разработчика и добавьте его в Keychain Access.

  2. Раскройте сертификат в Keychain Access.

  3. Выделите сам сертификат и закрытый ключ, экспортируйте их в удобное место с расширением *.p12.

  4. Перейдите в терминале в директорию с экспортированным файлом и преобразуйте его в файл с расширением *.pem.

cd Desktop // директория, в которой находится экспортированный файл, например, на рабочем столе
openssl pkcs12 -in pushcert.p12 -out pushcert.pem -nodes -clcerts
  1. Добавьте сертификат в разделе «Apple Push Notification service» при настройке push-уведомлений.

Для получения подробной информации о запросах на отправку push-уведомлений обратитесь к разделу «Метод работы с push-уведомлениями».

Получение списка активных токенов (getTokens)

Отправка токена на сервер (addToken)

Удаление токенов с сервера (removeTokens)

Получение списка тем сообщений (getTopics)

Установка пути к файлу сертификата удостоверяющего центра (setCAPemFilePath)

Подписка на сообщения (subscribeTopics)

Отписка от сообщений (unsubscribeTopics)

Использование методов приведено в разделе «Пример работы с push-уведомлениями».

Методы работы с файлами

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

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

Получение информации о содержимом директории (getDirectory)

Получение информации о файле (getFileMeta)

Скачивание файла с сервера (getFile)

Загрузка файла на сервер (putFile)

Удаление файла с сервера (deleteFile)

Методы работы с шифрованием данных

Проверка ключа шифрования (checkPassword)

Расшифровка файла в новый файл (decryptFile)

Расшифровка файла в строку (decryptFileToString)

Расшифровка файла в байтовый буфер (decryptFileToData)

Расшифровка строки в файл (decryptString)

Расшифровка строки в новую строку (decryptStringToString)

Локальное шифрование байтового буфера в файл (encryptData)

Локальное шифрование файла в новый файл (encryptFile)

Локальное шифрование файла в строку (encryptFileToString)

Локальное шифрование строки в файл (encryptString)

Локальное шифрование строки в новую строку (encryptStringToString)

Использование методов приведено в разделе «Пример работы с шифрованием файлов».

Методы работы с транзакциями

Для получения подробной информации о передаче транзакционных данных обратитесь к разделу «Передача транзакционных данных».

Получение списка всех транзакций (getAllTransactions)

Получение ответа по ID транзакции (getTransaction)

Повторный запрос с указанием ID транзакции для получения табличных данных (retryTable)

Повторный запрос с указанием ID транзакции для асинхронного получения табличных данных без загрузки в базу данных (retryTableAsync)

Повторный запрос с указанием ID транзакции для синхронной загрузки табличных данных в базу данных (retryTableStream)

Повторный запрос с указанием ID транзакции для асинхронной загрузки табличных данных в базу данных (retryTableStreamAsync)

Удаление информации о транзакции (deleteTransaction)

Использование методов приведено в разделе «Пример работы с транзакциями».

Методы работы с цифровой подписью

Перед выполнением методов настройте параметры подключения к КриптоПро DSS.

Получение списка сертификатов (getCertificatesWithPassword)

Получение истории цифровых подписей (signs)

Отправка документа на подпись (signCertificate)

Удаление цифровой подписи (remove)

Использование методов приведено в разделе «Пример работы с цифровой подписью».

Методы работы с WEB-ресурсами

Обращение к WEB-ресурсам осуществляется по принципу прокси. Сервер мобильной платформы выполняет роль посредника между мобильным устройством и WEB-ресурсами.

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

Универсальнй запрос к WEB-ресурсу (webRequest)

Использование HTTP-метода POST при запросе к WEB-ресурсу (webPost)

Использование HTTP-метода GET при запросе к WEB-ресурсу (webGet)

Использование HTTP-метода TRACE при запросе к WEB-ресурсу (webTrace)

Использование HTTP-метода HEAD при запросе к WEB-ресурсу (webHead)

Использование HTTP-метода PUT при запросе к WEB-ресурсу (webPut)

Использование HTTP-метода DELETE при запросе к WEB-ресурсу (webDelete)

Использование HTTP-метода PATCH при запросе к WEB-ресурсу (webPatch)

Использование HTTP-метода OPTIONS при запросе к WEB-ресурсу (webOptions)

Методы работы с продуктом «Форсайт. Аналитическая платформа»

Обращение к продукту «Форсайт. Аналитическая платформа» осуществляется аналогично обращению к WEB-ресурсам.

Запрос к продукту «Форсайт. Аналитическая платформа» (request)

Использование метода приведено в примере «Пример работы с продуктом «Форсайт. Аналитическая платформа».

Методы работы с логированием

Запись ошибки в журнал (logFatal)

Запись сообщения в журнал (logTrace)

Запись предупреждения в журнал (logWarning)

Установка пути к базе данных с логами (setLogDBPath)

Вывод лога работы фреймворка в консоль (setLogEnabled)

Установка уровня логирования (setLogLevel)

Отправка логов на сервер мобильной платформы (syncLogs)

Получение расписания синхронизации логов (syncLogsSchedule)

Методы работы с состоянием

Получение состояния (state)

Установка состояния (setState)

См. также:

Фреймворк HHFW | Примеры использования iOS-фреймворка