Blockly on Mobile Devices
This directory contains three examples of running the Blockly library on mobile
devices. The html/ directory is a example of configuring a webpage for touch
devices, with a Blockly workspace that fills the screen.
The mobile/html/ is also the basis for the Android and iOS demos. Each native
app copies this demo into the app's local resources, and required Blockly
library files, and hosts them in an embedded WebView.
Thus, developers can quickly iterate within the mobile/html/ directory, and
see changes in both the Android and iOS native apps.
Running the Mobile HTML Demo
Before running the mobile HTML demo, you need to create some symbolic links
in your local file system. Run the mobile/html/ln_resources.sh file from
the mobile/html/ directory. This mimics the relative locations of the
Blockly files seen when loading the page in a native app's embedded WebView.
After doing this, opening mobile/html/index.html should open normally,
filling the page with one large Blockly workspace.
The Android App
Build and Run
Open the demos/mobile/android/ directory in Android Studio. The project
files in the directory should be ready to build and run the demo in an emulator
or connected device.
Android Copy Tasks
If you edit the mobile/html/ demo to include new files, you will need to
update the native app project files to also copy those files.
In the Android project, two Gradle tasks are responsible for the copies.
In mobile/android/app/build.gradle, the tasks copyBlocklyHtmlFile and
copyBlocklyMoreFiles configure the copy actions.
The iOS App
Build and Run
Open the demos/mobile/iOS/ directory in XCode. The project files in the
directory should be ready to build and run the demo in a simulator or connected
device.
iOS Copy Script
The XCode project call out to mobile/ios/cp_resources.sh to copy the required
HTML and related files. If you've edited the mobile/html/ demo to require new
files, update this script to copy these files, too.