An example app that uses the Couchbase Lite Android mobile database framework.
This example code corresopnds to the master branch of Couchbase Lite Android.
If Couchbase Lite is configured to sync it's changes with a Sync Gateway, then all changes will automatically background sync bi-directionally such that any changes on either device will propagate to the other.
- Android Studio -- see the Android Studio Compatibility Table to make sure the version you are using is supported.
The following screencasts walk you through getting GrocerySync up and running:
- GrocerySync - Couchbase Lite Android demo app: Part I -- get up and running (4m 35s)
- GrocerySync - Couchbase Lite Android demo app: Part II -- run a local Sync Gateway (5m 47s)
The screencasts follow the instructions in the remainder of this document.
$ git clone https://github.com/couchbaselabs/GrocerySync-Android.git
$ git submodule update --init
Follow the same instructions as importing Couchbase Lite
- Run it using the "play" or "debug" buttons in the UI
Congratulations! If you got this far and see this UI, you have your first Couchbase Lite Android app up and running.
-
Download and install Sync Gateway (see the installation page for details).
-
Start Sync Gateway with the configuration file in the root of this project.
~/Downloads/couchbase-sync-gateway/bin/sync_gateway sync-gateway-config.json
-
Open MainActivity.java and update the
SYNC_URL
constant to point to your Sync Gateway instance.public static final String SYNC_URL = "http://10.0.2.2:4984/grocery-sync";
- If you are using the Genymotion emulator:
http://10.0.3.2:4984/grocery-sync
- If you are using the standard android emulator:
http://10.0.2.2:4984/grocery-sync
- If you are running on a device:
http://<ip of sync gw>:4984/grocery-sync
- If you are using the Genymotion emulator:
-
Build and run the app.
-
Add items and they should be visible on the Sync Gateway Admin UI at [http://localhost:4985/_admin/] (http://localhost:4985/_admin/).
By default, this project depends on the Couchbase Lite maven artifacts. However, it can also depend on the CBLite code directly, which is useful if you need to modify the Couchbase Lite code. (Note: if you are using maven artifacts, since we ship the source code artifacts, you should already be able to browse the code and debug)
See the build.gradle and settings.gradle files for instructions on how to do this.
If you would rather run the project via the command line, you can do the following:
- Run the android emulator
- Run
./gradlew clean && ./gradlew installDebug
- Switch to the emulator and you should have a new app called GrocerySync-Android
- Tap it to open the app
If you would rather compile the project with couchbase lite source codes, you can do the following:
- Open
sttings.gradle
, remove/*
and*/
. - Open
build.gradle
inGrocerySync-Android
folder, comment outcompile 'com.couchbase.lite:couchbase-lite-android:1.1.0'
and remove//
forcompile project(':libraries:couchbase-lite-android')
,compile project(':libraries:couchbase-lite-java-core')
, andcompile project(':libraries:couchbase-lite-java-native:sqlite-default')
.
See the Getting Started Guide.
See Getting Help