Android Native Install (Soup)
| QA Lead: | Aaron Train |
| Lead Developer: | Anant Narayanan |
Quick Start Guide
Here is a quick start guide to get you to install a signed copy of the latest version for install in Android of the native open web apps application:
Github Repository: https://github.com/anantn/soup
Build instructions
- Clone the Git repository
- Download the Android SDK
- Import the project into Eclipse
- Configure the project properties to target Android API Level 8 (Android 2.2 (Froyo))
- Build and Run
Compile and build 'Soup' from the Android project (targeting Android API Level 8). Enable 'Install form Unknown Sources' on your Android device under Application Settings. Once installed, you may find the application in the Android application launcher.
Join us on #openwebapps and #QA
Introduction
This quarter we will see emerge the essential Mozilla application store marketplace and native Android open web application management application. The application will be built using PhoneGap utilizing cross-platform languages such as HTML/CSS and JavaScript, and using APIs provided by Apps JavaScript API and addons.mozilla.org to provide a list of installable applications. In essence, upon completion of a transaction (wether it be installing a free or paid open web application), the result of the install action is to download and install an open web application to the users Android home screen. Invoking an open web application will launch its associated web site in a WebKit runtime.
Mobile Technologies
Native Android Application
- Support for installable applications
- The Android application understands what a web application is, and helps one manage ones list of applications
- Application metadata storage
- Installation query/management API
- The Android application understands what a web application is, and helps one manage ones list of applications
- Support for permission requests
- When an application is installed, it can request a number of permissions at once
- Installed Open Web Applications
- When one invokes an open web application, it invokes in a chrome-less window providing the appearance of a traditional Android application
Risks
With such an assemblage of utility as described from the requirements, there are multiple negative risks:
- Deliverance of dependancy of deployed market with curated applications
- Deliverance of PayPal integration to support the handling of paid applications
- BrowserID integration
- Cross-platform compliance to iOS using a PhoneGap solution
Milestones
Testing of the native Android application must focus on a variety of modules that comprise the specified requirements including native installation capabilities and launching of associated open web applications in a chromeless window. In essence, we should extract all requirements and specifications from the application to create manual regression test cases. Exploratory methods and smoke-tests should also cover a more advanced set of test cases. A proper sandboxed environment should be used for testing.
| Major Milestones / Stories |
Date | |||
| Native installation and management capabilities | ||||
Release Criteria
| Priority |
Release Invariant |
| P1 | Installation and management capabilities for Open Web Applications |
| P1 | Successful launch of associated Open Web Application into WebKit (Chromeless) window |
| P1 | Ability to purchase free and paid Open Web Applications through using PayPal |
| P2 | Ability to navigate the Open Web Applications store on live site |
| P3 | (Future) BrowserID login to utilize Mozilla Sync API's to sync Open Web Applications |
Test Plan
Not Testing
- Fennec front-end integration with Navigator.MozApps JavaScript Open Web Apps API interactions (i.e., installing, managing, uninstalling and granting permissions to web-apps)
Test Cases
Mobile App User Integration Flow
- Native Android application on Android Market
- Buying Etherpal (Free Application)
- First-time BrowserID user
- Native Android application on Android Market
- Buying Evernote (after having bought a free application)
- Returning BrowserID user
- First-time PayPal user
Bug Tracking
Github Repostory
Issues
Tasks
Documents / Links
Documentation