Thank you in advance for the help guys.
1: no carthage support
2: Android: the mobile agent library classes and webrequest library classes (e.g. apache, okhttp) must not be obfuscated otherwise they cannot be instrumented
iOS: runtime checksums might cause troubles for methods swizzled be the mobile agent
3: that question cannot be answered in general as it heavily depends on the architecture o the app (how many viewControllers/Activities, how many web requests). Android instrumentation happens at build time so there is no instrumentation overhead during runtime, just the additional code added by instrumentation and agent communication sending the data. For iOS instrumentation happens on Application startup therefore most noticeable agent impact is during App startup and heavily depends on amount of viewControllers that need to be instrumented. Rest of runtime overhead is similar to Android
In general max agent runtime overhead is communicated with 3%
4: depends on the app and what the customer wants to se
5: this can be done with manual instrumentation by defining the start end and of the process
6: Android: stacktrace,
iOS full crash report (including stacktraces of running threads, loaded libraries, device information
7: IP adress is recorded on webserver agent/java agent that receives the mobile beacon - this is not directly recorded by the mobile agent (I'm not sure if that can be prohibited)
The mobile agent reports ist own version, OS version, device Manufacturer, device model, app version, RAM size, free RAM, CPU type, screen size, orientation, battery level, and carrier. Those cannot be turned off. Only GPS location reporting can be turned off, but GPS is only captured by teh mobile agent if already captured by the mobile app.
8: you can track everything with manual instrumentation. it allows to create actions (duration) or events (string and other basic values) or errors that are reported to the AppMon server
Hope this helps,