tags:

views:

54

answers:

1

Monotouch compiles the app into the native code. How can Apple know that the app was built using MonoTouch? Does Monotouch leaves a signature in the application?

Does Monotouch has its own libraries which could be a trace of the origin or it compiles all the code and all its .NET libraries into native code?

+1  A: 

The resulting .app package contains the application binary, your resources as well as the required additional libraries, such as:

  • montouch.dll;
  • System.dll;
  • System.Xml.dll and so on.

As such, it would be trivial for them to check if the application was built with monotouch or not - it is as simple as right clicking the package and then select "Show package contents" in Finder.

However, you need not worry about that, as Apple has just relaxed their License Agreement: http://daringfireball.net/2010/09/app_store_guidelines

alexb
I am not worried, but we do not if Apple will change its policy. You mention *.dll files, but how come DLLs when MT compiles the code into native code?
askmo
The way i see it, the .dll naming is just a convention, it does not imply that they contain managed code. I guess they could have just as well named them using .a extension or .so
alexb