V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
fanhaipeng0403
V2EX  ›  iDev

求助, AppStore 审核被拒多次,审核人员无法进入应用。

  •  
  •   fanhaipeng0403 · 2 天前 · 3739 次点击
    1 。 我们的应用已经上线,不是每次审核都会遇到这个网络问题,但最近更新后, 审核人员总是无法登录应用

    2 。后台日志显示,审核人员似乎可以通过 socket 连接到服务器,但服务器无法再次连接到客户端。

    time="2024-11-15T04:00:01+08:00" level=error msg="Error reading next available message: read tcp 172.23.141.234:8080->17.222.114.240:50300: use of closed network connection"
    time="2024-11-15T04:00:35+08:00" level=error msg="Error reading next available message: read tcp 172.23.141.234:8080->17.222.114.240:50301: use of closed network connection"
    time="2024-11-15T04:01:05+08:00" level=error msg="Error reading next available message: read tcp 172.23.141.234:8080->17.222.114.240:50302: use of closed network connection"
    time="2024-11-15T04:01:35+08:00" level=error msg="Error reading next available message: read tcp 172.23.141.234:8080->17.222.114.240:50303: use of closed network connection"


    3 。 我们的服务器位于美国,应用也有美国用户,其他用户从未出现过这个问题,只有在审核过程中才会出现网络问题。

    4. 在论坛上我发现有人遇到类似的问题,这个帖子:
    https://forums.developer.apple.com/forums/thread/692893
    第 1 条附言  ·  2 天前
    tcp 端口之前用到 3250 ,后来改的 8080
    32 条回复    2024-11-15 18:47:26 +08:00
    fanhaipeng0403
        1
    fanhaipeng0403  
    OP
       2 天前
    求助,报酬 200 。
    zengxs
        2
    zengxs  
       2 天前
    端口是自定义协议吗,还是 http ?
    jiahailiang22
        3
    jiahailiang22  
       2 天前
    增加游客模式,免登录预览部分内容
    fanhaipeng0403
        4
    fanhaipeng0403  
    OP
       2 天前
    @zengxs

    是自定义的协议,socket 连接的
    后端用到这个 https://github.com/topfreegames/pitaya 这个游戏框架
    fanhaipeng0403
        5
    fanhaipeng0403  
    OP
       2 天前
    @jiahailiang22 可以是可以。。。感觉工作量有点大啊。。。是款小游戏。
    iOCZS
        6
    iOCZS  
       2 天前
    有心跳包吗?
    zengxs
        7
    zengxs  
       2 天前
    看了下这个框架的文档,他在握手的时候有可能会返回类似 http 格式的内容
    https://pitaya.readthedocs.io/en/latest/handshake-validators.html

    这个有可能会被苹果识别为 HTTP ,苹果应该是禁止使用明文 HTTP 协议传输数据的
    你可以看看是不是这个原因导致的。

    如果是这个原因的话,我看这个框架除了 tcp 还支持 websocket ,可以考虑 tcp 连不上时 fallback 到 websocket ( on https )。
    kepenj
        8
    kepenj  
       2 天前
    美国地区有些运营商的蜂窝网络默认会关闭 443 端口,走这个端口的请求就会莫名挂掉。wifi 好像没有这方面的问题。
    kepenj
        9
    kepenj  
       2 天前   ❤️ 1
    堡垒机/登录服换个端口试一下。
    fanhaipeng0403
        10
    fanhaipeng0403  
    OP
       2 天前
    @iOCZS tcp socket 一直连接部成功,请求能到达服务器,服务器不能连接到客户端了,所有有的这个日志? time="2024-11-15T04:00:01+08:00" level=error msg="Error reading next available message: read tcp 172.23.141.234:8080->17.222.114.240:50300: use of closed network connection"


    心跳包,得连接上之后,才会有把。
    xuecan
        11
    xuecan  
       2 天前
    17.222.114.240 这是你们服务器 ip ? 怎么是个家宽
    ETiV
        12
    ETiV  
       2 天前 via iPhone
    你这个需要自己诊断,在服务器上开 tcpdump ,过滤 17.0.0.0/8 的 IP 段,拿保存下来的结果看

    如果不想 tcpdump 就尝试换个 region ,或者云厂商?核心是换一个针对 Apple 审核人员到服务器的路由

    或者找云厂商的支持服务…让他们 debug
    fanhaipeng0403
        13
    fanhaipeng0403  
    OP
       2 天前
    @xuecan 是苹果审核人员的 ip
    fanhaipeng0403
        14
    fanhaipeng0403  
    OP
       2 天前
    @zengxs 感谢你的回复。这好像是个解决的方向。。。不过为啥首次审核的时候,可以进入应用,之后就大概率不行了。。。
    头大。
    aiqinxuancai
        15
    aiqinxuancai  
       2 天前
    你确定你们的美国用户正常?你自己开美国代理连连试试
    fanhaipeng0403
        16
    fanhaipeng0403  
    OP
       2 天前
    @aiqinxuancai 确定的。。我本地 vpn 开美国节点,也没问题
    fanhaipeng0403
        17
    fanhaipeng0403  
    OP
       2 天前
    服务器位于阿里云美国节点
    processzzp
        18
    processzzp  
       2 天前
    @xuecan 你这是什么 IP 库也太不准了,整个 17.0.0.0/8 都是苹果公司的 IP ,怎么能识别成家宽
    zengxs
        19
    zengxs  
       2 天前
    @fanhaipeng0403

    我看那个框架文档也不是完全的使用 HTTP 协议,可能前面没有触发 HTTP 格式的响应吧,后面触发一次就有可能被他们识别为明文 HTTP 中断连接
    aiqinxuancai
        20
    aiqinxuancai  
       2 天前
    想办法把审核员的设备上的 App 日志捞出来看看吧
    xuecan
        21
    xuecan  
       2 天前
    @processzzp #18 确实 写的 apple 但显示家宽
    fanhaipeng0403
        22
    fanhaipeng0403  
    OP
       2 天前
    @kepenj 我也有人说是端口的问题。 我将 tcp 端口 3250 改为了 8080 , 还是不行。。
    okakuyang
        23
    okakuyang  
       2 天前
    它们是挂 vpn 的,有没有影响
    fanhaipeng0403
        24
    fanhaipeng0403  
    OP
       2 天前
    @okakuyang 我本地也挂 vpn 测试没问题的。。。现在问题是无法复现问题。。。只能提审复现。。哪敢轻易提审 。。。
    humbass
        25
    humbass  
       2 天前   ❤️ 1
    TCP 尽量走标准端口,UDP 随便。

    否则很容易遇到各方面的防火墙重置,包括不限于客户端本身的防火墙、路由的防火墙、机构的防火墙等等。

    比如说:TX 的 QQ 服务器,除了 UDP 之外,其他辅助服务都在 443 、80


    你们开发 socket 的兄弟要是月薪超过 15000 ,赶紧让他滚,请我来。
    fanhaipeng0403
        26
    fanhaipeng0403  
    OP
       2 天前
    @humbass 用的 8080 接口。可以么。应该用哪些啊。。
    fanhaipeng0403
        27
    fanhaipeng0403  
    OP
       2 天前
    @humbass 我们改成 80 试试,可以的话,加微信请你喝☕️
    humbass
        28
    humbass  
       2 天前 via Android   ❤️ 1
    最好 SSL 443
    kepenj
        29
    kepenj  
       2 天前
    @fanhaipeng0403 我们之前也是碰到了美国地区有些用户蜂窝死活连不上我们登录服,最后找的 Applovin 那边开发帮忙看了下,才知道美国那边有些运营商有这类端口限制。
    fanhaipeng0403
        30
    fanhaipeng0403  
    OP
       2 天前
    @kepenj 后来你们用的哪些端口,80,443 这些?
    bli22ard
        31
    bli22ard  
       2 天前
    如果是 tcp ,然后应用层自定义协议,一般情况下, 和端口关系不大。可以排查一下,应用层协议本身是否存在问题,弱网环境会不会有问题。另外,就是检查网络防火墙,是不是有什么阻断规则,误判了苹果的审核 ip 。
    kepenj
        32
    kepenj  
       2 天前
    @fanhaipeng0403 因为看着你现在遇到的问题现象和我们之前有点类似,实在没招了你们可以尝试一下。我们是 Server 小伙伴改掉了 80 和 443 端口,美国那边测试就通了。我们之前的现象就是除了美国蜂窝网络玩家,其他国家都没发现有问题。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2882 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 14:34 · PVG 22:34 · LAX 06:34 · JFK 09:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.