2016-08-18 34 views
2

我已經開發了鈦工作室的應用程序,並且都工作正常。至少在我的國家(葡萄牙)。當我將我的應用程序發送給Apple時,他們無法連接到具有我的應用程序所需信息的服務器。我的國家的應用程序連接問題

這是我如何連接到服務器:

function getData() { 

    if (Ti.Network.networkType == Ti.Network.NETWORK_NONE) { 
     var dialog = Ti.UI.createAlertDialog({ 
      ok : 'OK' 
     }); 
     dialog.message = 'Check your Internet connection.'; 
     dialog.title = 'Alert'; 
     dialog.show(); 

    } else { 
     var client = Ti.Network.createHTTPClient({ 
      onload : function(e) { 
      }, 
      onerror : function(e) { 
      }, 
      timeout : 30000 
     }); 
     client.open("POST", 'http://approteiros.virtualweb.pt/site/ajax.php'); 
     client.send({ 
      action : 'my_action' 
     }); 
    } 
} 

,如果它的工作在葡萄牙,但在美國沒有工作可以採取什麼問題嗎?

我TiApp.xml文件:

<key>NSAppTransportSecurity</key> 
      <dict> 
       <key>NSExceptionDomains</key> 
       <dict> 
       <key>NSIncludesSubdomains</key> 
       <true/> 
       <key>NSExceptionAllowsInsecureHTTPLoads</key> 
       <true/> 
       <key>NSExceptionRequiresForwardSecrecy</key> 
       <true/> 
       <key>NSExceptionMinimumTLSVersion</key> 
       <string>TLSv1.2</string> 
       <key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key> 
       <false/> 
       <key>NSThirdPartyExceptionRequiresForwardSecrecy</key> 
       <true/> 
       <key>NSThirdPartyExceptionMinimumTLSVersion</key> 
       <string>TLSv1.2</string> 
       <key>NSRequiresCertificateTransparency</key> 
      <false/> 
     </dict> 
    </dict> 

我已經加入這個我的XML文件。

回答

1

從美國東海岸,ping到你的服務器大概是328ms,給你一個參考點。

  1. 蘋果的建議已經從過去的建議改變爲檢查連接,然後撥打電話。現在他們建議發起呼叫,如果失敗,從那裏調整。
  2. 您的服務器也未安裝IPv6。蘋果公司在6月份開始要求APPS在僅有ipv6的網絡上運行,並期望它們最終也能開始測試服務器。
  3. 還預計蘋果通過的2016年

所以最終需要HTTPS到API服務器的連接,與所有這一切,讓我們開始用#2。您的代碼段顯示的是非ssl網址,您是否向tiapp.xml的<ios>部分添加了應用程序傳輸安全性異常?

大量客戶使用AWS進行託管。即使在整個美國,從一個海岸連接到另一個海岸也許與連接到自己的海岸有不同的經歷。

在我們的一些應用程序中,我們添加了2個功能。

  1. 設置一個基準超時,我們默認爲10000ms(你的30000ms應該比綽綽有餘)。在每次XHR超時時,我們將其增加5000.

  2. 我們做的第二件事是根據設備報告的時區偏移量來調整默認值。因此,如果服務器是基於美國的,對於美國大陸的5個可能的時區(爲夏令時增加一個),我們設置合理的超時時間10000,然後對於所有其他時間,我們以25000開始。

+0

我已更新我的代碼。那是我在這個問題上加了你的意思嗎「所以,讓我們從#2開始。你的代碼片段顯示了一個非SSL鏈接,你是否在tiapp.xml的部分中添加了應用程序傳輸安全異常? ? –

相關問題