This is a demo app for Firefox OS, loosely based on fxosstub, meant to act as a simple boilerplate for getting started with apps for Firefox OS.
It will give you a button to install it in Firefox OS - on a device, in the Firefox OS Simulator (Simulator Introduction) and in certain Nightly versions of Firefox.
It is a showcase of:
- Web Activities
- WebAPI usage
- Adding offline support and more in Firefox OS!
To add your own icon, I recommend using the Firefox OS app icons style guide.
To test/install this app, download the code and run it on a web server, or navigate to Firefox OS Boilerplate App in Firefox on a device or in the Firefox OS Simulator.
Alternatively, install it in the Firefox OS Simulator Dashboard by providing either of these URLs:
- http://robnyman.github.com/Firefox-OS-Boilerplate-App/
- http://robnyman.github.com/Firefox-OS-Boilerplate-App/manifest.webapp
Note: If you use the Add Directory option in the Simulator, make sure to change "launch_path": "/Firefox-OS-Boilerplate-App/index.html"
to "launch_path": "index.html"
and the icon paths accordingly since it runs it as a packaged app directly from the root folder of the Firefox OS Boilerplate App.
You can test packaged apps in version 2 and higher in the Firefox OS Simulator, by using the Add Directory button. If you want to access privileged APIs - such as deviceStorage, cross-domain XMLHttpRequest etc - you need to set type and permissions in the manifest file. E.g.
{
"version": "1",
"name": "Firefox OS Boilerplate App",
"type" : "privileged"
…
And:
"permissions": {
"device-storage:pictures": {
"access": "readcreate"
},
"systemXHR":{}
}
It also supports installPackage
to install a ZIP version of your app with all files packaged. This also gives you access to a few extra APIs, due to a higher security clearance.
The repository contains two sample things to make this possible:
- A mini manifest - the package.manifest file
- A ZIP version of the app
To enable this, please go to the js/base.js file and change two lines, as described in the comments. Basically, these are the steps needed for packaged apps:
- Alter the mini manifest (package.manifest) and make sure the "package_path" is absolute
- ZIP all app content (not containing folder), including regular manifest
- Developer name and info HAS to match between mini manifest and the regular one
- Have an installPackage call in JavaScript pointing to the mini manifest
- (Not available anymore: Turn on Developer Mode in the Firefox OS Simulator (Settings > Device Information > More Information > Developer > Developer mode))