Carsten Porth 1747a02af4 publish with gun to other peers vor 5 Jahren
..
apk 3dd0553278 release version 0.2.0 including encryption vor 5 Jahren
resources bb87d6abe0 initial commit using ionic framework for app development vor 6 Jahren
src 1747a02af4 publish with gun to other peers vor 5 Jahren
ul_web_hooks f903c3c81d Cordova Firebase Authentication vor 6 Jahren
.editorconfig bb87d6abe0 initial commit using ionic framework for app development vor 6 Jahren
.gitignore d19b1e50ee apk v 0.1.0 vor 6 Jahren
README.md 6b792e9bee Update readme (Android Studio) vor 6 Jahren
config.xml 7a1322b662 add photo viewer vor 5 Jahren
ionic.config.json f0c23c3572 update ionic cli vor 6 Jahren
package-lock.json 7a1322b662 add photo viewer vor 5 Jahren
package.json 7a1322b662 add photo viewer vor 5 Jahren
tsconfig.json bb87d6abe0 initial commit using ionic framework for app development vor 6 Jahren
tslint.json bb87d6abe0 initial commit using ionic framework for app development vor 6 Jahren

README.md

HybridOSN

HybridOSN is a Twitter client Android app allowing the user to exchange data not only via the official Twitter servers but also via a P2P network to protect his privacy. It is build using the Ionic framework. With Ionic framework you can easily develop cross-platform hybrid mobile apps.

Development

I highly recommend to develop the app using Microsoft Visual Studio Code. I also recommend to use the extensions Prettier - Code formater to format your code uniformly and Gitlens to manage the git repository. Of course, you need to have git installed.

Getting Started

  • Install NodeJS LTS. If you have NodeJS installed on your computer but in a different version, I recommend Node Version Manager (Windows) to handle different NodeJS installations.
  • Install Ionic and Cordova globally npm install -g ionic cordova
  • Clone this repository, change into the directory and install the dependencies npm i
  • Install JDK
  • Install Android Studio and via the SDK Manager Android SDK Platform 26 (Android 8.0.0).

You can test whether everything was installed correctly by executing ionic info and cordova requirements.

Build the App

  • Run on Android emulator: ionic cordova emulate android
  • Run on connected Android device: ionic cordova run android
  • Publish the APK: ionic cordova build --release android

You may read in the Ionic docs, that you can view your app in the browser using ionic serve. This doesn't work because of the used Cordova plugins which force you to run the app on an Android device. As mentioned in the beginning, using Ionic cross-plattform applications can be developed. This still is valid, but since the goal was to develop an Android app, no time was spent on trying to remove this current restriction.

Debugging

If you want to debug the app, you can do so by using the Google Chrome Developer Tools. After deploying the app on your device using the ionic cordova run android-command, open Google Chrome on the computer your device is connected to and press the F12-key to open the Developer Tools. Go to the tab "Remote devices" (maybe it is hidden and you need to press ESC to show it). Now you should see your connected device on the left and when selecting it the HybridOSN app. With a click on the button "Inspect" you can inspect and debug the app.

Known Problems

In case the build process fails with the error:

Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.

Run cordova clean to fix this problem. It appears randomly from time to time.