0
我目前將通知從我的桌面C#WinForms應用程序推送到iOS設備。是否有可能採取相同的方式?例如從iOS設備發送通知到WinForms應用程序。使用Azure通知集線器推送到C#WinForms應用程序
如果不可能,讓iOS應用程序執行某些任務的WinForms應用程序知道的最佳實踐是什麼。
謝謝!
我目前將通知從我的桌面C#WinForms應用程序推送到iOS設備。是否有可能採取相同的方式?例如從iOS設備發送通知到WinForms應用程序。使用Azure通知集線器推送到C#WinForms應用程序
如果不可能,讓iOS應用程序執行某些任務的WinForms應用程序知道的最佳實踐是什麼。
謝謝!
Azure通知中心通常用於移動設備。對於Winforms應用程序,我建議你使用Azure Service Bus主題服務。
在您的IOS方面,您可以將消息發送到主題。
var connectionString = "<your connection string>";
var topicName = "<your topic name>";
var client = TopicClient.CreateFromConnectionString(connectionString, topicName);
var message = new BrokeredMessage("This is a test message!");
client.Send(message);
在Winform方面,您可以訂閱主題並接收來自主題的消息。收到消息後,您可以在Winform應用程序中執行任何您想要的操作。
var connectionString = "<your connection string>";
var topicName = "<your topic name>";
var client = SubscriptionClient.CreateFromConnectionString(connectionString, topicName, "<your subscription name>");
client.OnMessage(message =>
{
Console.WriteLine(String.Format("Message body: {0}", message.GetBody<String>()));
Console.WriteLine(String.Format("Message id: {0}", message.MessageId));
});
謝謝你的回覆!這正是我正在尋找的! Howerver,我有一個小問題。發送消息需要很長時間(〜10秒)。我相信有一個問題,但我無法解決它。我正在使用你發佈的代碼。 – Omer
更新:我能夠將服務總線包添加到Xamarin.iOS項目。但是,它沒有任何作用。 TopicClient不被識別並且不接受任何使用語句。有任何想法嗎? – Omer
Azure服務SDK不適用於Xamarin.iOS項目。請改用REST API。 [使用REST API發送消息](https://docs.microsoft.com/en-us/rest/api/servicebus/send-message-to-queue) – Amor