『壹』 如何實現android和伺服器的長連接
轉載 這種功能實際上就是數據同步,同時要考慮手機本身、電量、網路流量等等限制因素,所以通常在移動端上有一下兩個解決方案:
1.一種是定時去server查詢數據,通常是使用HTTP協議來訪問web伺服器,稱Polling(輪詢);
2.還有一種是移動端和伺服器建立長連接,使用XMPP長連接,稱Push(推送)。
從耗費的電量、流量和數據延遲性各方面來說,Push有明顯的優勢。但是使用Push的缺點是:
對於客戶端:實現和維護相對成本高,在移動無線網路下維護長連接,相對有一些技術上的開發難度。
對於伺服器:如何實現多核並發,cpu作業調度,數量龐大的長連接並發維護等技術,仍存在開發難點。
在講述Push方案的原理前,我們先了解一下移動無線網路的特點。
移動無線網路的特點:
因為 IP v4 的 IP 量有限,運營商分配給手機終端的 IP 是運營商內網的 IP,手機要連接 Internet,就需要通過運營商的網關做一個網路地址轉換(Network Address Translation,NAT)。簡單的說運營商的網關需要維護一個外網 IP、埠到內網 IP、埠的對應關系,以確保內網的手機可以跟 Internet 的伺服器通訊
GGSN(Gateway GPRS
Support Node 網關GPRS支持結點)模塊就實現了NAT功能。
因為大部分移動無線網路運營商都是為了減少網關的NAT映射表的負荷,所以如果發現鏈路中有一段時間沒有數據通訊時,會刪除其對應表,造成鏈路中斷。(關於NAT的作用及其原理可以查看我的另一篇博文:關於使用UDP(TCP)跨區域網,NAT穿透的心得)
Push在Android平台上長連接的實現:
既然我們知道我們移動端要和Internet進行通信,必須通過運營商的網關,所以,為了不讓NAT映射表失效,我們需要定時向Internet發送數據,因為只是為了不然NAT映射表失效,所以只需發送長度為0的數據即可。
這時候就要用到定時器,在android系統上,定時器通常有一下兩種:
1.java.util.Timer
2.android.app.AlarmManager
分析:
Timer:可以按照計劃或者時間周期來執行相關的任務。但是Timer需要用WakeLock來讓CPU保持喚醒狀態,才能保證任務的執行,這樣子會消耗大量流量;當CPU處於休眠的時候,就不能喚醒執行任務,所以應用於移動端明顯是不合適。
AlarmManager:AlarmManager類是屬於android系統封裝好來管理RTC模塊的管理類。這里就涉及到RTC模塊,要更好地了解兩者的區別,就要明白兩者真正的區別。
RTC(Real- Time Clock)實時鬧鍾在一個嵌入式系統中,通常採用RTC
來提供可靠的系統時間,包括時分秒和年月日等;而且要求在系統處於關機狀態下它也能夠正常工作(通常採用後備電池供電),它的外圍也不需要太多的輔助電路,典型的就是只需要一個高精度的32.768KHz
晶體和電阻電容等。(如果對這方面感興趣,可以自己查閱相關資料,這里就說個大概)
好了,回來正題。所以,AlarmManager又稱全局定時鬧鍾。這意味著,當我用使用AlarmManager來定時執行任務,CPU可以正常地休眠,只有在執行任務是,才喚醒CPU,這個過程是很短時間的。
下面簡單來說明其使用:
1.類似於Timer功能:
//獲得鬧鍾管理器
AlarmManager
am = (AlarmManager)getSystemService(ALARM_SERVICE);
//設置任務執行計劃
am.setRepeating(AlarmManager.ELAPSED_REALTIME, firstTime, 5*1000,
sender);//從firstTime才開始執行,每隔5秒再執行
2.實現全局定時功能:
//獲得鬧鍾管理器
AlarmManager
am = (AlarmManager)getSystemService(ALARM_SERVICE);
//設置任務執行計劃
am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstTime,
5*1000, sender);//從firstTime才開始執行,每隔5秒再執行
總結:在android客戶端使用Push推送時,應該使用AlarmManager來實現心跳功能,使其真正實現長連接。
『貳』 蘋果手機怎麼連接到伺服器
蘋果手機連接到伺服器的方法:
1、首先點擊桌面上的「設置」圖標進入設置選項。
『叄』 手機怎樣連接伺服器
尊敬的三星用戶您好:建議您嘗試以下步驟操作:1、檢查SIM卡是否開通GPRS上網業務或被臨時關閉。使用手機數據上網功能,電話卡需開通數據流量上網業務。您可以聯系電話卡當地的網路供應商,開通數據流量上網業務。2、檢查「移動數據」開關是否開啟。用手指向下滑動屏幕頂簾,向左滑動快捷欄,把「移動數據」點為綠色。3、重置上網參數。在待機模式下,選擇待機畫面-應用程序-設置-移動網路-點擊接入點名稱-菜單-重置為默設置-設置完成後,重啟手機即可進行上網。4、請您更換其他電話卡嘗試5、也可以換個時間段或網路環境再嘗試。6、備份手機數據(電話簿、簡訊、圖片等),將手機恢復出廠設置若故障依舊,建議您將手機送至就近的三星服務中心進行檢測維修具體服務中心查詢請訪問:/support/ServiceLocations.asp三星企業知道,為您提供優質的解決方案,用心解答您的問題,希望能夠得到您的滿意評價。
『肆』 怎樣連接手機互聯網伺服器
1、依次選擇「開始」、「設置」、「連接」,進入連接設置菜單
2、選擇「代理伺服器」,右軟鍵點「菜單」,選擇「添加」,按照下面的內容填充項目:
描述:www
連接方:WAP網路
連接到:Internet
代理伺服器:10.0.0.172:80
類型:HTTP
其它項目都留空,然後按「完成」返回代理伺服器設置菜單
3、再次右軟鍵點「菜單」,選擇「添加」,按照下面的內容填充項目:
描述:wap
連接方:WAP網路
連接到:安全WAP網路
代理伺服器:10.0.0.172:9201
類型:WAP
其它項目依然留空,按兩次「完成」返回連接設置菜單
4、選擇「GPRS」,右軟鍵點「菜單」,選擇「添加」,按照下面的內容填充項目:
描述:CMWAP
連接到:WAP網路
訪問點:cmwap
其它項目留空,按兩次「完成」返回連接菜單
5、右軟鍵點「菜單」,選擇「高級」,將「Internet」連接、「WAP連接」、「安全WAP連接」這三個項目都選擇成「CMWAP」
6、右軟鍵點「菜單」,選擇「選項」,將「我的台式計算機連接到」選擇為「安全WAP網路」,然後一直按「完成」,直到退出設置界面。
好了,現在你所有的網路連接就都已經是通過cmwap接入了。
建議大家把除了上面創建之外的項目全都刪掉,避免有程序會調用其它cmnet接入的連接,因為cmwap不限量包月的套餐使用cmnet接入的話都是要另外計算流量進行收費的,如果在不知情的情況下使用了cmnet接入,可能會造成非常大的損失。
用這樣的方法通過cmwap接入訪問互聯網,因為通過了代理伺服器,所以並不能實現所有的網路功能,比如基於mms協議的網路電視就是無法播放的,但是有很多網路內容提供商都提供了能夠支持cmwap接入的網路應用,比如GGTV網路電視和移動QQ等等,可以讓我們充分利用GPRS的移動便利,享受隨時隨地的網路沖浪
『伍』 手機連接伺服器出現問題怎麼辦
首先確定你已經連接上網路,能獲取到IP地址。正常的話,打開瀏覽器,隨便輸入一個網址就會彈出一個認證頁面的。不能打開登陸頁面的原因有很多,先排除是你電腦自身原因,如瀏覽器問題,瀏覽器緩存是否沒有及時清理?是否收藏了登陸頁面?收藏了的話建議刪掉。
之前手機上網 正常,且手機沒有更改過其它設置,那麼出現此提示應該是網路問題。請嘗試以下操作:
1. 進入移動網路設置--接入點名稱--按功能鍵--重置為默認設置
2. 檢查網路狀態,尋找網路信號較好的區域再次登錄人人軟體。
3. 進入個人手機設置,嘗試清除上網緩存數據。有部分原因是手機的緩存數據過多影響網路速度造成連接伺服器超時。
4、如果還是無法連接到伺服器,那就是當地網路問題,請稍後再試。
『陸』 手機伺服器怎麼連接
蘋果手機伺服器連接的具體方法如下:
首先點擊桌面上的「設置」圖標進入設置選項。
『柒』 手機無法連接到伺服器怎麼解決
手機連接不到伺服器請嘗試以下操作:1.進入移動網路設置--接入點名稱--按功能鍵--重置為默認設置2.檢查網路狀態,尋找網路信號較好的區域再次登錄。3.進入個人手機設置,嘗試清除上網緩存數據。有部分原因是手機的緩存數據過多影響網路速度造成連接伺服器超時。4、如果還是無法連接到伺服器,那就是當地網路問題,請稍後再試。了解更多服務優惠點擊下方的「官方網址」客服218為你解答。
『捌』 手機如何與FTP伺服器建立連接
可以使用相關的工具來實現手機與FTP伺服器建立連接功能:
1、安卓系統可以下載:Android FTP
2、蘋果手機就下載:FTP精靈
補充:FTP是就是文件傳輸協議的縮寫,是網路上傳輸文件的基本和簡潔的方式,他要求有一個服務端和一個客戶端,提供文件存放的地方就是服務端,進行文件操作的是客戶端。所以,你如果要用FTP的方式聯通電腦和手機,前提必須保證他們在一個網路上,例如都是可以連接到網聯網的,或者在同一個區域網內部。