Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Moodle Mobile 2 (Ionic 1) Customization: Difference between revisions

From MoodleDocs
No edit summary
Line 6: Line 6:
Moodle Mobile can be customized in different ways:
Moodle Mobile can be customized in different ways:
* Changing the app appearance for your site.
* Changing the app appearance for your site.
* Creating a set of remote plugins in order to add additional functionalities to the app.
* Creating a set of remote add-ons 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.
* Creating a custom application (with your custom name and icon) based on the Moodle Mobile code.


Line 27: Line 27:
See [[Moodle Mobile Themes]] for additional information.
See [[Moodle Mobile Themes]] for additional information.


== Remote plugins ==
== Remote add-ons  ==


Remote plugins will be available in Moodle 3.1, 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).
Remote add-ons are available since Moodle 3.1 and Moodle Mobile 3.1.
 
A Moodle Mobile remote add-on is the mobile app version of a Moodle plugin that will be loaded when a user accesses the site on the app.
 
Moodle Mobile remote add-ons are stored within a Moodle plugin and are downloaded and lazy-loaded by the Mobile app in every site that uses them.  
 
Remote add-ons are the best choice if you just want to support a Moodle plugin/s in the Mobile app without having to create an maintain a custom version.
 
See [[Moodle Mobile Remote add-ons]] for complete information.


== Creating a custom application ==
== Creating a custom application ==

Revision as of 17:26, 25 May 2016

Note: This page is a work-in-progress. Feedback and suggested improvements are welcome. Please join the discussion on moodle.org or use the page comments.


Overview

Moodle Mobile can be customized in different ways:

  • Changing the app appearance for your site.
  • Creating a set of remote add-ons 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 add-ons

Remote add-ons are available since Moodle 3.1 and Moodle Mobile 3.1.

A Moodle Mobile remote add-on is the mobile app version of a Moodle plugin that will be loaded when a user accesses the site on the app.

Moodle Mobile remote add-ons are stored within a Moodle plugin and are downloaded and lazy-loaded by the Mobile app in every site that uses them.

Remote add-ons are the best choice if you just want to support a Moodle plugin/s in the Mobile app without having to create an maintain a custom version.

See Moodle Mobile Remote add-ons for complete information.

Creating a custom application

See Moodle Mobile custom apps

Building

There are two options for building the app, aka compile it to different devices:

Phonegap Build

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.

Ionic CLI

You can build also using the Ionic CLI tools, see: http://ionicframework.com/docs/cli/run.html

Testing and developing

Chromium or Google Chrome browser

See Moodle Mobile development using Chrome or Chromium