SDK и API – это инструменты, которые позволяют интегрировать ИТ-продукты с внешними системами. В этой статье мы расскажем, чем отличаются эти два понятия и как разработчики применяют их для своих задач.
Начнём с определений.
API (application programming interface, программный интерфейс приложения) – это набор протоколов и инструментов, которые обеспечивают обмен данными между разными компонентами информационных систем.
Благодаря API мобильные приложения могут легко использовать «Яндекс.Карты» или «Календарь» от Google – обе корпорации предоставляют сторонним разработчикам готовые инструменты, чтобы встраивать эти модули в новые продукты. Это именно интерфейс для подключения к внешней инфраструктуре (в нашем примере – к сервисам Яндекса и Google), который позволяет решать прикладные задачи набором HTTP-запросов.
SDK (software development kit, средства для разработки ПО) решает более масштабную задачу: не просто обеспечить обмен данными между приложением и сторонней инфраструктурой, а реализовать полноценный процесс. Он может включать в себя рабочие компоненты для получения пользовательских данных, их безопасной обработки и хранения, изменения состояний.
Все о SDK и API Buffering или такая разная буферизация
В SDK могут входить несколько API, куски вспомогательного кода, обширная документация. Это не просто интерфейс для работы с системой, а готовый набор инструментов для реализации некой бизнес-логики. Компании создают SDK, чтобы сторонние разработчики могли не погружаться в код, а решать свои задачи через абстракцию – вот этот блок обеспечивает работу личного кабинета, этот позволяет открыть камеру смартфона, и т.д. Безопасность данных, отказоустойчивость вызовов отдельных сервисов реализуются именно через SDK.
Попросту говоря, если API – это рецепт блюда, то SDK – это рецепт, нарезанные продукты, чётко отмеренные специи и набор всех кастрюль-сковородок, которые вам понадобятся в готовке.
API и SDK в продуктах True Engineering
В любом нашем продукте используются API заказчиков, чтобы получать данные из клиентской инфраструктуры.
В страховых приложениях мы таким образом подключаемся к бэкенду, чтобы загружать списки полисов, отправлять данные о страховых случаях. В системах учёта продаж и приложениях для кассиров API отвечают за сохранение в бэкенде данных по авиабилетам и выгрузку информации для отчётов.
Это прикладные задачи «местного значения», которые не включают в себя сложную бизнес-логику. Поэтому они решаются посредством API.
Пример, когда возникла необходимость в SDK – это проект по созданию единого модуля для оформления ДТП для страховых приложений. Этот сложный сценарий объединяет авторизацию через ЕСИА, регистрацию происшествия с оформлением европротокола, обмен данными с СТ-ГЛОНАСС АИС ОСАГО, ГИБДД и другими компетентными органами.
Используя SDK, мы можем заключить всю сложную логику в готовый к использованию набор, который затем можно встраивать в любые приложения. Такой модуль включает в себя API для работы с ЕСИА и системами Российского союза автостраховщиков, средства защиты и проверки данных, компоненты для работы с камерой.
API vs. SDK: What’s the difference?
В результате у всех страховых компаний, которые будут использовать этот SDK, сценарий оформления происшествий в приложениях будет отвечать единым стандартам. При этом тратить собственные ресурсы на разработку такого сценария им не придётся.
Итак, как выбрать между SDK и API
- Если компания открывает партнёрам доступ к некой отдельной функции, достаточно API. В нашем примере про страховые приложения так мы получаем списки полисов у пользователей.
Если же владелец сервиса предоставляет партнерам доступ к целому функциональному блоку, более правильным решением будет подготовить SDK.
Источник: trueengineering.ru
Что такое SDK в SaaS-решении и как правильно интегрировать его в мобильное приложение
Если говорить упрощенно, мобильные приложения состоят из множества независимых модулей, каждый из которых отвечает за одну из функций или возможностей: отображение интерфейса, эквайринг, онбординг и прочее. Подобные модули, которые можно использовать в разных приложениях и настраивать под конкретную задачу, называют SDK — Software development kit. Их можно сравнить со сложными IT-деталями, из которых складывается цельное работоспособное приложение.
Чтобы добавить в приложение новый функционал, можно разработать SDK для конкретного приложения самостоятельно либо подключить необходимое стороннее SaaS-решение. Мы уже проводили сравнение по затратам ресурсов между этими двумя подходами (не в пользу первого), теперь разберемся в особенностях процесса интеграции готового решения, разработанного другой компанией.
Подключение стороннего SDK довольно простой процесс — запускаешь пакетный менеджер в интегрированной среде разработки (IDE), вводишь ключ активации (если, например, сервис работает по подписке), и далее библиотека интегрируется автоматически. Для разработчиков это задача на пять минут, руководство по добавлению SDK есть в открытом доступе . Размер SDK составляет порядка 2,5 Мб. Также стоит отметить, что модуль не взаимодействует с персональными данными приложения партнера.
Главные сложности — в процессах настройки компонентов SDK. Все надо сделать так, чтобы сервис работал верно с одной стороны, и функционал использовался максимально с другой.
За счет интеграции SDK стороннего разработчика можно добавить разные компоненты приложения — карту местности, сервис для сбора аналитики, окно диалога или что угодно еще. При интеграции каждого из них, само собой, есть свои тонкости.
На примере настройки виджета сторис при добавлении SDK от InAppStory покажем ряд тонкостей, которые могут возникать в подобных случаях. Вот задачи, которые важно выполнить партнеру, чтобы все работало наилучшим образом.
1. Подготовьте дизайн ячеек сторис
В самом SDK сторис можно сделать ряд базовых настроек отображения виджета — установить размер иконок, используемый шрифт. Если новый раздел нужно максимально подогнать под имеющийся дизайн приложения, то важно чтобы дизайнер компании более детально отрисовал элементы виджета — угол закругления иконок, их форму, цвет рамки, способ отображения прочитанных и новых сторис в ленте. Затем макет нужно передать разработчику и интегрировать в SDK.
2. Подготовьте индивидуальные ID пользователей
Для корректной работы и сбора данных для аналитики модулю необходимо понимать, какой пользователь смотрит конкретную сторис. Поэтому со стороны приложения на SDK нужно передать уникальные идентификаторы пользователей. В идеале они не должны содержать персональной информации — телефонов или имейлов. Также на стороне партнера должна оставаться возможность однозначно выявить пользователя по этому идентификатору. Это нужно, чтобы можно было сделать корректные выводы по результатам прохождения тестов или викторин — например, для определения победителя.
3. Подготовьте ссылки для перехода в разделы приложения
Кнопки в сторис могут вести на различные части приложения. Компании-партнеру очень важно создать систему корректных ссылок для таких переходов . За логику обработки ссылок в кнопках сторис отвечает само приложение, а не SDK, и изменить ее можно только в коде самого приложения. Важный момент: проверить эти ссылки можно только в самом мобильном приложении, поэтому все они должны быть рабочими.
4. Настройте таргетинг
SDK InAppStory позволяет показывать разным сегментам пользователей разные сторис. Задача партнера при настройке SDK — выделить определенные группы пользователей, которым будут присвоены определенные теги: новые, постоянные, обеспеченные, активные пользователи или любые другие. То есть, при входе в сторис система партнера должна передавать в SDK информацию о том, что этому ID пользователя (пункт 2) присвоены следующие теги. Разметка групп пользователей по тегам производится на стороне партнера — в приложении или CRM-системе.
5. Настройте персонализацию
Чтобы использовать возможности персонализации — обращения к пользователю по имени, автоматическом формировании индивидуальных предложений, подбору подходящих тематик сторис и прочее — также нужно настроить систему переменных. Для этого вместе с ID пользователя (пункт 2) на стороне SDK нужно указывать название переменной для этой истории: например user name, и ее значение — имя конкретного человека. В таком сценарии в сторис можно персонально обращаться к пользователю по имени и выводить аналогичным образом персональные предложения.
6. Подключите шеринг
Если партнеру нужна возможность делиться сторис из приложения в соцсетях, то для этого нужно создать web-страницу на своём сайте и разместить там другое SDK, которое позволяет отобразить сторис — Share Page SDK InAppStory. А в консоли InAppStory зайти в настройки проекта и указать ссылку на эту страницу. Именно она будет отправляться в пост, например, на Facebook, когда пользователь будет жать кнопку «поделиться».
7. Настройте push-уведомления
Одна из важных маркетинговых возможностей сервиса InAppStory — возможность показывать пользователю сторис при переходе из push-уведомлений.
Для этого разработчикам приложения партнера нужно предусмотреть это в обработчике пуш-уведомлений. Всё необходимое для показа нужной сторис по ее идентификатору уже есть в SDK InAppStory.
8. Добавьте сторис в виджет вашего приложения
Если в приложении партнера настроена возможность добавления виджета на рабочий стол мобильного устройства, то в нем также можно отобразить сторис. Так они всегда будут на виду у пользователя. Возможность добавления сторис в виджет приложения — задача разработчиков, для которой нужно встроить код в мобильное приложение партнера. Инструкции по программированию опубликованы здесь: для iOS и для Android .
Источник: inappstory.ru
Что такое SDK и API и как Webim использует их
SDK и API – две часто встречающиеся в мире разработки аббревиатуры, нередко ставящие в тупик. В статье мы разберёмся, что каждая из них значит, чем они отличаются, и рассмотрим кейсы использования на примере Webim.
Что такое SDK?
SDK расшифровывается как Software Development Kit и иногда сокращается до devkit для удобства.
SDK – это набор инструментов для разработки, который устанавливается при создании мобильных приложений для улучшения качества и оптимизации работы. Наборы SDK существуют для разных платформ, учитывающие их особенности.
Однако вне зависимости от платформы, в SDK будет входить набор ключевых компонентов, таких как примеры кода, библиотеки и инструменты аналитики тестирования.
Преимущества SDK
Наборы SDK имеют ряд преимуществ, благодаря которым они получили широкое распространение:
- Меньшее время вывода приложения на рынок.
- Быстрая интеграция новых функций с существующим функционалом.
- Возможность персонализированного взаимодействия с пользователями.
- Снижение рисков при синхронизации со сторонними приложениями.
- Упрощение разработки через стандартизацию.
Что такое API?
API – это Application Programming Interface или интерфейс программирования приложений. API может существовать отдельно или входить в состав SDK.
Главная задача API – обеспечить лёгкий обмен данными между платформами, чтобы гарантировать их слаженную совместную работу, а также установить правила этого обмена. API может состоять только их технического компонента, или включать ещё и интерфейс.
Преимущества API
API даёт разработчикам много возможностей:
- Интеграция разных приложений и усиление их совместного функционала.
- Ускорение разработки с помощью автоматизации.
- Более эффективная работа приложений.
Разница между SDK и API
SDK и API – две разные системы, работающие вместе. SDK – более крупное понятие, чем API. В то время как API помогает в настройке работы приложения, SDK используют для создания приложений с нуля и задействуют API для общения с другими приложениями.
Чат в мобильном приложении с Webim Mobile SDK
Команда разработчиков Webim использует SDK и API для встраивания чата в приложения и внутренние системы клиентов. Вместе, эти технологии помогают интегрировать все требуемые клиентом опции быстрее, эффективнее, и безопаснее.
Webim Mobile SDK обеспечивает всю основную функциональность, необходимую для эффективной работы чата и операторов:
- Отправка файлов
- История диалогов
- Оценка работы оператора
- Push-уведомления
Благодаря Webim Mobile SDK, клиенты могут получить полноценный чат с своём приложении и настроить его оформление за считанные дни.
Смотрите также:
- Скорость имеет значение: как время ответа в чате влияет на продажи
- Как понять, что пора масштабировать контактный центр, и как это сделать?
- Как и зачем оценивать работу операторов клиентской службы
Источник: webim.ru