近期 Unity 提交苹果审核被拒的问题
游戏提交苹果审核,被打回。在 bugly 上没有查到崩溃信息,苹果给了 crash 日志也说明。
拒绝原因如下:
Your app crashed on iPad or iPhone running iOS 11.2.5 connected to an IPv6 network during our review.
logs 日志也看不出什么,初看像是 IPv6的问题,实际上与IPV6无关。
之后同事帮忙搜索文章,有一篇文章说是 AB 的加载方式,不要用 WWW。我们游戏里没有用过这个方法,先排除掉。后来在知乎上找到一篇文章:
依据文章提供的线索,找到 DisplayManager.mm 文件 中的 – (id)init 方法,将监听 AirPlay 的事件注释掉即可。
苹果审核环境的模拟:
一台 iPhone 或 iPad + 一台 iMac。 Mac 上先安装 AirServer(选择试用版本 http://www.airserver.com/Download)

然后移动设备的 wifi 连接 iMac 的共享网络。这样移动设备启用 屏幕镜像(AirPlay)就可以模拟进行测试了。
如果需要开启IPV6,只需要在 Mac 的设置 –> 共享,点击共享的时候,按住 Option 就会出现 IPv6的选项,移动设备连接成功后,可以从 DNS 上看出是否为 IPV6。
IPV6启用的具体步骤和方法,可参考这篇文章:Mac电脑搭建IPv6测试环境>>
移动设备镜像到 iMac 上,如果用数据线,不要求是同一网络,如果不使用数据线,则必须处于同一 Wifi 下。
如果后期预防此问题?
因为 DisplayManager.mm 是 Unity 打包的时候才会生成的,所以只需要替换模板即可。
我根据在 Windows 下的路径

在 Mac 的应用程序中,找到 Unity/PlaybvackEngines/iOSSupport/Trampoline/Classes/Unity/DisplayManager.mm 找到相应的位置,注释掉代码,保存。之后打出来的包就彻底解决掉这个问题了。
上面这个 bug 属性 Unity 官方的 bug,2018.1.0b1版本修复掉了,其它版本我不太确定,可以根据上面的路径自己去排查一下。
近期 Unity 提交苹果审核被拒的问题的更多相关文章
- iOS项目之苹果审核被拒
解读: 3.2 其他业务模式问题下方列表并非详尽清单,并且您提交的 App 可能会导致我们的政策有所更改或更新,但这里有一些额外的应做事宜和勿做事宜需要您谨记在心: 可以接受 (i)在您的 App 中 ...
- 苹果审核被拒,解析奔溃日志.txt转crash文件
1. 桌面新建一个文件夹,用来存放crash相关的东西.取名crash 2.下载苹果官方邮件里给的后缀名为 .txt 的被拒附件(这三个txt格式文件为苹果返回的崩溃日志文件),把这三个文件放在刚新建 ...
- 苹果审核被拒,Guideline 1.1.6 - Safety - Objectionable Content;Guideline 3.1.1 - Business - Payments - In-App Purchase
Guideline 1.1.6 - Safety - Objectionable Content Thank you for your resubmission. We noticed that yo ...
- 【详解】苹果AppStore审核被拒,原因终逃不过这些!
近日,相信很多开发者都留意到了: 苹果针对应用标题的审核确有明显的变严趋势!我们在<惊!苹果再次加强审核力度,众App纷纷止步应用标题>中也对该现象进行了详细的分析,并给出了相应的解决方案 ...
- 苹果审核之遇到IPV6问题被拒的解决方法
情景: 等待苹果审核上线时,发现因为IPV6被拒了.这是悲剧,以下是苹果审核给我的理由: We discovered one or more bugs on Wi-Fi connected to an ...
- 苹果App Store提交app审核时EULA(终端用户软件使用条款)的注意事项等政策解读
写在前面,今天是2014年10月14日,以下内容可能会随着时间的推进而失效,请注意时效性 当在App Store提交app审核的时候,苹果通常会要求开发者提供一个EULA,苹果默认提供了一个,地址: ...
- App提交Appstore审核流程
原文: https://www.douban.com/note/461351420/ 这是一个app提交到iTunces Connect被拒了4次摸索出来的经验,说多了都是泪,先让我擦擦...好了,话 ...
- APP审核被拒,原因总结
今天早上,突然看到上周末提交的APP,审核被拒了.原以为是因为IPV6审核没过,后来查看原因后发现是,app的3张展示图里面,有些内容显示的有:测试XX等字眼.苹果说提交的版本不能是含有 test,t ...
- 审核被拒(后台定位,autio,voip,发表朋友圈)
APP上线审核被拒那些事(一) 2.3 - Apps that do not perform as advertised by the developer will be rejected 2.3 D ...
随机推荐
- python全栈开发day86-CRM增删改查 分页
知识点梳理: 1.分页器保存搜索条件 2.ORM批量插入数据bulk_create 批量创建model实例,在用bulk_create 一次插入数据库 3.自定义不同表的不同字段ModelForm错误 ...
- 064 SparkStream与kafka的集成,主要是编程
这里面包含了如何在kafka+sparkStreaming集成后的开发,也包含了一部分的优化. 一:说明 1.官网 指导网址:http://spark.apache.org/docs/1.6.1/st ...
- Shiro笔记(二)Shiro集成SpringMVC的环境配置
0.pom文件引入 <!-- SECURITY begin --> <dependency> <groupId>org.apache.shiro</group ...
- ESP8266基础篇
ESP8266基础篇 模块刚到如图所示~2016-01-26 后三张是手机APP的截图,前面是两个ESP8266的硬件模块,当然大家不应定要买两个,自己焊锡一个USB转TTL的串口就行了,有了下面的底 ...
- 初窥Java之四
一.条件判断之if判断 语法格式:if(结果为布尔类型的结果值){ 功能执行语句; }else if(结果为布尔类型的结果值){ 功能执行语句; } ....{ }else{ 功能执行语句: } 注意 ...
- Unity容器的简单AOP与DI的应用Demo(基于asp.net mvc框架)
转发请注明出处:https://home.cnblogs.com/u/zhiyong-ITNote/ 整个Demo是基于Controller-Service-Repository架构设计的,每一层之间 ...
- UVA 220 Othello
题意:输入n,代表次数,每次输入8*8的棋盘,处理3种命令:①L:打印所有合法操作,②M:放棋子,③Q:打印棋盘然后退出. 思路:①用字符数组存棋盘,整型数组存合法位置. ②查找的方法:当前玩家为cu ...
- Maya插件开发的几种方式归纳
目前仅仅是一时兴趣,想要探索一下Maya插件开发的具体方法,但因为没有时间所以只起了个头 首先来到Autodesk Developer Network http://usa.autodesk.com/ ...
- python基础一 ------如何获取多个字典相同的键
需求: 足球赛第一场进去统计 {"A":3,"B":2,"C":1}足球赛第二场进去统计 {"A":3," ...
- C#中的集合之ArryList
List泛型集合 集合是OOP中的一个重要概念,C#中对集合的全面支持更是该语言的精华之一. 为什么要用泛型集合? 在C# 2.0之前,主要可以通过两种方式实现集合: a.使用ArrayList 直接 ...