diff --git a/README.md b/README.md index e9859aa..1ea4945 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,6 @@ +## V1.0.1 +### 新增: + 调用libcomclientjni.so,通过JNI执行testHello()。 + ## V1.0.0 init \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 95012e8..556ad33 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -26,6 +26,11 @@ android { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } + sourceSets { + main { + jniLibs.srcDirs = ['src/main/jniLibs'] + } + } } dependencies { diff --git a/app/src/main/java/com/example/myjni/MainActivity.java b/app/src/main/java/com/example/myjni/MainActivity.java index 1217beb..5227fa3 100644 --- a/app/src/main/java/com/example/myjni/MainActivity.java +++ b/app/src/main/java/com/example/myjni/MainActivity.java @@ -4,11 +4,16 @@ import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; +import com.myjni.mynative.MyClientCmd; + public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); + + MyClientCmd cmd = new MyClientCmd(); + cmd.callHello(); } } \ No newline at end of file diff --git a/app/src/main/java/com/myjni/mynative/MyClientCmd.java b/app/src/main/java/com/myjni/mynative/MyClientCmd.java new file mode 100644 index 0000000..1444d13 --- /dev/null +++ b/app/src/main/java/com/myjni/mynative/MyClientCmd.java @@ -0,0 +1,13 @@ +package com.myjni.mynative; + +public class MyClientCmd { + static { + System.loadLibrary("comclientjni"); // 注意去掉 lib 前缀和 .so 后缀 + } + + public native void testHello(); + + public void callHello() { + testHello(); + } +} diff --git a/app/src/main/jniLibs/armeabi-v7a/libcomclientjni.so b/app/src/main/jniLibs/armeabi-v7a/libcomclientjni.so new file mode 100644 index 0000000..474fd40 Binary files /dev/null and b/app/src/main/jniLibs/armeabi-v7a/libcomclientjni.so differ