App Tethering
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.(англ.)
Джерела[ред. | ред. код]
- ↑ Using App Tethering. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.
- ↑ Adding App Tethering to Your Application. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.
- ↑ Connecting to Remote Applications Using App Tethering. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.
- ↑ Sharing and Running Actions on Remote Applications Using App Tethering. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.
- ↑ Sharing Data with Remote Applications Using App Tethering. Архів оригіналу за 31 травня 2014. Процитовано 30 травня 2014.
- ↑ RAD Studio XE6 New Features. Архів оригіналу за 20 квітня 2014. Процитовано 30 травня 2014.