Uploaded image for project: 'Moodle app'
  1. Moodle app
  2. MOBILE-3447

Support disabling InAppBrowser in LTI in the app

    XMLWordPrintable

    Details

    • Testing Instructions:
      Hide

      This issue should be tested in one Android and one iOS device.

      Test default behaviour

      1. Test that LTI woks as it used to by default: it's opened in InAppBrowser.

      Test disabling InAppBrowser

      1. Modify the Moodle database to include disabling InAppBrowser in the app: config_plugins - tool_mobile - disabledfeatures. The value must be: CoreCourseModuleDelegate_AddonModLti:openInAppBrowser
      2. Purge all caches
      3. In Moodle as teacher/admin, create an LTI with automatic activity completion. The completion criteria should be "Student must view this activity to complete it".
      4. In the app, open the section with the LTI. Check that the activity isn't marked as completed.
      5. Click the link button at the right of the LTI activity. Check that the LTI tool is opened in the external browser (if your site doesn't support auto-login or you already did it in another device you'll have to enter the Moodle credentials).
      6. Go back to the app. Check that the section view is automatically refreshed and the activity is marked as completed.
      7. Enter the activity and click the "Launch the activity" button. Check that the LTI tool is opened in the external browser.
      Show
      This issue should be tested in one Android and one iOS device. Test default behaviour Test that LTI woks as it used to by default: it's opened in InAppBrowser. Test disabling InAppBrowser Modify the Moodle database to include disabling InAppBrowser in the app: config_plugins - tool_mobile - disabledfeatures. The value must be: CoreCourseModuleDelegate_AddonModLti:openInAppBrowser Purge all caches In Moodle as teacher/admin, create an LTI with automatic activity completion. The completion criteria should be "Student must view this activity to complete it". In the app, open the section with the LTI. Check that the activity isn't marked as completed. Click the link button at the right of the LTI activity. Check that the LTI tool is opened in the external browser (if your site doesn't support auto-login or you already did it in another device you'll have to enter the Moodle credentials). Go back to the app. Check that the section view is automatically refreshed and the activity is marked as completed. Enter the activity and click the "Launch the activity" button. Check that the LTI tool is opened in the external browser.
    • Affected Branches:
      MOODLE_38_STABLE
    • Fixed Branches:
      MOODLE_39_STABLE
    • Pull Master Branch:
    • Sprint:
      Moodle App 3.9.0

      Description

      The InAppBrowser has some limitations, e.g. it cannot download files (it seems to be a bug in the plugin) or work with multiple tabs. It's not the first time we find an issue caused by IAB, so we think it's better to always launch the LTI in the system browser.

      The main problem is that we cannot open the system browser with POST parameters, so the only solution is to open the activity in Moodle with auto-login. If the site doesn't support auto-login or the key has expired, the user will have to enter his credentials again (if it was not previously authenticated there).

      In the near future we'll add a setting in Moodle to disable this new behaviour so admins will be able to choose if they want LTI to launch in InAppBrowser. 

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              dpalou Dani Palou
              Reporter:
              dpalou Dani Palou
              Peer reviewer:
              Pau Ferrer Pau Ferrer
              Integrator:
              Juan Leyva Juan Leyva
              Tester:
              Pau Ferrer Pau Ferrer
              Participants:
              Component watchers:
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Fix Release Date:
                26/Jun/20