與支援即時功能的應用程式通訊
Azure 球體支援高階應用程式和支援 RTApp) (即時應用程式之間的核心通訊。 高階應用程式可以使用 applibs Application_Connect 函數,在與 RTApp 通訊時傳送和接收資料。 Application_Connect 擷取用來與 RTApp 通訊之套接的檔案描述。 當檔案描述器開啟時,您可以執行檔案上的操作,例如傳送/重寫。
IntercoreComms 範例示範如何使用高階應用程式與 MT3620 上的 RTApp 通訊。 與高階應用程式溝通 ,說明 RTApp 的程式設計考慮。
要求
使用應用程式間通訊的高層級應用程式必須包含適當的頁首檔案,並將應用程式設定新增至 應用程式資訊清單。
頁首檔案
#include <sys/socket.h>
#include <applibs/application.h>
應用程式資訊清單設定
若要與 RTApp 通訊,這兩個應用程式必須在 應用程式資訊清單中包含 AllowedApplicationConnections 功能:
- 高階應用程式必須在 AllowedApplicationConnections 功能中列出支援即時應用程式的元件識別碼。
- 支援即時功能的應用程式必須在 AllowedApplicationConnections 功能中列出高階應用程式的元件識別碼。
"AllowedApplicationConnections": [ "005180BC-402F-4CB3-A662-72937DBCDE47" ]
合作夥伴應用程式
當您將應用程式載入 Azure 球體裝置時,Azure 球體部署工具預設會刪除所有現有的應用程式。 若要避免在您開發一對互相通訊的應用程式時發生這種情形,您必須將應用程式標示為 合作夥伴。 當您部署其中一個應用程式時,不會刪除其合作夥伴。 如需詳細資訊,請參閱 將應用程式標示為合作夥伴 。
開啟通訊端
在與 RTApp 通訊之前,您必須先撥打 Application_Connect函數 來開啟通訊端座。 此函數通話傳回的檔案描述器是用來在通訊端座上執行傳送/複選作業。
傳送資料
您可以撥打 POSIX 傳送 () 函數,將訊息傳送到 RTApp。 郵件大小上限為 1 KB。
接收資料
您可以透過呼叫 POSIX recv () 函數,從 RTApp 接收訊息。
關閉套接線
若要關閉套接,請呼叫 POSIX 關閉 () 函數。