aboutsummaryrefslogtreecommitdiffhomepage
path: root/examples
diff options
context:
space:
mode:
authorGravatar Steven Dee <steven@choosemuse.com>2015-08-03 09:53:26 +0000
committerGravatar Damien Martin-Guillerez <dmarting@google.com>2015-08-04 09:07:21 +0000
commit6082c78c9436045863dc999011050e44ab9afe7e (patch)
tree2f44f59024eb0688723800f9dce13e615e0731dd /examples
parente0adfc693f7ee42aba5713f4ef2336e86835ff0b (diff)
New-style android example
- Make the jni target depend on another cc_library. - Disable legacy native support in hello_world. - Make MainActivity load hello_world rather than jni. -- Change-Id: I497ba680eec4e16ee14628294d2c1260db69ad82 Reviewed-on: https://bazel-review.googlesource.com/#/c/1740/ MOS_MIGRATED_REVID=99709707
Diffstat (limited to 'examples')
-rw-r--r--examples/android/java/bazel/BUILD7
-rw-r--r--examples/android/java/bazel/MainActivity.java2
-rw-r--r--examples/android/java/bazel/jni.cc17
-rw-r--r--examples/android/java/bazel/jni_dep.cc17
-rw-r--r--examples/android/java/bazel/jni_dep.h5
5 files changed, 32 insertions, 16 deletions
diff --git a/examples/android/java/bazel/BUILD b/examples/android/java/bazel/BUILD
index 1a6ebe7e76..69973a4567 100644
--- a/examples/android/java/bazel/BUILD
+++ b/examples/android/java/bazel/BUILD
@@ -9,6 +9,7 @@ android_binary(
"MainActivity.java",
"Jni.java",
]),
+ legacy_native_support = 0,
manifest = "AndroidManifest.xml",
deps = [
":jni",
@@ -19,4 +20,10 @@ android_binary(
cc_library(
name = "jni",
srcs = ["jni.cc"],
+ deps = [":jni_dep"],
+)
+
+cc_library(
+ name = "jni_dep",
+ srcs = ["jni_dep.cc"],
)
diff --git a/examples/android/java/bazel/MainActivity.java b/examples/android/java/bazel/MainActivity.java
index c50cd4ac02..4fdecd708f 100644
--- a/examples/android/java/bazel/MainActivity.java
+++ b/examples/android/java/bazel/MainActivity.java
@@ -14,7 +14,7 @@ public class MainActivity extends Activity {
Log.v("Bazel", "Hello, Android");
Log.v("Bazel", "Lib says: " + Lib.message());
- System.loadLibrary("jni");
+ System.loadLibrary("hello_world");
Log.v("Bazel", "JNI says: " + Jni.hello());
}
}
diff --git a/examples/android/java/bazel/jni.cc b/examples/android/java/bazel/jni.cc
index b103f45145..7a6cf865e4 100644
--- a/examples/android/java/bazel/jni.cc
+++ b/examples/android/java/bazel/jni.cc
@@ -1,21 +1,8 @@
#include <jni.h>
-#include <stdlib.h>
-#include <string.h>
-const char* hello = "Hello JNI";
-
-static jstring NewStringLatin1(JNIEnv *env, const char *str) {
- int len = strlen(str);
- jchar *str1;
- str1 = reinterpret_cast<jchar *>(malloc(len * sizeof(jchar)));
+#include "examples/android/java/bazel/jni_dep.h"
- for (int i = 0; i < len ; i++) {
- str1[i] = (unsigned char) str[i];
- }
- jstring result = env->NewString(str1, len);
- free(str1);
- return result;
-}
+const char* hello = "Hello JNI";
extern "C" JNIEXPORT jstring JNICALL
Java_bazel_Jni_hello(JNIEnv *env, jclass clazz) {
diff --git a/examples/android/java/bazel/jni_dep.cc b/examples/android/java/bazel/jni_dep.cc
new file mode 100644
index 0000000000..bc6b605fe9
--- /dev/null
+++ b/examples/android/java/bazel/jni_dep.cc
@@ -0,0 +1,17 @@
+#include "examples/android/java/bazel/jni_dep.h"
+
+#include <stdlib.h>
+#include <string.h>
+
+jstring NewStringLatin1(JNIEnv *env, const char *str) {
+ int len = strlen(str);
+ jchar *str1;
+ str1 = reinterpret_cast<jchar *>(malloc(len * sizeof(jchar)));
+
+ for (int i = 0; i < len; i++) {
+ str1[i] = (unsigned char)str[i];
+ }
+ jstring result = env->NewString(str1, len);
+ free(str1);
+ return result;
+}
diff --git a/examples/android/java/bazel/jni_dep.h b/examples/android/java/bazel/jni_dep.h
new file mode 100644
index 0000000000..05db52a487
--- /dev/null
+++ b/examples/android/java/bazel/jni_dep.h
@@ -0,0 +1,5 @@
+#pragma once
+
+#include <jni.h>
+
+jstring NewStringLatin1(JNIEnv *env, const char *str);