2012-03-01 65 views
8

我正在評估SignalR技術在我們的新產品中的應用(針對廣泛受衆的移動Web應用,以及其他需要在某些頁面上進行實時聊天的應用)。手機上的SignalR?

我已經按照the guide創建一個非常基本的聊天演示。 然後,我在我的IIS上部署了演示,並開始與自己聊天。 所有客戶都在同一個WiFi網絡上。

桌面瀏覽器的工作或多或少確定。

然而,在Safari瀏覽器的iOS 4.2和IE上WP7.10 - 他們都吸。 當我按下「發佈」按鈕時,有時沒有發生任何事情。 有時傳出的郵件發送到桌面的Firefox,但沒有傳入的消息。

也許我錯過了一些明顯的東西?也許我需要jQuery的移動,而不是正常的?也許我應該調整IIS/web.config /任何內容,並且即使通過蹩腳的移動互聯網,SignalR也會蓬勃發展並開始無懈可擊地工作?

還是意味着,由於它甚至不同時從Web服務器單跳無線網絡中工作,我應該拋出SignalR路程,只是寫一些JavaScript輪詢新的消息的JSON終點?

在此先感謝!

+1

我也遇到了這個問題。對任何答案都非常感興趣。 (有沒有訂閱按鈕,所以我不需要留言) – tgmdbm 2012-03-04 10:43:56

+1

@tgmdbm你可以按照RSS的問題。這個問題的RSS源是:http://stackoverflow.com/feeds/question/9509124 – 2012-04-07 11:45:01

回答

6

中找到支持瀏覽器的很好的圖表我一直在開發帶phonegap(意味着使用Safari瀏覽器)和SignalR for Android和iPhone的應用程序。我遇到的主要問題是iOS 6.x,因爲SignalR沒有與默認配置連接。我找到了一個解決方法,我已經解釋了它here。讓我知道你是否覺得它有用。

此代碼將模擬連接,檢查郵件,斷開連接並等待5秒來解決iOS的問題。

JS中添加

$.connection.hub.start({ transport: 'longPolling' }).done(function (myHubConnection) { }); 

在的Application_Start()添加

GlobalHost.Configuration.ConnectionTimeout = TimeSpan.FromSeconds(1); 
Microsoft.AspNet.SignalR.Transports.LongPollingTransport.LongPollDelay = 5000; 
RouteTable.Routes.MapHubs(); 
+2

請將您的解決方法複製到此郵件中。 – 2013-05-23 12:11:36

+0

完成。我已使用代碼編輯帖子。 – 2013-05-23 16:39:56

+0

乾杯,現在它適合+1。 :) – 2013-05-23 17:46:42