Unity 关闭App, 再启动App, 闪退

本文探讨了App在启动时频繁闪退的问题,主要表现为Unity给出的'Timeoutwhiletryingdetachingprimarywindow'错误。提供了两种可能的解决方案,包括强制结束进程和处理退出事件,帮助开发者定位并修复此问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述:

App关闭后,再次点击启动App,出现闪退的情况。

原因分析:

错误提示 Unity: Timeout while trying detaching primary window.

解决方案:

System.Diagnostics.Process.GetCurrentProcess().Kill();

或者

 public void OnExitBtnClick()
 {
    System.Diagnostics.Process.GetCurrentProcess().Exited += new EventHandler(exep_Exited);
    System.Diagnostics.Process.GetCurrentProcess().CloseMainWindow();
    System.Diagnostics.Process.GetCurrentProcess().Close();
 }
   
 void exep_Exited(object sender, EventArgs e)
 {
     Debug.LogError("CloseMainWindow");
 }

### 如何使用 Unity 开发的应用程序提交到 Apple App Store #### 准备工作 为了成功将基于 Unity 的应用程序发布至 Apple App Store,开发者需确保操作系统、Unity 版本以及 Xcode 都满足最低配置需求。对于苹果而言,在2023年4月之后,任何新提交的应用都必须通过版本不低于14的Xcode进行编译[^1]。 #### 构建项目 在准备构建 iOS 平台的游戏前,应先设置好 Player Settings 中的各项参数,包括但不限于 Bundle Identifier 和 Version Number 。完成这些基础设定后,转到 Build Setting ,选择 iOS 作为目标平台并点击 Switch Platform 来切换当前编辑器环境为iOS模式。随后,按下 Build And Run 按钮来启动实际设备上的真机测试流程;这一步骤会自动生成一个可以被导入给定路径下的 Xcode 工程文件夹[^3]。 #### 使用 Xcode 编辑工程 打开由 Unity 导出后的 `.xcworkspace` 文件进入 Xcode 环境继续完善应用细节。此时应该确认已安装最新版 Xcode (至少是 v14.2),因为只有这样才能保证最终产物能够符合官方审核标准。另外还需注意的是,如果打算利用某些特定功能,则可能还需要额外调整一些选项或添加权限描述字符串等操作。 #### 应用签名与打包 当一切就绪以后就可以着手处理代码签署事宜了。按照惯例,应当准备好对应的 Provisioning Profile 及 Signing Certificate 后再执行如下命令来进行整个 APP 的签名: ```bash codesign -o runtime -f --deep -s '3rd Party Mac Developer Application: YOUR_DEVELOPER_NAME' --entitlements "YOURGAME.entitlements" "/path/to/YOURGAME.app" ``` 这里需要注意替换 `YOUR_DEVELOPER_NAME`, `"YOURGAME"` 和 `/path/to/` 成对应的实际值[^2]。 #### 提交审核 最后一步就是把已经妥善封装好的 IPA 文件传送到 iTunes Connect 或者直接借助于 Xcode 自带工具——Application Loader 完成上传动作。一旦收到回执邮件表示接收成功即意味着该环节结束等待下一步指示即可。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值