我正在努力使TestFlight与我的MonoTouch应用程序(Monotouch 5,IOS5)一起使用,并且没有找到有关TestFlight的任何MonoTouch文档。

这是我到目前为止尝试过的。


https://github.com/mono/monotouch-bindings/tree/master/TestFlight下载了TestFlight绑定-将其添加为参考之后,似乎实际上根本没有公开TestFlight方法,因此我寻找了另一组绑定。
https://github.com/ayoung/monotouch-testflight下载ayoung的TestFlight绑定。使用Make构建monotouch-testflight.dll,将其复制到项目中并添加到“引用”中-这一次TestFlight方法都是可见的。
将libTestFlight.a添加到我的MonoTouch项目的Lib文件夹中,并将BuildAction设置为Nothing。 (我那里也有RedLaser)。
每天,我都启用了LLVM编译器(使用ARMv7); ayoung指出这是必需的。在项目选项-> iPhone Build中,我的其他mtouch参数是:

-cxx -nosymbolstrip -nostrip -gcc_flags“ -lgcc_eh -framework SystemConfiguration-框架CFNetwork-框架CoreVideo-框架CoreMedia-框架AVFoundation-框架OpenGLES-框架安全-L $ {ProjectDir} / Lib -ltestflight -RedLaserSDK -ObjC”


注意:在将TestFlight添加到项目之前,该应用程序可以与RedLaser正常工作。

在这里-lgcc_eh与ayoung一样-我无法找出它的用途或用途。也许我应该有一个gcc_eh.dll(?),但我没有AFAIK,而且我不知道在哪里可以找到这样的东西。


在Main.cs中,我添加了

使用TestFlightSdk;


然后在FinishedLaunching中添加了

TestFlight.TakeOff( "(downloaded team token is here)" );



编译并安装没有错误(Release | iPhone)。
现在,我在设备上运行该应用程序时,该应用程序立即退出,并且没有我可以发现的诊断信息。
如果编译为Debug | iPhone,该应用程序也会立即退出。但是,在这种情况下,如果尽管ayoung采取了严格措施,但我仍关闭LLVM,那么在Application Output中,我会看到以下内容:

TestFlight:开始的会话
TestFlight:已安装崩溃处理程序
线程已启动:
线程已启动:
TestFlight:团队令牌被识别
TestFlight:会话结束
TestFlight:与TestFlight的通信当前处于禁用状态,请在日志的前面检查详细信息


这可能是因为我尚未将应用程序的.ipa文件上传到TestFlight? (不过,在这种情况下,该应用确实会启动。)


我正在尝试找出如何生成.ipa文件。 TestFlight文档显示了如何从XCode进行此操作,但是我的应用程序仅是代码,没有.xib,因此该选项似乎已退出? TestFlight文档还显示了如何从.app文件生成.ipa。这是我的问题,如何将我的手放在设备构建的.app文件上?


在这些问题上的任何帮助将不胜感激。

最佳答案

-lgcc_eh需要包含异常处理GCC库,如果与C ++库链接,则通常需要使用-lgcc_eh。

您还有很多看起来不需要的-framework选项(MonoTouch已经添加了它们)-但这不会成为问题的原因。如果您对在编译时使用/提供什么mtouch感到好奇,则可以在项目选项的“其他touch参数”中添加“ -v -v -v”(并查看生成输出)。

至于主要问题,我认为这与以下事实有关:TestFlight处理程序(目前)与MonoTouch(5.0)不兼容。 MonoTouch异常处理已经提供了它自己的崩溃处理程序(例如用于NullReferenceException),并且添加其他处理程序需要格外小心(如何以及何时进行此操作非常重要)。这很可能就是为什么单点触控绑定中的当前绑定不包括testflight中可用的所有功能的原因。

我建议您在bugzilla.xamarin.com上打开错误报告,然后会收到有关进度的电子邮件更新(并确切了解该功能何时可用)。

ps。尝试将您的问题分解为几个(堆栈溢出)问题,因为不是每个人都知道您可能遇到的每个问题的所有答案,所以您更有可能以这种方式获得答案:-)

关于iphone - 使TestFlight与Monotouch应用配合使用时出现问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7865374/

10-13 06:12