Giter Club home page Giter Club logo

evothings-viewer's Introduction

Evothings Viewer

Introduction

Evothings Viewer is the companion app for Evothings Studio 2.x. It is used to connect to Evothings Workbench and run apps.

The app consists of a Cordova WebView, a number of useful plugins, and a UI to connect to Evothings Studio Workbench. You can edit the list of plugins in file package.json and build your custom version of the Viewer.

Notice when building from source

Currently, Cordova version 8.0.0 is used to build the Viewer, older may or may not work.

Branch master may contain updates not yet compatible with current production servers. If building from master branch does not work, of if you want to play safe, use the latest release. Building from master branch should work fine in most cases and gives you the latest updates.

Building the App

To build the app, you need Apache Cordova installed. Here are the build steps:

Download and unpack the source for the latest release:

https://github.com/evothings/evothings-viewer/releases

Alternatively, clone the repository using git (gives you current master branch):

git clone [email protected]:evothings/evothings-viewer.git

Go to the source directory:

cd evothings-viewer

Add your platforms:

cordova platform add android
cordova platform add ios

Then build using Cordova:

cordova build android
cordova build ios

Or for release:

cordova build --release android

Plugins will be added automatically first time you add a platform.

You can edit package.json to configure which plugins you wish to be included. New plugins are added on next build.

To clean up the project run (removes folders 'platforms' and 'plugins', you can also delete these folders manually):

node scripts/clean.js

Build system overview

The build uses plain Cordova features (hooks and plugins) and is designed to be easy to use for people who know Cordova.

There are build hooks in the 'scripts' directory, these are invoked to copy/modify files during the build process.

To make native application settings on Android and iOS a plugin in folder config/config-plugin is used. This plugin has no source files, it is there only to make project settings (a plugin can modify AndroidManifest.xml entries and info.plist entries, which cannot be done using config.xml).

Icons and launch screens are specified in config.xml.

Source code files in the 'config' folder are copied to the target platform directory during build, for both Android and iOS. These source files contains special modifications for the Evothings app.

To clean the project use the command:

node scripts/clean.js

This removes projects and plugins. Add platforms using 'cordova platform add ...'. Plugins are added when adding the first platform.

Setting a custom package name

Change the package name in config.xml on this line:

<widget id="com.evothings.evothingsviewer"

You can also change the app name, modify this line in config.xml:

<name>Viewer</name>

Known build issues on iOS

Settings for iPhone/iPad interface orientations

Due to some glitch in the Cordova build process and/or Xcode, you should set interface orientations manually in Xcode, go to the tab 'General' and make desired settings under 'iPhone' and 'Device Orientation'.

evothings-viewer's People

Contributors

fredrikeldh avatar gokr avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.