The Moodle app will ONLY work with Moodle sites that have been set up to allow it. Please talk to your Moodle administrator if you have any problems connecting.
Check with your course tutor that you are correctly enrolled.
Check with your Moodle site administrator.
This could be because of interruptions in your internet connection. Wait a while and try again. If you continue to have problems, contact your Moodle site administrator.
Assignments will have a size limit which you can see. For other space limit questions, check with your Moodle site administrator.
Your Moodle site administrator can assist you in getting the app to work correctly.
Auto-login from the app is only supported in sites using Moodle 3.2 onwards. Also, for security reasons, between auto-logins you must wait 6 minutes (this should not be a problem because most of the browsers will keep your Moodle session open).
LineageOS uses a different WebView implementation not compatible vith the app. You need to install "Android System WebView" from Google Play (or via a trusted apk) and enabling it via Settings > Developer options > WebView implementation.
This may happen in old Android versions (Android < 4.4), in modern Android and iOS versions they should work fine.
Topics or weekly course format is best suited to mobile devices.
If you or an administrator have correctly enrolled them in a course, they can see it in their mobile app. If they are correctly enrolled but can still not see their course, ask them to check with your Moodle site administrator.
If you are experiencing problems when grading, please review that you are using the correct decimal separators (if the app interface is in English, you must use a period).
Vimeo protected videos should work on Moodle 3.3.4 onwards, please note that you need to enable this admin setting "Allow frame embedding" (allowframembedding admin setting). If that still doesn't work, make sure your server allows it by using this rule: X-Frame-Options "ALLOWALL"
For older versions, see this forum discussion with a workaround: https://moodle.org/mod/forum/discuss.php?d=327342
ReCaptcha doesn't work on my site
You need to enable this admin setting "Allow frame embedding" (allowframembedding admin setting). If that still doesn't work, make sure your server allows it by using this rule: X-Frame-Options "ALLOWALL"
H5P packages don't work on my site
You need to enable this admin setting "Allow frame embedding" (allowframembedding admin setting). If that still doesn't work, make sure your server allows it by using this rule: X-Frame-Options "ALLOWALL"
I use a Moodle plugin but the app says it is not supported
You should contact the plugin developer and point him to this documentation: https://docs.moodle.org/dev/Moodle_Mobile_Remote_addons where it is explained how to add support to plugins in the Mobile app.
There is a list of Moodle plugins supported by the app here: https://moodle.org/plugins/browse.php?list=award&id=6
I have problems playing SCORM packages
Please refer to Moodle app SCORM player.
My quizzes or lessons are not working offline
You need to edit the quiz or lesson activity settings and enable the "Allow lesson/quiz to be attempted offline using the mobile app" configuration option.
Maths notation is not displaying correctly in the app
The app doesn't yet support MathJax (see MOBILE-1611). Instead, the TeX notation filter should be enabled.
How can I disable text selection / copy in the app?
You can create a remote theme and add some custom CSS rules to disable it, see https://docs.moodle.org/dev/Moodle_Mobile_Themes
My images, videos or audios stop working after the first time
Please make sure the URL you're using on the media file doesn't have any redirect (e.g. http to https), always try to use the final URL. There's a bug in the library we use to download those files, it doesn't work when downloading files with redirects. We have plans to remove that library from the app, but since then please always try to use URLs without redirects.
Administrators
How can I have my site listed in the Moodle app site finder?
Please refer to our Moodle app guide for admins for instructions.
How can I debug errors in the app?
Go to the More tab and then to Settings > General. Enable "Display debug messages". This will show an explanatory message when an error occurs, alternatively, you can do a full debugging via: https://docs.moodle.org/dev/Moodle_Mobile_debugging_WS_requests
I can connect with my iPhone but not with my Android phone
This usually happens when the site is using https and the certificate is not correctly configured or it is using an old protocol, please use these pages to check this certificate: https://www.geocerts.com/ssl_checker and https://www.ssllabs.com/ssltest/analyze.html
I can connect with my Android but not with my iPhone (or iOS device)
This is usually a server configuration problem caused by this bug: "access-control-allow-origin cannot contain more than one origin"
iOS-based apps do not allow the following header to contain more than one item "Access-Control-Allow-Origin", for example, a header like this: Access-Control-Allow-Origin: *, https://mydomain.com will cause problems
This HTTP header is not valid, according to the specification you can only specify a domain or a "*", this is failing only in iOS (probably because the native Safari implementation is more restrictive):
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin
Please, review if you have a Proxy/Firewall/Web Server adding automatically values to that HTTP header. Once this server misconfiguration issue is solved, you will be able to access to your site using the app in iOS
I can't get the app to work. What can I do?
Assuming you have enabled mobile services on your site, please check:
- If your site uses an SSL certificate, it must be a trusted certificate, not self-signed. Please use these tools or a similar one to check that your certificate is fine: SSL Checker and SSL Server Test. All the checks must be ok, including the "Certificate Chain Complete". Otherwise the app might work on iOS but not on Android.
- Debugging is disabled (in Site administration > Development > Debugging)
- The ADOdb debug option is disabled if you are using the external database auth or enrolment plugin (in Plugins > Authentication > External database and in Plugins > Enrolment > External database).
- SHA-1 https certificates are not supported anymore in Chrome, this means that the Android version of the app won't work for your site. If your site doesn't work in desktop Chrome or Chromium it won't work in the Android app. See https://blog.chromium.org/2014/09/gradually-sunsetting-sha-1.html for more information
- If you are using IIS check that Anonymous access is not disabled for the /webservice directory.
- If you are using a web application firewall like StackPath, Barracuda, Cloudflare, Juniper, etc... try to temporary disable it to check if that's the cause. If so, you'll have to whitelist these endpoints: login/token.php, webservice/*, lib/ajax/*, and /tokenpluginfile.php
If you still have a problem, please post in the Moodle for mobile forum.
I cannot access with old users, but I can with recently created ones!
Please, do a "Purge all caches" via the Moodle administration settings, this will solve the problem.
I can't view the courses tab as an administrator
The Moodle app only displays courses you are enrolled in. If you want to view a course as an admin, you need to enrol in it.
My Moodle site uses a SSO auth method (Shibboleth, CAS, Google OAuth, etc) and the app is not working
See the section 'Mobile authentication' in the Moodle app guide for admins for details of how to configure it.
If configured the app is still not connecting: If your site uses an SSL certificate, it must be a trusted certificate, not self-signed. Please use this tool or a similar one to check that your certificate is fine: SSL Checker. All the checks must be OK, including the "Certificate Chain Complete".
If your SSO method is unable to authenticate when using an "embedded browser" (it gives an authentication error), please check if it works with a "browser window". If it does work with the browser window then it means your SSO is performing an HTTP redirect, and these kind of redirects aren't supported by the app (the request is redirected by the browser not passing the POST parameters). Unfortunately, this is something we cannot control in the Mobile app (it can't be handled via JavaScript). For further information, see http://stackoverflow.com/questions/228225/prevent-redirection-of-xmlhttprequest and http://stackoverflow.com/questions/4168784/ajax-redirection-handling
There are only 2 possible solutions: set the authentication via a "browser window" instead of an embedded one (please notice this won't work in the Linux desktop app), or remove the redirect from the SSO auth method.
SSO is not working with my custom auth plugin
SSO should work in any plugin if the plugin handles correctly the $SESSION->wantsurl, this is the way SSO works when it is launched via the app:
Custom auth plugins may be failing in the last step,not redirecting back to local/mobile, this will happen only if the plugin does not support correctly the $SESSION->wantsurl.
The SAML plugin works correctly but some modifications of that plugin may not work if important lines are changed.
I am having problems requesting an airnotifier access key
If you have registered your site but are still unable to request an access key, please register your site on the Moodle Apps Portal https://apps.moodle.com once your site is registered there, an Airnotifier access key will be automatically generated for you.
Push notifications are not working
Please check Mobile app notifications#Troubleshooting
I configured 'QR code access' to automatic login, but the app still asks for credentials
Automatic authentication only works for Pro and Premium sites. You can see the app plans in this site.
I you're getting an error saying that the device you're using to connect isn't in the same network as the device that displays the QR code but both devices are connected to the same network, please check the section: ipmissmatch: 'Client IP address mismatch'.
Some users are asked to reauthenticate too often when they browse the site
This can happen if the app is sending too many variables to a WebService, e.g. because a course has a large number of sections and/or activities. This error will be fixed in the 3.9.3 version of the app, but you can increase the value of max_input_vars in php.ini to fix it in your server.
Error messages
'Can not find data record in database table external_functions'
This error usually happens due to a bad configuration or setting value in your Moodle site, please check:
- The user quota global setting should be an integer. For more details, see the discussion How to enable Moodle Mobile App for all accounts.
- The usermaxuploadfilesize should be an integer, please try to decrease the size. It can be configured in Site Administration > Security > Site Policies > Maximum uploaded file size. The default value (Site upload limit) depends on the PHP configuration, you might have to change the value of upload_max_filesize and post_max_size in your php.ini file.
- The user "lang" field in the database is set to a correct value and existing language installed in the site. Some times the lang field is set via external systems to incorrect values or pointing to a language pack that was uninstalled. Please, note that to fix this you need direct access to the database and your 'user' and 'course' table.
'Cannot connect: Verify that you have typed correctly the URL and that your site uses Moodle 2.4 or later'
Please check:
- Mobile services are enabled for the site.
- The user is entering the correct URL for the site (see FAQ above)
- For https sites, the certificate is valid (see FAQ above)
'We lost connection; you need to reconnect. Your token is now invalid.' on my custom version of the Moodle app
Please check:
- You have followed all the steps listed in Moodle Mobile Developing a plugin tutorial
- You have enabled the moodle/webservice:createtoken for the authenticated user
'No permission to create web service token for the service local_mobile' when attempting to log in as an admin
You need to create a token for the admin account (only) as follows:
- Go to Site administration > Plugins > Web services > Manage tokens
- Click Add
- Enter the admin username and select 'Moodle app additional features service' (i.e. do NOT leave it as 'Moodle app web service')
- Click the 'Save changes' button.
'Invalid response value detected' when accessing the site
The user quota global setting should be an integer. For more details, see the discussion How to enable Moodle Mobile App for all accounts.
' Invalid response value detected: Invalid external api response: the value is "", the server was expecting "raw" type"
This usually happens when there is a field with value NULL in a table in the database that should not be there. This may happen if your Moodle has been upgraded over many years and the database schema is broken.
To fix it, you can do the following:
- Detect the field that is causing the problem (it should be indicated before the error message)
- Fix the field, for example, for the password field in the lesson table: UPDATE mdl_lesson SET password = WHERE password IS NULL (remember that your table prefix can be different than mdl_)
'Invalid response value detected' when accessing My Courses or Course Overview
This usually happens when a course uses a language that isn't installed in the site. Please make sure that all courses use valid languages. This can be easily checked in the database, table "course", there is a column named "lang".
'A required parameter (username) was missing'
This may happen if your site implements HTTP redirects; the request is redirected by the browser not passing the POST parameters.
Unfortunately, this is something we cannot control in the Mobile app (it can't be handled via JavaScript). For further information, see http://stackoverflow.com/questions/228225/prevent-redirection-of-xmlhttprequest and http://stackoverflow.com/questions/4168784/ajax-redirection-handling
The solution is to change the HTTP redirect and use an HTML page with a meta tag or JavaScript redirect.
'Invalid json in request: No error'
There is a bug in Moodle 3.3 that can cause this error. Please update to Moodle 3.3.2.
'Cannot get course contents'
This usually happens when the course is using a course format plugin that was uninstalled from the server or that was not properly installed.
Please, reinstall again the course format plugin.
'Access control exception' or 'Your authentication token is invalid or has expired'
If this error appears as soon as you enter the username and password for a new site, then it probably means that the token expiration time is badly configured. This is how to fix it:
- Go to Site administration > Security > Site security settings.
- Find the setting named User created token duration.
- If the value is set to 0 or it's too low, please set it back to a valid value (the default value is 12 weeks).
- Click the 'Save changes' button.
ipmismatch: 'Client IP address mismatch'
This error can appear when a user opens your site in a browser while using the app. This happens if your site is behind a proxy and you're using one of these Moodle versions o higher: 3.5.11, 3.6.9, 3.7.5, 3.8.2, 3.9.0.
To fix it:
- Go to Site administration > Administration > Server > HTTP.
- Find the setting named Ignore reverse proxies (reverseproxyignore).
- Enter the IP of your proxy (or range of IPs).
- Click the 'Save changes' button.
I think I found a bug with the app. Where can I report it?
- Log in to the Moodle Mobile tracker (you'll need to create a tracker account if you've not done so previously)
- Check whether the issue has already been reported by doing a search
- If not, report the bug by clicking the 'Create Issue' link at the top right of the page, selecting 'Moodle app' as the project
- Add a detailed description providing as much information as possible (Moodle version, app version, device model and operating system, etc...), then click the Create button
How can I get the app in my language?
The Moodle app automatically detects your mobile's language and displays in the same language (if the translation exists). Otherwise, you can set the app language in App settings > General.
If the Moodle app is not yet available in your language, please contribute a translation! See Translating Moodle Mobile for details of what to do.
Any further questions?
Please post in the Moodle for mobile forum on moodle.org.