Trying multiple different technologies and the way they interact with eachother (AngularJS, Angular, Firebase).
- Cordova
- Electron
- Capacitor
- LineageOS 19.1
Create an Android and iOS application from a website using Cordova. Introducing the application to Cordova's first and third party plugins. Experimentation with Firebase, AngularJS and Angular.
-
Cordova
-
Demonstration Application
Succesfully created a demo HelloWorld application.
-
-
Cordova Plugins
-
cordova-plugin-battery-status
Successfully added a button to display, inside a dialog box, the state of the battery (charging/discharging and amount of battery left in percentage).
-
cordova-plugin-camera
Unsuccessfully added a button to open the camera/image picker to import a picture to the application.
-
cordova-plugin-dialogs
Successfully added a button to display a dialog box with different outcomes depending which button is pressed or not (exiting by tapping outside the boundries of the dialog box).
-
cordova-plugin-file
Unsuccessfully added a button to open a file manager to create/modify/delete a file/folder.
-
cordova-plugin-geolocation
Successfully added a button to display, inside a dialog box, the geolocation of the device (latitude, longitude, altitude, speed, timestamp and more).
-
cordova-plugin-vibration
Successfully added a button to vibrate the phone for a specific amount on time in milliseconds.
-
-
XML/RPC
-
odoo-await
Unsuccessfully added a button to create/modify/delete a model from an Odoo database.
-
-
NodeJS
- nodejs-mobile-cordova Unsuccessfully integrated nodeJS to the Cordova application.
-
Firebase
-
cordova-plugin-firebase-messaging
Successfully added a background service that takes a "google-services.json" file and enables the possibility to receive push notifications at all times.
-
cordova-plugin-firebasex
Example project from GitHub by Dave Alden (dpa99c) showcasing the different features of "cordova-plugin-firebasex" using "google-services.json".
-
-
AngularJS
-
Counter
Implemented a button that increments a variable and outputs it in real time.
-
Checkbox
Implemented a checkbox that enables and disables a button in real time.
-
Text input
Implemented a text input field that outputs it's entry in real time.
-
-
Angular
- Unsuccessfully implemented the demo Application from Angular in Electron.
Title | Description | Link | Android | iOS |
---|---|---|---|---|
cordova-plugin-battery-status | This plugin provides information about the device's battery | https://github.com/apache/cordova-plugin-battery-status | ☑ | ☑ |
cordova-plugin-camera | This plugin provides a way to take and select pictures from the device | https://github.com/apache/cordova-plugin-camera | ☐ | ☐ |
cordova-plugin-dialogs | This plugin provides a way to open an dialog box on the device | https://github.com/apache/cordova-plugin-dialogs | ☑ | ☑ |
cordova-plugin-geolocation | This plugin provides information about the device's location | https://github.com/apache/cordova-plugin-geolocation | ☑ | ☑ |
cordova-plugin-file | This plugin provides a way to read/write files to the device | https://github.com/apache/cordova-plugin-file | ☐ | ☐ |
cordova-plugin-vibration | This plugin provides a way to vibrate the device | https://github.com/apache/cordova-plugin-vibration | ☑ | ☑ |
Title | Description | Link | Android | iOS |
---|---|---|---|---|
async-odoo-xmlrpc | Node.js client library for odoo ERP using xmlrpc. Al most API base on External API. | https://github.com/nguyenvantien2009/async-odoo-xmlrpc | ☐ | ☐ |
odoo-xmlrpc | Node.js client library for odoo ERP using xmlrpc. | https://github.com/faisalsami/odoo-xmlrpc | ☐ | ☐ |
odoo-await | Simple Odoo API client built with promises for async / await usage. Features CRUD, many2many field methods, and more. | https://github.com/vettloffah/odoo-await | ☐ | ☐ |
Title | Description | Link | Android | iOS |
---|---|---|---|---|
nodejs-mobile-cordova | A toolkit for integrating Node.js into mobile applications. | https://github.com/janeasystems/nodejs-mobile-cordova | ☐ | ☐ |
Title | Description | Link | Android | iOS |
---|---|---|---|---|
cordova-plugin-firebase-messaging | This plugin provides a way to send push notifications from Google Firebase to your Cordova project. | https://github.com/chemerisuk/cordova-plugin-firebase-messaging | ☑ | ☐ |
cordova-plugin-firebasex | this plugin brings push notifications, analytics, event tracking, crash reporting and more from Google Firebase to your Cordova project. | https://github.com/dpa99c/cordova-plugin-firebasex | ☑ | ☐ |
Title | Description | Link | Android | iOS |
---|---|---|---|---|
Counter | Button that increments a variable and outputs it in real time | N/A | ☑ | ☑ |
Checkbox | Checkbox that enables and disables a button in real time | N/A | ☐ | ☐ |
Text input | Text input field that outputs it's entry in real time | N/A | ☑ | ☑ |
-
Cordova
-
Cordova Plugins
-
NodeJS
-
Firebase
-
AngularJS
-
Angular
Create a desktop application from a website using Electron. Introducing Firebase, AngularJS and Angular in the application.
-
Demonstration Application
- Succesfully created a demo HelloWorld application.
-
Notification
- Successfully added a button to push a notification and an output displaying a message when the notification is clicked by the user (event).
-
Firebase
- Unsuccessfully added a background service that will receive and display notifications.
-
AngularJS
- Unsuccessfully added a button that increments a variable and outputs it in real time.
-
Angular
- Successfully implemented the demo application from Angular in Electron.
Title | Description | Link | Windows | Linux | macOS |
---|---|---|---|---|---|
Notification | Button to push a notification and an output displaying a message | https://www.electronjs.org/docs/latest/tutorial/notifications | ☑ | ☐ | ☐ |
Firebase | Electron-Firebase is a quickstart framework for building cross-platform cloud-connected desktop applications using Electron and Firebase. | https://www.npmjs.com/package/electron-firebase | ☐ | ☐ | ☐ |
AngularJS | Button that increments a variable and outputs it in real time | N/A | ☐ | ☐ | ☐ |
Angular | Successfully implemented the demo Application from Angular in Electron. | N/A | ☑ | ☐ | ☐ |
-
Electron
-
Firebase
-
AngularJS
- ☐ https://github.com/KillerCodeMonkey/angularjs-electron-app
- ☐ https://stackoverflow.com/questions/56263092/cant-communicate-electronjs-angularjs-using-ipc
- ☐ https://www.youtube.com/watch?v=2GSkf_YcvdI
- ☐ https://github.com/mehulmpt/electron-tutorials
- ☐ https://www.guru99.com/ng-include-angularjs.html
-
Angular
- ☑ https://developer.okta.com/blog/2019/03/20/build-desktop-app-with-angular-electron
- ☑ https://buddy.works/tutorials/building-a-desktop-app-with-electron-and-angular
- ☑ https://www.c-sharpcorner.com/article/getting-started-with-angular-electron-application-development/
- ☐ https://auth0.com/blog/create-a-desktop-app-with-angular-2-and-electron/
- ☐ https://angular.io/quick-start
Create an Android and iOS application from a website using Capacitor. Introducing Firebase, AngularJS and Angular in the application.
-
Demonstration Application
- Succesfully created a demo HelloWorld application.
-
Cordova Miragtion
- Migrate a Cordova project into Capacitor.
-
Firebase
- Successfully added a background service that will receive and display notifications.
-
AngularJS
- Unsuccessfully implemented AngularJS to the demo application.
-
Angular
- Successfully implemented the demo application from Angular in Capacitor.
Title | Description | Link | Android | iOS |
---|---|---|---|---|
Cordova Miragtion | Migrate a Cordova project into Capacitor | https://capacitorjs.com/cordova | ☑ | ☐ |
Firebase | The Push Notifications API provides access to native push notifications. | https://capacitorjs.com/docs/apis/push-notifications | ☑ | ☐ |
AngularJS | Build native mobile apps with web technology and AngularJS | N/A | ☐ | ☐ |
Angular | Build native mobile apps with web technology and Angular | https://capacitorjs.com/solution/angular | ☑ | ☐ |
-
Capacitor
-
Cordova Migration
-
Firebase
-
Angular
-
iOS
- ☑ https://developer.apple.com/xcode/resources/
- ☑ https://www.youtube.com/watch?v=IQ2mbwENV78
- ☐ NativeScript/nativescript-cli#2896
- ☐ https://forum.ionicframework.com/t/ionic-app-scripts-not-installed/94212
- ☐ https://ionicframework.com/docs/intro/cli
- ☐ https://stackoverflow.com/questions/51967335/npm-install-permission-denied-macos
- ☐ https://stackoverflow.com/questions/55558984/xcode-pods-projectname-debug-xcconfig-unable-to-open-file-wrong-directory
- ☐ https://www.maketecheasier.com/install-macos-virtualbox/
- ☐ https://www.youtube.com/watch?v=RQXwHeU0INU
- ☐ https://www.youtube.com/watch?v=fhnECybadUw
- ☐ https://www.youtube.com/watch?v=q5V6WWWRlJg
- ☐ https://www.youtube.com/watch?v=l645YGt7Mo4
Create a build of LineageOS 19.1 using the official sources and run it in an emulator.
-
Building
- Succesfully created built a compressed file that can be flashed on a device and emulator.
-
Running
- Successfully ran the compressed file in an emulator.
-
Modifying
- Unsuccessfully modified the sources to have a custom flavor of LineageOS.
Title | Description | Link | Windows | Linux | macOS |
---|---|---|---|---|---|
Building | Building a ROM from the official LineageOS 19.1 sources | https://wiki.lineageos.org/emulator | ☐ | ☑ | ☐ |
Running | Running the newly built ROM in an emulator | https://wiki.lineageos.org/emulator | ☐ | ☑ | ☐ |
Modifying | Setting up a work environment and modifying the code | https://wiki.lineageos.org/how-to/import-to-android-studio | ☐ | ☐ | ☐ |
-
Building
- ☑ https://wiki.lineageos.org/emulator
- ☑ https://en.wikibooks.org/wiki/Advanced_phone_customization/Building_your_own_ROM
- ☑ https://askubuntu.com/questions/470545/how-do-i-set-up-ccache
- ☑ https://stackoverflow.com/questions/41986507/unable-to-set-default-python-version-to-python3-in-ubuntu
- ☐ https://blog.51cto.com/u_847102/5269133
- ☐ https://www.youtube.com/watch?v=6iggj1S0JpM
- ☐ https://forum.xda-developers.com/t/guide-how-to-building-lineageos-for-an-unsupported-device.4419263/
-
Running
-
Modifying
- ☐ https://wiki.lineageos.org/how-to/import-to-android-studio
- ☐ https://forum.xda-developers.com/t/mod-settings-in-lineage-os-and-android-nougat.3781613/
- ☐ https://www.reddit.com/r/LineageOS/comments/jz5z6c/configuring_default_lineage_settings_in_the_build/
- ☐ https://github.com/LineageOS/android_lineage-sdk/blob/lineage-17.1/sdk/src/java/lineageos/providers/LineageSettings.java#L2129
- ☐ https://ibotpeaches.github.io/Apktool/install/
- ☐ https://forum.xda-developers.com/t/guides-all-guides-at-one-place.2073370/
- ☐ https://forum.xda-developers.com/t/guide-complete-android-rom-development-from-source-to-end.2814763/
- ☐ https://developers.google.com/code-search
- ☐ https://cs.android.com/
- ☐ https://source.android.com/docs
- ☐ https://github.com/dsixda/Android-Kitchen
-
Other
- ☐ https://kiwiirc.com/nextclient/irc.libera.chat#lineageos-dev
- ☐ https://github.com/topics/poco-x3-pro
- ☐ https://github.com/topics/pocox3pro
- ☐ https://xiaomiwiki.github.io/
- ☐ https://www.edureka.co/community/85643/usr-bin-env-python-no-such-file-or-directory
- ☐ https://github.com/Evolution-X/packages_apps_Settings/tree/tiramisu/src/com/android/settings