Skip to content
This repository has been archived by the owner on Dec 17, 2024. It is now read-only.

Commit

Permalink
Add build instructions to readme
Browse files Browse the repository at this point in the history
  • Loading branch information
lepus2589 committed Dec 6, 2015
1 parent a599765 commit 83b1aad
Showing 1 changed file with 78 additions and 0 deletions.
78 changes: 78 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,81 @@
# Pocket Combine #

Pocket Combine is a small Android app using the SWCombine.com Web Service.

## Build process ##

To build this project, you'll first need a current [Node.js][nodejs]
installation on your machine.

[nodejs]: https://nodejs.org/en/download/

### Global dependencies ###

Using the Node package manager, you can now install the global dependencies,
namely Cordova, Grunt CLI and the TypeScript Definition manager.

npm install -g cordova grunt-cli tsd

If you are on a Linux machine, you may have to execute the command as root
using `sudo`.

### Local dependencies ###

The local dependencies can be installed by simply doing

npm install

in the project directory (containing the `package.json`)

### TypeScript type definitions ###

The library type definitions used in this project are installed from the
[DefinitelyTyped][DefinitelyTyped] Github repository via

tsd install

[DefinitelyTyped]: http://definitelytyped.org/

### Cordova project ###

To reconstruct the Cordova project, execute the following:

cordova prepare

This installs all necessary Cordova plugins and adds the supported platforms.

### SWCombine App credentials ###

To build a working app, you'll need to register it with SWCombine. For this,
you must first have a [player account][swcombine]. Login to SWCombine and
[register your app][register-app]. You'll receive a set of app credentials.

Create the configuration file via

grunt config

and enter your app credentials into the file (the officially released APKs
contain my app credentials).

The app credentials are obfuscated during the build process and are hard, but
not impossible, to extract from the APK. You cannot store the app credentials
in a cryptographically safe way, because the app must be able to access them
on its own. So the key to the cypher must always be stored inside the APK, too,
thus compromising security.

[swcombine]: http://www.swcombine.com/
[register-app]: http://www.swcombine.com/ws/registration/

### Build the project ###

Now, everything is prepared to build the app. But to package it into an APK,
you'll additionally have to setup the `Android Stand-alone SDK Tools` for
Cordova to use (see the [Cordova documentation][cordova-android] for
instructions). Finally, execute

cordova build

and in the `./platforms` directory, you should find the folders for the
supported platforms, respectively, and inside, the ready to use app.

[cordova-android]: https://cordova.apache.org/docs/en/latest/guide/platforms/android/index.html

0 comments on commit 83b1aad

Please sign in to comment.