Moodle Mobile Customization
Moodle Mobile can be customized in different ways:
- Changing the app appearance for your site.
- Creating a set of remote plugins in order to add additional functionalities to the app.
- Creating a custom application (with your custom name and icon) based on the Moodle Mobile code.
The first two options does not require to compile or build your custom application, the third one requires to compile and publish your custom app in the stores.
Changing the app appearance for your site
The Mobile app can retrieve your custom styles from your Moodle site. Since is an HTML5 app, you can apply safely CSS3 styles.
In your Moodle installation go to Plugins / Web services / Mobile and enter in the mobilecssurl field a valid URL pointing to a CSS file containing your custom styles (theme).
The CSS should be placed inside your Moodle installation (in your custom theme or inside a local plugin)
Once the user is logged in the app, there is a periodical process that retrieves your remote CSS files for applying your custom styles into the app.
Notice that on the first time a user opens the app, he will see the default "orange" style. Your custom styles will be applied once the user has added a site in the app.
Notice also that styles comes from a site, there is no way for changing the initial Add site / Manage account pages styles.
See Moodle Mobile Themes for additional information.
Remote plugins will be available in Moodle 3.0, Moodle Mobile 2 (MM2) is going to be able to pull app plugins (AngularJS modules) from the remote site and lazy load them into the app. This will happen every time a user login into a site (or the remote site information is refreshed).
Creating a custom application
There are two options for building the app, aka compile it to different devices:
Phonegap Build is an online service that let you to build the app automatically for different platforms. The main advantage is that simplify a lot the process of building.
You just put your www/ folder in a github account and Phonegaps automatically build the app for different platforms pulling your github code.
Notice that the free version is for open repositories, but you can use the non-free version for private repositories.
In order to build your app using Phonegap Build you need to place an special config.xml at the www/ folder, see the config.xml file for Moodle Mobile 2 (Please, note that this file is different from the one created by Ionic in the app root folder), please, follow the tutorial mentioned in Moodle Mobile custom apps to view all the steps required for building using Phonegap Build service.
You can build also using the Ionic CLI tools, see: http://ionicframework.com/docs/cli/run.html