wiki:DeveloperGuidelines/EdenMobile

Version 27 (modified by Fran Boon, 8 years ago) ( diff )

--

EdenMobile

EdenMobile is a mobile application for Sahana Eden.

Related pages:

Development Environment

Eden Mobile is built on the Apache Cordova platform (sometimes known as Adobe PhoneGap).

  1. Cordova runs on NodeJS. If your OS distribution does not provide a NodeJS bundle, you can get one from here:
  1. Use the NodeJS package manager npm to install Cordova:
npm install -g cordova 

See also: https://cordova.apache.org/#getstarted

  1. If you want to build and test EdenMobile, you also need an SDK for the target platform, e.g.:
  • Android SDK
    • Ensure the SDK tools are in your PATH, e.g. for Windows 10:
      • %USERPROFILE%\AppData\local\android\sdk\platform-tools
      • %USERPROFILE%\AppData\local\android\sdk\tools
  1. You can fork/clone EdenMobile from here:
  1. Run the application
  • You canot run in the 'browser' platform as it doesn't support the local database
  • It is easier to run on a real device than the emulator
  • to run on a real device, you need to enable 'Developer Options' by tapping 7 times on the 'Build Number' in the About section (http://www.greenbot.com/article/2457986/how-to-enable-developer-options-on-your-android-phone-or-tablet.html) and then open the new Developer Options panel & enable USB Debugging
  • to run on emulator you need to create an avd: android avd
    cd eden_mobile
    npm install q-io
    cordova platform add android
    adb uninstall org.sahanafoundation.eden_mobile # Shouldn't be required but can be for some systems
    cordova run android # Builds apk & adb install platforms\android\build\outputs\apk\android-debug.apk
    

AngularJS

EdenMobile uses the AngularJS JavaScript MVC framework.

A good introduction into AngularJS can be found here:

NB We use Angular 1.x as Angular 2.x use Typescript for all examples still...TS cannot be debugged live on the device (required for offline DB support) & transpiling the TS examples produces very bloated code.

Ionic

The EdenMobile user interface is built with the CSS and JavaScript components provided by the Ionic framework.

Documentation of these components can be found here:

Note: EdenMobile does not use the Ionic CLI for development and builds, but the Cordova CLI.

NB We use Ionic 1.x because we use Angular 1.x (see above)


DeveloperGuidelines

Note: See TracWiki for help on using the wiki.