simplenote-android
Simplenote for Android. Learn more at Simplenote.com.
How to Configure
- Clone repository.
git clone https://github.com/Automattic/simplenote-android.git
cd simplenote-android
- Import into Android Studio using the Gradle build option. You may need to create a
local.propertiesfile with the absolute path to the Android SDK. Samplelocal.properties:
sdk.dir=/Applications/Android Studio.app/sdk
- Install debug build with Android Studio or command line with:
./gradlew Simplenote:installDebug
- Set up credentials before your first build — see Setup Credentials below. A fresh clone builds against the placeholder Simperium app in
Simplenote/secrets.properties-example, and logging in with a real Simplenote account against it fails with "Invalid username or password" even though the same credentials work on the web.
Note: Simplenote API features such as sharing and publishing will not work with development builds.
Android Wear
To properly install the wear app, run ./gradlew assembleRelease to package up the app and then adb install with the generated .apk to the host device.
If you want to debug the Wear app, simply connect the device to adb and then run the Wear project from Android Studio.
Tests
To run the test suite, execute the following gradle command:
./gradlew testRelease
Setup Credentials
Simplenote is powered by the Simperium Sync'ing protocol. The app authenticates against a specific Simperium application, identified by the simperiumAppId and simperiumAppKey fields in the secrets file that configure_apply decrypts outside of the repo.
Without that file, the build falls back to Simplenote/secrets.properties-example, which contains a placeholder Simperium app. A build using those placeholder values cannot authenticate any real Simplenote account — login fails with "Invalid username or password" even for credentials that work at app.simplenote.com. If login is failing unexpectedly, check BuildConfig.SIMPERIUM_APP_ID before investigating anything else.
Automattic contributors
Install the real credentials with:
bundle install
bundle exec fastlane run configure_apply
This requires access to the internal secrets store. It provides the production values, including wpcomClientId, which the "Log in with WordPress.com" button needs.
External contributors
Registering your own Simperium application would let you build and run the app, but Simperium is not accepting new accounts at this time, so this path is currently closed. Contributions that do not require signing in are still very welcome — see the Contributing Guide.
Note that the in-app signup screen does not create an account in your own Simperium application. It posts to the production endpoint at app.simplenote.com/account/request-signup and sends a confirmation email, so the resulting account lives in production Simperium and will not work with a development build.
Note: Simplenote API features such as sharing and publishing will not work with development builds.
Contributing
Read our Contributing Guide to learn about reporting issues, contributing code, and more ways to contribute.
