简介
上篇文章简单树立了创建和调用C++代码以及生成So库一些东西,这里紧接上边梳理一下动态So库生成后的调用问题
环境版本(正常项目配置就可以)
- Android Studio 4.1.3
- Gradle 4.1.3
- buildToolsVersion 30.0.3
- Cmake 3.10.2
1.将生成的So库放入libs文件夹下
2.创建调用的工具类
注意:
工具类的创建需要根据生成so库的时候 cpp文件中声明的方法来生成.
package com.wkq.cdemo;
/**
* @author wkq
* @date 2022年06月28日 16:46
* @des
*/
public class MyJniUtil {
static{
System.loadLibrary("hellow");
}
public static native String stringFromJNI();
}
3.使用so库
package com.wkq.sotest
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.TextView
import com.wkq.cdemo.MyJniUtil
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
findViewById<TextView>(R.id.tv_content).text= MyJniUtil.stringFromJNI()
}
}
总结
上篇文章生成了So库,这里做了个简单的调用