2013-02-01 57 views
2

我想創建一個WinRT應用程序來處理來自本地/無線網絡中電話的請求。舉例來說,我在手機中已經有一個鼠標應用程序(類似於this)。我想編寫服務器應用程序,該應用程序位於處理手機中鼠標應用程序請求的PC /平板電腦上。因此,無論何時我在手機中打開鼠標應用程序,我都可以發送推送通知,以便使服務器(win 8應用程序)能夠處理來自手機應用程序的所有後續請求。它可行嗎?WinRT - 是否可以創建服務?

通常情況下,我會爲此創建一個Windows服務,但想檢查它是否可以在WinRT中使用。

+0

WinRT是一個UI概念;與任何UI應用程序一樣,它必須手動運行並持續運行以響應此類通知。 WinRT應用程序在進程間通信方面的功能有限。根據您所描述的內容,「Classic」Windows服務似乎更合適。 –

回答

0

我自己沒有測試過,但我會說這是可能的。但只要你的應用程序在前臺運行。如果您切換到其他應用程序,您的應用程序無法再進行通信,因爲應用程序已被暫停。

雖然你可以看看Windows應用程序商店中的「時間」。這是一個每秒鐘刷新應用程序瓦片的時鐘(以及作者博客)。

要連接到您的應用程序,我將測試signalR,聽說這件事的好東西:-)

+0

對不起,我應該在問題中更加清楚。問題是WinRT應用程序可能不在前臺。它甚至可能沒有運行。所以這個想法是從手機上的鼠標應用程序,我可以做一個推送通知,應該讓winRT應用程序打開並處理所有後續請求在「後臺」(例如,當用戶正在觀看電影並想要使用鼠標應用程序,winRT應用程序不應該來到前臺)。那麼我們可以在WinRT中做到這一點嗎? – Jonna

+0

這是不可能的。你可以通過推送來通知你的應用程序,但你必須手動打開它。 – jwillmer

0

是的,你可以使用StreamSocketListener類,但jwillmer說,大概只有只要你的應用程序運行前景。

+0

對不起,我應該在問題中更加清楚。問題是WinRT應用程序可能不在前臺。它甚至可能沒有運行。所以這個想法是從手機上的鼠標應用程序,我可以做一個推送通知,應該讓winRT應用程序打開並處理所有後續請求在「後臺」(例如,當用戶正在觀看電影並想要使用鼠標應用程序,winRT應用程序不應該來到前臺)。那麼我們可以在WinRT中做到這一點嗎? – Jonna

4

我想說你最好的選擇是ControlChannelTrigger。我自己並沒有使用它,但是基於它的描述,它被設計用來啓用你的場景。

允許在Windows.Networking.Sockets命名空間和其他網絡傳輸中的類元素的後臺接收實時通知。

相關問題