Problems getting TestFlight to work with the Monotouch app

I am trying to get TestFlight to work with my MonoTouch application (Monotouch 5, IOS5) and have not found any MonoTouch documentation for TestFlight.

Here is what I have tried so far.

  • Loaded TestFlight bindings from https://github.com/mono/monotouch-bindings/tree/master/TestFlight - after adding this as a reference, it seemed like TestFlight methods did not actually display at all, so I was looking for a different set of bindings.

  • Loaded TestFlight bindings from https://github.com/ayoung/monotouch-testflight . The built-in monotouch-testflight.dll using Make, copied it to the project and added it to the "Links" - this time all the TestFlight methods were visible.

  • Added libTestFlight.a to the Lib folder in my MonoTouch project with setting BuildAction to Nothing. (I also have RedLaser).

  • In ayoung, I turned on the LLVM compiler (with ARMv7); ayoung claims it is necessary. In the project settings → iPhone. Build my extra mtouch arguments:

    -cxx -nosymbolstrip -nostrip -gcc_flags "-lgcc_eh -framework SystemConfiguration -framework CFNetwork -framework CoreVideo -framework CoreMedia -framework AVFoundation -framework OpenGLES -framework Security -L $ {ProjectDir} / Lib -ltestblight"

Note. The application worked successfully with RedLaser before TestFlight was added to the project.

Here -lgcc_eh corresponds to ayoung - I could not find out what it is or what it is for. Maybe I should have gcc_eh.dll (?), But I'm not AFAIK, and I don't know where I could find such a thing.

  • In Main.cs, I added

    using TestFlightSdk;

and In FinishedLaunching I added

TestFlight.TakeOff( "(downloaded team token is here)" ); 
  • Compiled and installed without errors (Release | iPhone).

  • When I now run the application on the device, it will immediately exit without any diagnostics that I can detect.

  • The application is also immediately issued if compiled into Debug | iPhone In this case, however, if I disable LLVM, despite the tight restrictions, then in the application output I see the following:

    TestFlight: session started TestFlight: Crash handlers installed Topic started: Topic started: TestFlight: command token recognized TestFlight: end of TestFlight session: communication with TestFlight is currently disconnected, check details in your log earlier

Perhaps this is due to the fact that I have not yet downloaded the application .ipa file in TestFlight? (However, the application starts in this case.)

  • I am trying to figure out how to generate a .ipa file. The TestFlight documentation shows how to do this with Xcode, but my application has code-only without .xib, so the option seems to be missing? The TestFlight documentation also shows how to generate .ipa from a .app file. My problem here is how do I put my hands on the .app file to build the device?

Any help in solving these problems would be greatly appreciated.

+2
iphone binding testflight ipa
Oct 23 2018-11-11T00:
source share
4 answers

-lgcc_eh is required to enable the GCC library for exception handling, which is often required if you are linking to C ++ libraries.

You also have many -framework options that don't seem necessary (MonoTouch already adds them), but that won't be the cause of your problem. If you are interested in what mtouch to use / provide at compile time, you can add "-v -v -v" to the "extra touch arguments" in your project options (and look at the build output).

As for the main issue, I think this is because TestFlight handlers are not (currently) compatible with MonoTouch (5.0). Exception Handling MonoTouch already provides its own fault handlers (for example, for NullReferenceException ), and adding other handlers should be done with caution (how and when to do this is very important). This is probably why the current bindings in monotouch bindings do not include all the functions available in testflight.

I suggest you open an error report on bugzilla.xamarin.com, and you will receive updates by email about the progress (and you know exactly when this feature will become available).

ps try to break your problems into several questions (stack overflow), you will most likely get answers this way, since not everyone knows all the answers to every question that you may have :-)

+5
Oct 23 2018-11-11T00:
source share

I went astray completely. Finally, MonoTouch documentation was found that describes the built-in support for TestFlight:

http://docs.xamarin.com/ios/tutorials/TestFlight_Support

Let's try it, it should solve the problem.

+2
Oct 23 2018-11-23T00:
source share

Distributing trug testflightapp is a different matter than using testflightsdk in your application.

The first is a click on the upload to testflight button in the menu.

The second is the inclusion of the actual sdk. In the past few days, they (xamarin) have released new sdk testflight bindings. This does not allow you to change the mtouch settings. Therefore, it is much easier to enable.

Personally, I really like testflight sdk ... Helps me to better (let) test my applications.

+2
Nov 13 '11 at 12:51
source share

From the sound of this Xamarin bug report , it seems that even if you get a native TestFlight SDK library that works with MonoTouch bindings or bundle it yourself, you will still have a problem in that TestFlight will not properly handle any NullReference exceptions and will simply crash the application when it encounters it. This makes the whole point of the TestFlight SDK pointless until a) MonoTouch is reconstructed to solve this problem or b) TestFlight releases the Mono managed library.

Don't get me wrong, I REALLY want to be able to use the TestFlight SDK with MonoTouch. I hit my head against the wall, trying to get it to work all day. Something fails when I call the TestFlight.TakeOff ("MyKey") method. The control returns from the method, but then it ends briefly after that ... about 1 second after it is called. Weird

If someone else earns it, I would like to hear about your experience. Thank.

0
Apr 24 2018-12-21T00:
source share



All Articles