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

33 天前
 fanhaipeng0403
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
4395 次点击
所在节点    iDev
32 条回复
fanhaipeng0403
33 天前
求助,报酬 200 。
zengxs
33 天前
端口是自定义协议吗,还是 http ?
jiahailiang22
33 天前
增加游客模式,免登录预览部分内容
fanhaipeng0403
33 天前
@zengxs

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

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

如果是这个原因的话,我看这个框架除了 tcp 还支持 websocket ,可以考虑 tcp 连不上时 fallback 到 websocket ( on https )。
kepenj
33 天前
美国地区有些运营商的蜂窝网络默认会关闭 443 端口,走这个端口的请求就会莫名挂掉。wifi 好像没有这方面的问题。
kepenj
33 天前
堡垒机/登录服换个端口试一下。
fanhaipeng0403
33 天前
@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
33 天前
17.222.114.240 这是你们服务器 ip ? 怎么是个家宽
ETiV
33 天前
你这个需要自己诊断,在服务器上开 tcpdump ,过滤 17.0.0.0/8 的 IP 段,拿保存下来的结果看

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

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

我看那个框架文档也不是完全的使用 HTTP 协议,可能前面没有触发 HTTP 格式的响应吧,后面触发一次就有可能被他们识别为明文 HTTP 中断连接
aiqinxuancai
33 天前
想办法把审核员的设备上的 App 日志捞出来看看吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1089728

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX