App Tethering (англ. Application Tethering — зв'язування застосунків) — технологія компанії Embarcadero для зв'язування застосунків, що дозволяє взаємодіяти застосункам, які виконуються або на одному пристрої (персональному комп'ютері, смартфоні, планшеті, сервері тощо), або на віддалених пристроях[1]. Ця технологія підтримується в Delphi та C++ Builder зі складу Embarcadero RAD Studio починаючи з версії XE6.

Функціонал ред.

Використовуючи App Tethering, застосунки можуть:

  • розшукувати автоматично або вручну інші застосунки, що використовують App Tethering і виконуються як на тому ж самому пристрої, так і на інших під'єднаних пристроях
  • виконувати дії віддалено; застосунки можуть публікувати свої дії з використанням App Tethering, а інші застосунки можуть віддалено викликати будь-які з цих опублікованих дій
  • використовувати спільні стандартні дані і потоки

Принципи роботи ред.

App Tethering використовує два основних компоненти[2]:

  • TTetheringManager — в тих застосунках, що хочуть знаходити інші застосунки, підключатися до них і використовувати їх дії і дані
  • TTetheringAppProfile — для визначення дій і даних, що їх застосунок надає для використання іншим застосункам

Підключення до іншого застосунку ред.

З'єднання двох застосунків може відбуватися за двома сценаріями[3]:

  • автоматично - шляхом визначення двох застосунків, що належать до однієї групи і автоматично знаходять одне одного і паруються
  • вручну - шляхом отримання списку знайдених застосунків з наступним запитом до користувача на парування з потрібним визначеним застосунком

В App Tethering реалізована можливість парольного захисту процесу з'єднання двох застосунків, в такому випадку можливі дві схеми перевірки автентичності застосунків:

  • прозора - коли два застосунки автоматично знаходять одне одного і паруються
  • явна - введення пароля користувачем

Дії (Actions) ред.

Застосунки можуть використовувати App Tethering для виконання дій (actions), а саме[4]:

  • надавати іншим застосункам можливість виконання своїх локальних дій (публікація дій)
  • запускати віддалені дії на іншому під'єднаному застосунку (використання дій)

Спільне використання даних (Data sharing) ред.

App Tethering дозволяє використовувати спільні дані (shared data)[5]:

  • Визначати (декларувати) спільні русурси. Кожен ресурс містить в собі певне значення. Застосунок, що під'єднується, може читати це значення спільного ресурсу, а також підписуватися на подію оновлення (коли значення спільного ресурсу змінюється).
  • Надсилати дані як тимчасовий ресурс. Можна надсилати текстові рядки і потоки, що їх під'єднаний застосунок отримає як тимчасовий ресурс. Під'єднаний застосунок не може підписатися на подію оновлення тимчасового ресурсу, оскільки тимчасовий ресурс може лише надсилатися одним застосунком іншому.

Транспортні протоколи ред.

App Tethering не залежить від специфічного транспорту або протоколу. App Tethering API дозволяє створювати нові протоколи для взаємодії застосунків. В RTL вже вбудована підтримка з'єднань через Ethernet (також Wi-Fi), що дозволяє, відповідно, з'єднувати застосунки як в локальній мережі (LAN), так і на одному пристрої.

Підтримка App Tethering через Bluetooth наразі декларується як така, що знаходиться в розробці[6] (станом на квітень 2014 року, XE6).

Див. також ред.

Посилання ред.

  • Використання App Tethering. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.(англ.)
  • Простір імен System.Tethering. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.(англ.)
  • Модуль System.Tether.AppProfile. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.(англ.)
  • Модуль System.Tether.Manager. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.(англ.)
  • Модуль System.Tether.NetworkAdapter. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.(англ.)
  • Модуль System.Tether.TCPProtocol. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.(англ.)
  • Embarcadero Delphi - Офіційний сайт. Архів оригіналу за 25 червня 2013. Процитовано 30 травня 2014.(англ.)
  • Embarcadero С++ Builder - Офіційний сайт. Архів оригіналу за 25 червня 2013. Процитовано 30 травня 2014.(англ.)
  • Embarcadero RAD Studio - Офіційний сайт. Архів оригіналу за 30 травня 2014. Процитовано 30 травня 2014.(англ.)

Джерела ред.

  1. Using App Tethering. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.
  2. Adding App Tethering to Your Application. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.
  3. Connecting to Remote Applications Using App Tethering. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.
  4. Sharing and Running Actions on Remote Applications Using App Tethering. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.
  5. Sharing Data with Remote Applications Using App Tethering. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.
  6. RAD Studio XE6 New Features. Архів оригіналу за 20 квітня 2014. Процитовано 30 травня 2014.