2016-07-05 96 views
0

Apple拒絕了我的應用iOS應用,我一直試圖在過去兩週內在商店中獲得此應用。iOS應用拒絕 - 確保您的應用支持IPv6網絡

該應用程序需要一個模擬賬戶的IP,端口,賬號,客戶端號碼和賬戶密鑰。我用這些信息爲蘋果創建了幾個賬戶,但我一直被拒絕。

起初,這是由於UIBackgroundModes的位置,我需要更改爲ios 9並添加免責聲明。

我讓蘋果開發人員檢查所有的信息以獲得應用程序的訪問權限。他們再次拒絕了該應用程序,注意:請注意,應用程序在IPv6網絡上進行審查。請確保您的應用程序支持IPv6網絡,因爲需要IPv6兼容性。

我目前使用reachability 2.2來監視設備的狀態。這對於IPv4網絡下的所有測試都是完美的。

雖然有一個新版本reachability 3.0表示它完全支持IPv6。我不確定可達性是否是最新的,因爲它們仍然使用AF_INET而不是AF_INET6,這在文檔中概述。蘋果也刪除了對於本地WiFi的可用性,但我的應用包含它並監視IN_LINKLOCALNETNUM。

如果可能的話,我該如何在iMac上設置IPv6網絡?該應用程序使用IP地址(例如199.56.42.21)初始化與服務器的連接。我還沒有IPv6網絡,所以我嘗試使用我的iMac從 set up a local IPv6 Wi-Fi network using your Mac設置IPv6連接。問題是我的iMac在代理(使用以太網)後面運行,並且外部網絡在WiFi上並且在設置指南上說不通過WiFi

+0

這不是一個編程問題,真的。這是網絡配置。 –

+0

基本上你需要確保你已經在你的項目中更新了所有的'NSULRConnection'到'NSURLSession',這幾乎是歡樂的第一步。 – holex

回答

1

剛剛註冊任何CDN網站像cloudFlare和您的應用程序將被批准下一次不需要將整個轉移站點到任何其他服務器。這是獲得應用商店批准的最簡單方法。

0

互聯網協議版本6(IPv6)是互聯網協議(IP)的最新版本,它是爲網絡上的計算機提供識別和定位系統並通過互聯網路由流量的通信協議。

因特網連接的用戶,設備和應用程序的數量正在快速增長,因此原始版本的Internet協議(IPv4)的可用地址池正在迅速耗盡。 IPv4使用32位地址,並且可以支持直接連接到互聯網的43億設備。替換協議稱爲IPv6,使用128位地址並提供約三百四十萬億。

如今,Apple拒絕應用程序,因爲應用程序應該支持IPv6網絡。在我們的環境中,我們也遇到了與應用程序相同的情況,我們發現了這個問題的解決方案之一。大多數應用程序不需要任何更改,因爲IPv6已經被NSURLSession和CFNetwork API支持。如果您的應用程序使用IPv4特定的API或硬編碼的IP地址,則需要進行一些更改。

Apple還建議不要長期使用IP地址Literals,並確保您未將點表示法中的IPv4地址字面值傳遞給API,例如getaddrinfo和SCNetworkReachabilityCreateWithName。相反,我們可以使用高級網絡框架和地址無關的API版本,例如getaddrinfo和getnameinfo,並傳遞它們的主機名或完全限定的域名(FQDN)。如果您正在使用AFNetworking Library,請確保將它更新到3.x以上的版本,因爲它們似乎已經更新了少量的內容。我們要做的AFNetworking庫的一些變化類AFNetworkReachabilityManager

+ (instancetype)sharedManager { 
static AFNetworkReachabilityManager *_sharedManager = nil; 
static dispatch_once_t onceToken; 
dispatch_once(&onceToken, ^{ 
struct sockaddr_in address; 
bzero(&address, sizeof(address)); 
address.sin_len = sizeof(address); 
address.sin_family = AF_INET6; //Change AF_INET TO AF_INET6 
_sharedManager = [self managerForAddress:&address]; 
}); 
return _sharedManager; 
} 

我們需要作出上述模塊中的一些變化對我們的應用程序,並添加到庫中。完成此操作後,我們可以通過在MAC中啓用Internet共享選項來測試應用程序的IPv6。

測試IPv6 DNS64/NAT64兼容性 首先,我們需要確保Mac通過Wi-Fi連接到互聯網。導航到系統首選項並選擇共享選項,並確保在選擇共享選項之前需要按住選項鍵。選擇Internet共享,然後選擇創建NAT64網絡複選框。現在我們需要選擇提供互聯網連接的網絡接口,如以太網,Wi-Fi,藍牙PAN。

我在這裏選擇Wi-Fi共享互聯網連接並配置Wi-Fi網絡選項。一旦配置了Wi-Fi,然後啓用互聯網共享選項。

一旦我們選擇互聯網共享,它會要求提示開始共享設備的互聯網訪問。

現在IOS設備已連接到共享網絡,我們可以檢查該應用是否在該網絡上工作。

+0

http://stackoverflow.com/q/43028924/285594 - 我已經做到了,但仍然拒絕? – YumYumYum

相關問題