2015-01-17 82 views
0

我已經訪問過許多博客和問題,尋找一種使用android作爲客戶端和nodejs作爲我的應用程序的服務器的方法。我想出了一個解決方案,就是使用PhoneGap之類的框架,以便它可以像本機一樣行事,但實際上並不存在。我需要使用本機android sdk並連接NodeJS服務器(使用SocketIO)來創建我的應用程序。有什麼辦法可以做到這一點?NodeJS Alternative For Android

P.S我想知道,雖然我通過GCM設置,我可以將我在我的socket.io文件中創建的IP和端口傳遞給GCM嗎?

+0

...打開一個套接字?這是Java,你不能做*。 –

+0

@DaveNewton我想知道,當我通過GCM設置時,是否可以將我在我的socket.io文件中創建的IP和端口傳遞給GCM? –

+0

我剛剛在android上運行NodeJS時發現了一些可行的替代方法:[編譯NodeJS作爲Android上的本機庫](https://stackoverflow.com/q/45459909/8295283) –

回答

0

Cordova(因此PhoneGap)允許您使用大部分硬件API。 PhoneGap現在只是某種構建服務。

Cordova網站和插件商店解釋了所有的細節。但是WebSocket只是TCP的升級協議或功能。任何更新的技術都支持它,沒有任何依賴性,但取決於您所使用的網絡。

沒有深入探究代碼here at socket.io-website,我認爲您的Cordova應用程序的初始構建是服務器的WebSocket實現。所以你已經得到了一切已經啓動。 本教程未解釋的是如何連接到服務器。但是請讀一下here

我沒有任何經驗,但Google Cloud Messaging似乎並未處於socket.io問題的範圍之內。一旦連接到套接字,您就可以向客戶端發送您想要的任何有效負載,並且可能或可能不再需要GCM。如果您需要通過GCM發送內容,請閱讀GCM node module

傳遞IPs不應該成爲一個問題,因爲你無論如何都在運行公共服務。無論如何你當然需要保護它。

+0

Cordova會適應iOS和Android上的最新設計更改?因爲當我最近處理它時,我無法控制對話框和按鈕的視圖,它使用Android 2.3上的設計 –