C# 在版本生成中找不到情节提要

C# 在版本生成中找不到情节提要,c#,ios,xamarin.ios,xamarin,app-store,C#,Ios,Xamarin.ios,Xamarin,App Store,我的问题是我的调试和特别构建工作正常。只有AppStore构建不起作用,这就是它被拒绝的原因。如果我从存档中提取ipa文件(我在应用商店发布时使用了该文件),则应用程序在启动时会崩溃。苹果公司提供的ips日志文件明确指出 在捆绑包NSBundle xxx中找不到名为“MainstryBoard\u iPhone”的故事板 在我的On环境中,将生成以下符号化日志文件 Exception Type: EXC_BAD_ACCESS (SIGABRT) Exception Subtype: KERN_

我的问题是我的调试和特别构建工作正常。只有AppStore构建不起作用,这就是它被拒绝的原因。如果我从存档中提取ipa文件(我在应用商店发布时使用了该文件),则应用程序在启动时会崩溃。苹果公司提供的ips日志文件明确指出

在捆绑包NSBundle xxx中找不到名为“MainstryBoard\u iPhone”的故事板

在我的On环境中,将生成以下符号化日志文件

Exception Type:  EXC_BAD_ACCESS (SIGABRT)
Exception Subtype: KERN_INVALID_ADDRESS at 0xfffffffc
Triggered by Thread:  0

Last Exception Backtrace:
0   CoreFoundation                  0x2c8355f2 __exceptionPreprocess + 122
1   libobjc.A.dylib                 0x3a0a7c72 objc_exception_throw + 34
2   UIKit                           0x3022d2f8 +[UIStoryboard storyboardWithName:bundle:] + 680
所以问题是故事板的加载。在我的例子中,我需要访问所使用的故事板实例。因此,我在Build>iOS应用程序中将iPhone和iPad的主界面设置为空。相反,我在我的应用程序委托中使用以下代码:

if (UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone) {
    Storyboard = UIStoryboard.FromName ("MainStoryboard_iPhone", null);
} else {
    Storyboard = UIStoryboard.FromName ("MainStoryboard_iPad", null);
}
在app delegate中,我有一个变量,以后可以通过
AppDelegate.Storyboard.instanceeviewcontroller(“xxx”)
访问该变量

我认为问题在于这种方法。但是,当我在主界面中设置情节提要时,如何访问当前加载的情节提要

首先,我认为这与类似,但我有以下设置:

<!-- TODO: check for duplicate items -->
<Target Name="_CopyContentToBundle" DependsOnTargets="_CollectBundleResources;_GenerateBundleName"
    Inputs = "@(_BundleResourceWithLogicalName)"
    Outputs = "@(_BundleResourceWithLogicalName -> '$(_AppBundlePath)%(LogicalName)')" >

似乎需要进行干净的构建。我已经做了以下工作:

  • 构建>清除所有
  • 生成>清除AppName
  • 删除bin和obj文件夹
  • 生成>创建新AppName
然后是其余部分(创建存档、验证存档、提交到应用商店)。希望它现在能起作用

这就是我试图重现这个问题的方式:

从Xcode的管理器中导出ipa文件(保存以用于临时部署)。当设备未连接时,已将ipa文件放入iTunes!然后连接设备,安装并应用更改

为我自己评论

在提交到应用商店之前测试应用商店版本