Bil*_*llF 2 iphone binding xamarin.ios ipa testflight
我很难让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,将其复制到项目并添加到References - 这次TestFlight方法都可见.
将libTestFlight.a添加到MonoTouch项目中的Lib文件夹,并将BuildAction设置为Nothing.(我也有RedLaser).
Per ayoung,我启用了LLVM编译器(使用ARMv7); ayoung说它是必需的.在项目选项 - > iPhone构建我的其他mtouch参数是:
-cxx -nosymbolstrip -nostrip -gcc_flags"-lgcc_eh -framework SystemConfiguration -framework CFNetwork -framework CoreVideo -framework CoreMedia -framework AVFoundation -framework OpenGLES -framework Security -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)" );
Run Code Online (Sandbox Code Playgroud)
编译并安装没有错误(发布| iPhone).
当我现在在设备上运行应用程序时,它立即退出,没有我能发现的诊断.
如果编译为Debug | iPhone,该应用程序也会立即退出.但是,在这种情况下,如果我关闭LLVM尽管存在严格的限制,那么在应用程序输出中我会看到以下内容:
TestFlight:已启动会话TestFlight:已安装崩溃处理程序线程已启动:已启动线程:TestFlight:已识别团队令牌TestFlight:会话结束TestFlight:当前已禁用与TestFlight的通信,请在日志中查看详细信息
这可能是因为我还没有将应用程序的.ipa文件上传到TestFlight?(但是,在这种情况下,该应用确实会启动.)
对这些问题的任何帮助都将非常感激.
-lgcc_eh需要包含异常处理GCC库,如果您链接到C++库,通常需要它.
您还有许多看起来不需要的框架选项(MonoTouch已经添加了它们) - 但这不会导致您的问题.如果您对编译时mtouch使用/提供的内容感到好奇,那么可以在项目选项中的"附加触摸参数"中添加"-v -v -v"(并查看构建输出).
至于主要问题,我认为这与TestFlight处理程序与MonoTouch(5.0)不兼容(目前)的事实有关.MonoTouch异常处理已经提供了它自己的崩溃处理程序(例如for NullReferenceException),并且需要谨慎地添加其他处理程序(如何以及何时执行它非常重要).这可能是为什么单触式绑定中的当前绑定不包括testflight中可用的每个功能.
我建议你在bugzilla.xamarin.com上打开一个bug报告,你会得到关于进度的电子邮件更新(并确切知道该功能何时可用).
ps尝试将你的问题分解成几个(堆栈溢出)问题,你更有可能以这种方式得到答案,因为不是每个人都知道你可能拥有的每个问题的所有答案:-)
| 归档时间: |
|
| 查看次数: |
2734 次 |
| 最近记录: |