【问题标题】:App started to crash应用程序开始崩溃
【发布时间】:2013-05-21 08:23:59
【问题描述】:

将我的更新发送到 App Store 后,从 App Store 下载该应用程序时崩溃,但通过 Xamarin Studio 进行调试工作正常。

但现在当我尝试在我的设备上发布/调试时,它开始崩溃并出现此错误:

2013-05-21 10:20:30.933 nytLectio[10969:c07] Could not register the assembly 'MBProgressHUD': MonoTouch.MonoTouchException: Cannot register two managed types ('MBProgressHUD.MTMBProgressHUD' and 'AlexTouch.MBProgressHUD.MBProgressHUD') with the same native name ('MBProgressHUD').
  at MonoTouch.Registrar.Registrar.RegisterType (System.Type type, System.Collections.Generic.List`1 exceptions) [0x00000] in <filename unknown>:0 
  at MonoTouch.Registrar.Registrar.RegisterAssembly (System.Reflection.Assembly assembly) [0x00000] in <filename unknown>:0 

我认为这就是导致崩溃的原因,但我不知道如何修复它,这让我感到困惑,因为它可以在模拟器中进行调试和发布,但不能在我的设备上使用。

【问题讨论】:

    标签: c# ios xamarin.ios crash


    【解决方案1】:

    您好,您正在使用 2 个绑定 MBProgressHUDMBProgressHUD.MTMBProgressHUDAlexTouch.MBProgressHUD.MBProgressHUD 的库,请只使用一个,我建议使用 Xamarin Components Store 上的一个,这是 MBProgressHUD 的更新版本,您可以安全地替换您当前正在使用的。

    顺便说一句,我是AlexTouch.MBProgressHUD.MBProgressHUD C# Binding 的作者,我可以告诉你它最近没有更新,所以我鼓励你使用Components Store 上的那个。感谢 Jonathan George 的精彩图书馆。

    希望对你有帮助

    亚历克斯

    【讨论】:

    • 我实际上正在使用 Components Store 中的那个,因为我现在正在运行 beta 版本,AlexTouch 绑定在那个上不起作用。无论如何,感谢 C# 绑定! :)
    • 是的,只是不要同时使用这两个库:)
    【解决方案2】:

    除了@dalexsoto 建议(仅使用库的一个版本),您还需要了解为什么这对您有用。

    但现在当我尝试在我的设备上发布/调试时,它开始崩溃并出现此错误:

    我的最佳猜测是您在原始调试/测试和应用程序提交到 AppStore 之间更新了 Xamarin.iOS 版本。

    这就是您现在在调试/发布设备版本上遇到相同问题的原因。较新的版本报告了一个错误情况,即两个 不同 类型以相同的名称注册(最终行为未定义,因为我们无法预测注册顺序)。

    如果这在您的本地 Mac 上仍然有效(在 Debug/Release 构建中),那么我的第二个最佳猜测将是您的 Debug 构建选项strong>(和/或 Release)具有与您的 AppStore 配置不同的选项。这意味着您可能不会测试要运送给客户的产品。

    在这种情况下,您应该检查您的选项、参数(如果需要,还可以查看构建日志)以确保它们仅以正常(预期)方式(例如创建调试)不同(例如调试构建)符号与否)。

    【讨论】:

    • 我确实更新到了 beta 版本,因为我想使用 Parse。但是我会尝试降级到稳定版本并告诉你它是否改变了
    • Xamarin.iOS 的最新版本(包括 beta 版和下一个,尚未发布,稳定版)包括一个更新的注册器,可以检测到比早期版本更多的问题(包括重复)。
    【解决方案3】:

    您是否尝试过更改错误躲避到的类 AlexTouch.MBProgressHUD.MBProgressHUD 的名称?

    【讨论】:

      【解决方案4】:

      问题解决了..

      由于 Xamarin 的最新版本

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-10-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-07-06
        • 2020-07-16
        • 1970-01-01
        相关资源
        最近更新 更多