Debugging a mobile app
Different solutions are available to debug a mobile app.
Debugging a mobile app in development mode
$ export FGLSERVER=device-ip-address
$ fglrun -d main.42m
For more details, see Starting fglrun in debug mode.
AUI protocol debugging
With app running on a server or on the device, it is possible to show AUI protocol exchanges in the console running the program on the server, by setting the FGLGUIDEBUG environment variable to 1. When this variable is set, you can watch user interface events that occur during program execution and how they are treated by the runtime system.
To set the FGLGUIDEBUG environment variable for an app running on the device, use an
FGLPROFILE fglrun.environment
entry. The output can be inspected
with the program logs as described later in this section.
For more details, see FGLGUIDEBUG.
AUI protocol logging in development mode
--start-guilog
and --run-guilog
options of fglrun:
$ fglrun --start-guilog=case1.log
The AUI protocol log file produced by the --start-guilog
option can
then be shared for analysis.
For more details, see Front-end protocol logging.
Debugging a mobile app running on the device
When executing the mobile app on a device, and if the app has been created with debug mode, it is possible to establish a connection to the runtime system executing on the mobile device, by using the fgldb command line tool.
On iOS devices, after installing the app, you need to enable the debug port in the app settings, otherwise the app will not listen to the debug port.
For example:
$ fgldb -m 192.168.1.23:6400
108 DISPLAY ARRAY contlist TO sr.*
(fgldb)
This way you can debug an app running on a device, by using the source code located on the server where the fgldb command is executed.
For more details, see Debugging on a mobile device.
Building mobile apps in debug mode
- For Android:
The gmabuildtool provides the
--mode debug
option, to create a debug version of the APK.For more details, see Building Android apps with Genero.
- For iOS:
The gmibuildtool provides the
--mode debug
option, to create a debug version of the IPA. The certificate defined in the provisioning profile must be a development certificate.After installing the debug version of the app on your iOS device, you need to enable the debug port in the app settings.
For more details, see Building iOS apps with Genero.
Browse the AUI tree created on the mobile front-end side
The content of the Abstract User Interface tree created on the mobile front-end side can be inspected from a web browser, when the app has been created with debug mode, or in development mode by executing the app on a server and displaying on the device.
http://device-ip-address:6480 (or 6400)
For more details, see Inspecting the AUI tree of a front-end.
Viewing embedded app program logs
The program logs of an app running on a device can be viewed in a browser, if the app was created in debug mode. VM messages (runtime errors, standard output and standard error) are available. This feature is not available if the app is built in release mode.
http://device-ip-address:6480 (or 6400)
A menu will then appear in the web page, where you can choose the VM output to be inspected.
Debugging a WEBCOMPONENT HTML/JavaScript
The HTML content and JavaScript code can be debugged on GMA and GMI mobile devices.
For more details, see Debugging a web component.