Android中怎么调用C的函数
发表于:2025-01-25 作者:千家信息网编辑
千家信息网最后更新 2025年01月25日,Android中怎么调用C的函数,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。activity_main.xml
千家信息网最后更新 2025年01月25日Android中怎么调用C的函数
Android中怎么调用C的函数,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
activity_main.xml
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
android:id="@+id/sample_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
按钮里面加上了onCLick的事件名称为btnclick,我们通过Alt+Enter选择在对应的Activity中创建这个按钮事件。
MainActivity.java
我们回到MainActivity中,其中原来默认的stringFromJni方法就是直接返回了一个字符串,到时候我们看一下源码即可。
接下来我们来试一下带参数的方法怎么实现。
我们新建了一个settextgood的方法,里面有一个输入参数,和一个返回参数。
可以看到,刚定义完的方法显示为红色字体,接下来我们鼠标放到方法名上,然后按ALT+ENTER,选择下方红框中的第一项
程序会自动跳转到native-lib.cpp的文件夹中创建了对应的调用方法
接下来我们编写这个settextgood的方法
extern "C"
JNIEXPORT jstring JNICALL
Java_dem_vac_vaccaendk_MainActivity_settextgood(JNIEnv *env, jobject instance, jstring str_) {
const char *str = env->GetStringUTFChars(str_, 0);
//定义追加的字符
char * addstr=",我是追加的字符";
//定义要输出的字符并设置长度
char * outputstr = new char[strlen(str)+strlen(addstr)];
//开始组装输出的字符
//1.传入的字符拷贝进来
strcpy(outputstr,str);
//2.连接刚刚定义的追加字符
strcat(outputstr,addstr);
//释放资源
env->ReleaseStringUTFChars(str_, str);
return env->NewStringUTF(outputstr);
}
最后我们再重新写了一按钮事件,点击进传入一个"Hello"进去。
我们运行一下程序看看
刚进来时显示Hello from C++,我们现在再点击一下测试按钮后看看结果
看完上述内容,你们掌握 Android中怎么调用C的函数的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
方法
字符
按钮
接下来
事件
参数
函数
内容
更多
程序
问题
中创
测试
输出
选择
束手无策
为此
到时候
到时
原因
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
云服务器和域名备案的区别
制作网页需要连接数据库
怎么筛选字符多的数据库
数据库字段插入 into
电视投屏显示不能访问服务器
数据库入门教程第三章第1节
浙江ios系统软件开发
网络安全文明模范人物事件
手机面板尺寸数据库
汉阳软件开发
软件开发开发技术
天津科技大学有互联网金融吗
网络安全六字标语
亿索网络技术有限公司
计算机网络技术的职业偶像
战地一联ban没了怎么找服务器
安徽字节互联网科技有限公司
云端服务器电脑好还是普通电脑好
北碚区天气预报软件开发
互联网领先科技宣传片
数据库文件转换工具
魔兽世界服务器ip
怎么确定软件开发费
DW新建数据库文件
安卓手机qq密码数据库
凯弗克数据库
深圳佑辰网络技术有限公司客服
龙岗网络安全哪家好
河北智慧供应链软件开发定制推荐
重生科技互联网投资小说贴吧