Optimize Your App for the Classroom

There are several ways to optimize your application for a classroom environment. These are the most common optimizations we recommend.

Streamline identity and provisioning

Students are already signed into ChromeOS with Google accounts which helps enable them to quickly log in to sites. You can easily support signing into your site with the Sign in with Google API. Teachers have limited class time. Having a unified login experience via single sign on removes their burden of needing to remember passwords and usernames for each student and allows students to get up and running with your application faster.

Add support for multiple cameras

Chromebooks can have more than one camera. Like a cell phone, they can have both a regular webcam and a world facing camera. To help users switch between them, add the ability to quickly cycle through the available cameras. This can be done using navigator.mediaDevices.enumerateDevices to check if there is more than one media input on the device. If there is, show a button or dropdown that allows users to switch between them. If you are developing an Android app, be sure to use instead of in your AndroidManifest.xml file and add the required=false tag to make sure your app is available on devices with only front facing cameras.

Ensure touch and stylus inputs work

Some Chromebooks have the capability to go from a traditional laptop form factor to a tablet form factor and back again seamlessly. Thus, web developers targeting education users should consider switching from the traditional event handlers like mouse up and touch start to pointer events. Pointer events are events that are designed for a multitude of pointing devices (stylus, finger, and mouse) and can help transition your users as they move between different form factors and input methods.

Support large screen Android devices

When optimizing your Android application to work on ChromeOS, it’s important to understand that users interact with laptops and phones differently. Many Android apps should consider preparing for windowed mode with a responsive layout since users may interact with your application not only in fullscreen mode, but also side by side with other applications. Additionally, enabling hardware keyboards with shortcuts enables devices without touchscreens to adopt your app, opening up a range of additional devices available to your application. Small updates to the layout and overall look and feel may make your application feel that it was designed with ChromeOS in mind and give it a better experience for your users as well. We have a large document of optimization guidelines that can help create great experiences for your users.

Use Google Drive for storage

Storing your application’s user data in the users’ Google Drive is largely preferred in an education environment. In particular, if you’re building for the US market, Google Drive for storage, can be used in compliance with FERPA and COPPA, our commitment to which is included in our agreements

Improve WebView compatibility

Educational institutions may use content filtering solutions, some of which are accessible via Chrome browser extensions on ChromeOS. These solutions are not able to capture embedded WebViews within Chrome apps or Android apps by default. Improve how your app handles WebViews to make sure they work with content filtering solutions.