Mobile App/Cordova Development Notes: Difference between revisions
No edit summary |
|||
Line 117: | Line 117: | ||
* https://github.com/gasolin/qrcode_scanner/ | * https://github.com/gasolin/qrcode_scanner/ | ||
* https://github.com/SunboX/QR-Reader | * https://github.com/SunboX/QR-Reader | ||
== Ubuntu OS == | |||
Separate application and codebase. See #ubuntu on Slack | |||
== Publishing == | |||
* See [[Project:AppStores]] | |||
* Contact Stéphane, Vince or Pierre on Slack | |||
== May be of interest for future apps == | == May be of interest for future apps == |
Revision as of 20:04, 22 October 2015
This page contains notes regarding the development of the Open Food Facts mobile apps.
The current Open Food Facts apps for iOS, Android and Windows Phone use Apache Cordova (previously known as Phonegap).
Installing Cordova on your machine
Cordova: http://cordova.apache.org/
Installing Cordova 3.6 : http://cordova.apache.org/docs/en/3.6.0/guide_overview_index.md.html
http://cordova.apache.org/docs/en/3.6.0/guide_cli_index.md.html#The%20Command-Line%20Interface
Following notes are for the Windows Platform, but most of it probably applies for Mac or Linux.
Installing Node.js
Install Node.js
- http://nodejs.org/
- Current Version: v0.10.32
Install Git client
Install Cordova
in git-bash client:
- npm install -g cordova
cordova -v : 3.6.3-0.2.13
- "error android_home is not set and android command not in your path" when doing "cordova platform add android"
- Install Eclipse ADT (Note : for win8 32bit/64bit install 32bit ADT)
- Setup Environment Variables :
- Add to existing system variable "path" : <path to adt-bundle\sdk\tools>;<path to adt-bundle\sdk\platform-tools>
- http://docs.phonegap.com/en/edge/guide_platforms_android_index.md.html
- http://developer.android.com/sdk/index.html
- C:\Users\Stéphane\AppData\Roaming\npm;C:\Users\Stéphane\AppData\Local\Android\android-sdk\tools;C:\Users\Stéphane\AppData\Local\Android\android-sdk\tools;C:\Users\Stéphane\AppData\Local\Android\android-sdk\platform-tools
"error failed to run javac -version make sure"
Java JDK
- http://www.oracle.com/technetwork/java/javase/downloads/index.html
- JAVA_HOME : C:\Program Files\Java\jdk1.8.0_20
- add to PATH : C:\Program Files\Java\jdk1.8.0_20\bin
ANT
- http://ant.apache.org/manual/index.html
- set ANT_HOME
- add %ANT_HOME%/bin to path
"Error: Failed to run "java -version"
which java --> an old version of java in C:\Windows\System32 was causing the issue.. :-(
http://stackoverflow.com/questions/24493693/cordova-android-revision-to-low
Run SDK Manager, install Android build tools.
Android version code
in config.xml : http://stackoverflow.com/questions/23001780/how-to-get-cordova-3-4-0-to-set-android-version-name-code-on-build
Install Moodstocks
Instructions pas à jour pour Cordova 3.6 on dirait, par contre il y a un autre example :
public class Demo extends CordovaActivity { private boolean scanActivityStarted = false; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); this.init(); // Set by <content src="index.html" /> in config.xml super.loadUrl(Config.getStartUrl()); //super.loadUrl("file:///android_asset/www/index.html") }
Cordova plugins
- http://plugins.cordova.io/#/package/com.phonegap.plugins.barcodescanner
- https://moodstocks.com/docs/phonegap/using-the-moodstocks-sdk-in-your-phonegap-application/
Bugs
2nd scan with Moodstocks:
java.lang.RuntimeException : Unable to start activity ComponentInfo ... The specified child already has a parent. You must call removeView() on the child's parent first.
-> Problem with jQuerymobile not "exiting" properly from scan when clicking on "Back" ?
Import on Google Play
- "You have imported an APK file which is not zip-aligned. Veuillez exécuter un utilitaire d'alignement zipalign sur votre fichier APK, puis le réimporter."
Camera, File, File transfer plugins
cordova plugin add org.apache.cordova.camera cordova plugin add org.apache.cordova.file cordova plugin add org.apache.cordova.file-transfer
Firefox OS
- https://developer.mozilla.org/en-US/Firefox_OS/Using_the_App_Manager
- https://github.com/gasolin/qrcode_scanner/
- https://github.com/SunboX/QR-Reader
Ubuntu OS
Separate application and codebase. See #ubuntu on Slack
Publishing
- See Project:AppStores
- Contact Stéphane, Vince or Pierre on Slack