1.5版本Creator热更新域名解析出错

按照21点来做的集成,android log如下,

06-15 10:54:17.751 18477-18497/? D/cocos2d-x debug info: Success to load scene: db://assets/resources/scenes/update.fire
06-15 10:54:17.779 18477-18497/? D/cocos2d-x debug info: Storage path for remote asset : /data/data/com.vivigames.scmj/files/tiantianqipai-asset
06-15 10:54:17.788 18477-18497/? D/cocos2d-x debug info: Local manifest URL : res/raw-assets/project.manifest
06-15 10:54:17.800 18477-18497/? D/cocos2d-x: find in flash memory dirPath(/data/data/com.vivigames.scmj/files/tiantianqipai-asset/)
06-15 10:54:17.800 18477-18497/? D/cocos2d-x: find in flash memory dirPath(/data/data/com.vivigames.scmj/files/tiantianqipai-asset_temp/)
06-15 10:54:17.800 18477-18497/? D/cocos2d-x debug info: Max concurrent tasks count have been limited to 2
06-15 10:54:25.595 18477-18477/? D/Cocos2dxDownloader: onFailure(code:0 headers:null throwable:cz.msebera.android.httpclient.client.ClientProtocolException id:1
06-15 10:54:25.604 18477-18497/? D/cocos2d-x: AssetsManagerEx : Fail to download version file, step skipped
06-15 10:54:33.321 18477-18477/? D/Cocos2dxDownloader: onFailure(code:0 headers:null throwable:cz.msebera.android.httpclient.client.ClientProtocolException id:2
06-15 10:54:33.332 18477-18497/? D/cocos2d-x debug info: Code: 1
06-15 10:54:33.332 18477-18497/? D/cocos2d-x debug info: Fail to download manifest file, hot update skipped.

然后我把log展开之后,发现,
06-15 10:54:25.557 18477-18517/? I/System.out: [CDS][DNS] getAllByNameImpl netId = 0
06-15 10:54:25.557 18477-18517/? D/libc-netbsd: [getaddrinfo]: hostname=115.28.80.123; servname=(null); cache_mode=(null), netid=0; mark=0
06-15 10:54:25.557 18477-18517/? D/libc-netbsd: [getaddrinfo]: ai_addrlen=0; ai_canonname=(null); ai_flags=4; ai_family=0
06-15 10:54:25.558 192-610/? D/FrameworkListener: dispatchCommand data = (gethostbyaddr 115.28.80.123 4 2 0)
06-15 10:54:25.557 18477-18497/? D/Surface: Surface::setBuffersDimensions(this=0xf49ce500,w=1024,h=600)
06-15 10:54:25.559 192-18526/? D/SocketClient: SocketClient sendData done: 222
06-15 10:54:25.560 192-18526/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.560 192-18526/? D/SocketClient: SocketClient sendData done: mx1.aomenbestbetting.com
06-15 10:54:25.560 18477-18517/? I/System.out: [CDS][DNS] getAllByNameImpl netId = 0
06-15 10:54:25.560 192-18526/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.560 18477-18517/? D/libc-netbsd: [getaddrinfo]: hostname=mx1.aomenbestbetting.com; servname=(null); cache_mode=(null), netid=0; mark=0
06-15 10:54:25.560 192-18526/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.560 18477-18517/? D/libc-netbsd: [getaddrinfo]: ai_addrlen=0; ai_canonname=(null); ai_flags=4; ai_family=0
06-15 10:54:25.560 192-18526/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.561 18477-18517/? I/System.out: [CDS]rx timeout:45000
06-15 10:54:25.560 192-18526/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.561 18477-18517/? I/System.out: [socket][5] connection mx1.aomenbestbetting.com/61.183.1.186:80;LocalPort=46542(45000)
06-15 10:54:25.560 192-18526/? D/SocketClient: SocketClient sendData done: sP{
06-15 10:54:25.561 18477-18517/? I/System.out: [CDS]connect[mx1.aomenbestbetting.com/61.183.1.186:80] tm:45
06-15 10:54:25.560 192-18526/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.562 18477-18517/? D/Posix: [Posix_connect Debug]Process com.vivigames.scmj :80
06-15 10:54:25.561 192-613/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.573 18477-18497/? D/Surface: Surface::setBuffersDimensions(this=0xf49ce500,w=1024,h=600)
06-15 10:54:25.582 18477-18517/? I/System.out: [socket][/172.28.14.98:46542] connected
06-15 10:54:25.582 18477-18517/? I/System.out: [CDS]rx timeout:45000
06-15 10:54:25.590 18477-18517/? I/System.out: [CDS]close[46542]
06-15 10:54:25.590 18477-18497/? D/Surface: Surface::setBuffersDimensions(this=0xf49ce500,w=1024,h=600)
06-15 10:54:25.591 18477-18517/? W/System.err: cz.msebera.android.httpclient.client.ClientProtocolException
06-15 10:54:25.591 18477-18517/? W/System.err: at cz.msebera.android.httpclient.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:882)
06-15 10:54:25.591 18477-18517/? W/System.err: at cz.msebera.android.httpclient.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
06-15 10:54:25.591 18477-18517/? W/System.err: at com.loopj.android.http.AsyncHttpRequest.makeRequest(AsyncHttpRequest.java:146)
06-15 10:54:25.591 18477-18517/? W/System.err: at com.loopj.android.http.AsyncHttpRequest.makeRequestWithRetries(AsyncHttpRequest.java:177)
06-15 10:54:25.592 18477-18517/? W/System.err: at com.loopj.android.http.AsyncHttpRequest.run(AsyncHttpRequest.java:106)
06-15 10:54:25.592 18477-18517/? W/System.err: at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422)
06-15 10:54:25.592 18477-18517/? W/System.err: at java.util.concurrent.FutureTask.run(FutureTask.java:237)
06-15 10:54:25.592 18477-18517/? W/System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
06-15 10:54:25.592 18477-18517/? W/System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
06-15 10:54:25.592 18477-18517/? W/System.err: at java.lang.Thread.run(Thread.java:818)
06-15 10:54:25.592 18477-18517/? W/System.err: Caused by: cz.msebera.android.httpclient.ProtocolException: Invalid redirect URI: http://search.114so.cn/search_web.html?id=168��
06-15 10:54:25.593 18477-18517/? W/System.err: at com.loopj.android.http.MyRedirectHandler.getLocationURI(MyRedirectHandler.java:100)
06-15 10:54:25.593 18477-18517/? W/System.err: at cz.msebera.android.httpclient.impl.client.DefaultRedirectStrategyAdaptor.getRedirect(DefaultRedirectStrategyAdaptor.java:68)
06-15 10:54:25.593 18477-18517/? W/System.err: at cz.msebera.android.httpclient.impl.client.DefaultRequestDirector.handleResponse(DefaultRequestDirector.java:1084)
06-15 10:54:25.593 18477-18517/? W/System.err: at cz.msebera.android.httpclient.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:515)
06-15 10:54:25.593 18477-18517/? W/System.err: at cz.msebera.android.httpclient.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:879)
06-15 10:54:25.593 18477-18517/? W/System.err: … 9 more
06-15 10:54:25.593 18477-18517/? W/System.err: Caused by: java.net.URISyntaxException: Illegal character in query at index 45: http://search.114so.cn/search_web.html?id=168��
06-15 10:54:25.594 18477-18517/? W/System.err: at libcore.net.UriCodec.validate(UriCodec.java:63)
06-15 10:54:25.594 18477-18517/? W/System.err: at java.net.URI.parseURI(URI.java:406)
06-15 10:54:25.594 18477-18517/? W/System.err: at java.net.URI.(URI.java:204)
06-15 10:54:25.594 18477-18517/? W/System.err: at com.loopj.android.http.MyRedirectHandler.getLocationURI(MyRedirectHandler.java:98)
06-15 10:54:25.594 18477-18517/? W/System.err: … 13 more
06-15 10:54:25.595 18477-18477/? D/Cocos2dxDownloader: onFailure(code:0 headers:null throwable:cz.msebera.android.httpclient.client.ClientProtocolException id:1
06-15 10:54:25.604 18477-18497/? D/cocos2d-x: AssetsManagerEx : Fail to download version file, step skipped
06-15 10:54:25.604 18477-18477/? D/libc-netbsd: [getaddrinfo]: hostname=115.28.80.123; servname=(null); cache_mode=(null), netid=0; mark=0
06-15 10:54:25.604 18477-18477/? D/libc-netbsd: [getaddrinfo]: ai_addrlen=0; ai_canonname=(null); ai_flags=4; ai_family=0
06-15 10:54:25.604 18477-18477/? D/libc-netbsd: [getaddrinfo]: hostname=115.28.80.123; servname=(null); cache_mode=(null), netid=0; mark=0
06-15 10:54:25.604 18477-18477/? D/libc-netbsd: [getaddrinfo]: ai_addrlen=0; ai_canonname=(null); ai_flags=4; ai_family=0
06-15 10:54:25.605 18477-18477/? D/libc-netbsd: [getaddrinfo]: hostname=115.28.80.123; servname=(null); cache_mode=(null), netid=0; mark=0
06-15 10:54:25.605 18477-18477/? D/libc-netbsd: [getaddrinfo]: ai_addrlen=0; ai_canonname=(null); ai_flags=4; ai_family=0
06-15 10:54:25.606 18477-18517/? I/System.out: [CDS][DNS] getAllByNameImpl netId = 0
06-15 10:54:25.606 18477-18517/? D/libc-netbsd: [getaddrinfo]: hostname=115.28.80.123; servname=(null); cache_mode=(null), netid=0; mark=0
06-15 10:54:25.606 18477-18517/? D/libc-netbsd: [getaddrinfo]: ai_addrlen=0; ai_canonname=(null); ai_flags=4; ai_family=0
06-15 10:54:25.607 18477-18497/? D/Surface: Surface::setBuffersDimensions(this=0xf49ce500,w=1024,h=600)
06-15 10:54:25.609 192-610/? D/FrameworkListener: dispatchCommand data = (gethostbyaddr 115.28.80.123 4 2 0)
06-15 10:54:25.610 192-18527/? D/SocketClient: SocketClient sendData done: 222
06-15 10:54:25.610 192-18527/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.610 18477-18517/? I/System.out: [CDS][DNS] getAllByNameImpl netId = 0
06-15 10:54:25.610 192-18527/? D/SocketClient: SocketClient sendData done: mx1.aomenbestbetting.com
06-15 10:54:25.611 18477-18517/? D/libc-netbsd: [getaddrinfo]: hostname=mx1.aomenbestbetting.com; servname=(null); cache_mode=(null), netid=0; mark=0
06-15 10:54:25.610 192-18527/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.611 18477-18517/? D/libc-netbsd: [getaddrinfo]: ai_addrlen=0; ai_canonname=(null); ai_flags=4; ai_family=0
06-15 10:54:25.610 192-18527/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.611 18477-18517/? I/System.out: [CDS]rx timeout:45000
06-15 10:54:25.610 192-18527/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.611 18477-18517/? I/System.out: [socket][6] connection mx1.aomenbestbetting.com/61.183.1.186:80;LocalPort=52826(45000)
06-15 10:54:25.610 192-18527/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.611 18477-18517/? I/System.out: [CDS]connect[mx1.aomenbestbetting.com/61.183.1.186:80] tm:45
06-15 10:54:25.610 192-18527/? D/SocketClient: SocketClient sendData done: sP{
06-15 10:54:25.610 192-18527/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.612 192-613/? D/SocketClient: SocketClient sendData done:
06-15 10:54:25.616 18477-18517/? D/Posix: [Posix_connect Debug]Process com.vivigames.scmj :80

看出问题了吗?
我的服务器是http://115.28.80.123/remote-assets/
hotupdate调用checkUpdate的时候,竟然拿IP地址去做域名解析,然后得到"mx1.aomenbestbetting.com",
然后连接失败

我搜了论坛,好几个人遇到了这种问题,都是莫名其妙的域名解析造成的,难道开发团队都没办法解决吗???

下面的帖子其实很可能是同一个问题导致,

http://forum.cocos.com/t/creator1-4-1-android-manifest/45163/4
http://forum.cocos.com/t/topic/40691/3
http://forum.cocos.com/t/fail-to-download-manifest-file-hot-update-skipped/44208/19

@nantas @panda

creator 3.6.2也遇到这个问题