diff --git a/android-app/src/main/AndroidManifest.xml b/android-app/src/main/AndroidManifest.xml
index 7fb9d39..8f90bf8 100644
--- a/android-app/src/main/AndroidManifest.xml
+++ b/android-app/src/main/AndroidManifest.xml
@@ -25,6 +25,9 @@
+
+
+
-
+
\ No newline at end of file
diff --git a/android-app/src/main/java/io/objectbox/example/ErrorActivity.java b/android-app/src/main/java/io/objectbox/example/ErrorActivity.java
new file mode 100644
index 0000000..b89efa4
--- /dev/null
+++ b/android-app/src/main/java/io/objectbox/example/ErrorActivity.java
@@ -0,0 +1,14 @@
+package io.objectbox.example;
+
+import android.app.Activity;
+import android.os.Bundle;
+
+public class ErrorActivity extends Activity {
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_error);
+ }
+
+}
diff --git a/android-app/src/main/java/io/objectbox/example/NoteActivity.java b/android-app/src/main/java/io/objectbox/example/NoteActivity.java
index 0fff8a0..cc670cd 100644
--- a/android-app/src/main/java/io/objectbox/example/NoteActivity.java
+++ b/android-app/src/main/java/io/objectbox/example/NoteActivity.java
@@ -1,6 +1,7 @@
package io.objectbox.example;
import android.app.Activity;
+import android.content.Intent;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
@@ -31,6 +32,13 @@ public class NoteActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
+
+ if (ObjectBox.get() == null) {
+ startActivity(new Intent(this, ErrorActivity.class));
+ finish();
+ return;
+ }
+
setContentView(R.layout.main);
setUpViews();
diff --git a/android-app/src/main/java/io/objectbox/example/ObjectBox.java b/android-app/src/main/java/io/objectbox/example/ObjectBox.java
index 83353db..e353bb8 100644
--- a/android-app/src/main/java/io/objectbox/example/ObjectBox.java
+++ b/android-app/src/main/java/io/objectbox/example/ObjectBox.java
@@ -11,14 +11,19 @@ public class ObjectBox {
private static BoxStore boxStore;
static void init(Context context) {
- boxStore = MyObjectBox.builder()
- .androidContext(context.getApplicationContext())
- .build();
+ try {
+ boxStore = MyObjectBox.builder()
+ .androidContext(context.getApplicationContext())
+ .build();
- if (BuildConfig.DEBUG) {
- new AndroidObjectBrowser(boxStore).start(context.getApplicationContext());
- Log.d(App.TAG, String.format("Using ObjectBox %s (%s)",
- BoxStore.getVersion(), BoxStore.getVersionNative()));
+ if (BuildConfig.DEBUG) {
+ new AndroidObjectBrowser(boxStore).start(context.getApplicationContext());
+ Log.d(App.TAG, String.format("Using ObjectBox %s (%s)",
+ BoxStore.getVersion(), BoxStore.getVersionNative()));
+ }
+ } catch (LinkageError e) {
+ boxStore = null;
+ Log.e(App.TAG, "Failed to load ObjectBox: " + e.getMessage());
}
}
diff --git a/android-app/src/main/res/layout/activity_error.xml b/android-app/src/main/res/layout/activity_error.xml
new file mode 100644
index 0000000..64c183e
--- /dev/null
+++ b/android-app/src/main/res/layout/activity_error.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
\ No newline at end of file