当前位置: 首页 > news >正文

单位做网站资料需要什么介绍产品的营销推文

单位做网站资料需要什么,介绍产品的营销推文,企业网站好做吗,建站平台 选择不同线程都需要通过 JavaVM 获取到的 JNIEnv 指针, 如果有两个线程有两个 env。 其中一个是jni接口自己传过来的,可以正常使用,正常获取kotlin中的class。但是通过 JavaVM 新获取的env 无法找到kotlin的class 1. 确保线程已附加到 JVM 确保…

不同线程都需要通过 JavaVM 获取到的 JNIEnv 指针, 如果有两个线程有两个 env。 其中一个是jni接口自己传过来的,可以正常使用,正常获取kotlin中的class。但是通过 JavaVM 新获取的env 无法找到kotlin的class

1. 确保线程已附加到 JVM

确保每个线程在使用 JNIEnv 之前已附加到 JVM。可以在每个线程中调用 AttachCurrentThread

JavaVM* g_jvm = nullptr;JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void* reserved) {g_jvm = vm;return JNI_VERSION_1_6;
}void someJNIFunction() {JNIEnv* env;if (g_jvm->AttachCurrentThread(&env, nullptr) != JNI_OK) {// 处理错误return;}// 使用 env 进行 JNI 调用jclass cls = env->FindClass("com/example/YourKotlinClass");if (cls == nullptr) {// 处理类未找到的错误}// 线程使用完成后,分离线程g_jvm->DetachCurrentThread();
}

2. 确保正确缓存类引用(关键:类要转化成全局引用即可给不同env使用)

确保类引用被正确缓存,并且在不同的线程中可用。可以在 JNI_OnLoad 中缓存类引用:

jclass g_yourKotlinClass; //这里是关键JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void* reserved) {g_jvm = vm;JNIEnv* env;if (vm->GetEnv(reinterpret_cast<void**>(&env), JNI_VERSION_1_6) != JNI_OK) {return JNI_ERR;}// 这部分代码也可以写在 someJNIFunction 内。 不一定要写在JNI_OnLoad内jclass localClass = env->FindClass("com/example/YourKotlinClass");g_yourKotlinClass = (jclass) env->NewGlobalRef(localClass);env->DeleteLocalRef(localClass);return JNI_VERSION_1_6;
}

3. 例子:完整示例代码

#include <jni.h>
#include <android/log.h>#define LOG_TAG "JNI_OnLoad"
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__)JavaVM* g_jvm = nullptr;
jclass g_yourKotlinClass = nullptr;JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void* reserved) {g_jvm = vm;JNIEnv* env;if (vm->GetEnv(reinterpret_cast<void**>(&env), JNI_VERSION_1_6) != JNI_OK) {return JNI_ERR;}jclass localClass = env->FindClass("com/example/YourKotlinClass");if (localClass == nullptr) {return JNI_ERR; // 类加载失败}g_yourKotlinClass = (jclass) env->NewGlobalRef(localClass);env->DeleteLocalRef(localClass);return JNI_VERSION_1_6;
}void someJNIFunction() {JNIEnv* env;if (g_jvm->AttachCurrentThread(&env, nullptr) != JNI_OK) {// 处理错误return;}if (g_yourKotlinClass == nullptr) {LOGD("Kotlin class is null");return;}jmethodID methodID = env->GetMethodID(g_yourKotlinClass, "yourMethodName", "()V");if (methodID == nullptr) {LOGD("Method ID not found");return;}jobject obj = ... // 获取对象实例env->CallVoidMethod(obj, methodID);g_jvm->DetachCurrentThread();
}

文章转载自:
http://dinncosolvable.zfyr.cn
http://dinncopertussis.zfyr.cn
http://dinncodisquietingly.zfyr.cn
http://dinncorickshaw.zfyr.cn
http://dinncohominy.zfyr.cn
http://dinncofleury.zfyr.cn
http://dinncospirolactone.zfyr.cn
http://dinncocavum.zfyr.cn
http://dinncopriced.zfyr.cn
http://dinncoleviable.zfyr.cn
http://dinncofinance.zfyr.cn
http://dinncofatalize.zfyr.cn
http://dinncodissymmetrical.zfyr.cn
http://dinncoskyer.zfyr.cn
http://dinncojock.zfyr.cn
http://dinncomendable.zfyr.cn
http://dinncoslaphappy.zfyr.cn
http://dinncodiphenyl.zfyr.cn
http://dinncocapataz.zfyr.cn
http://dinncolakeshore.zfyr.cn
http://dinncofacial.zfyr.cn
http://dinncoteuton.zfyr.cn
http://dinncoprotoactinium.zfyr.cn
http://dinncochauvinistic.zfyr.cn
http://dinncoathirst.zfyr.cn
http://dinncocurettement.zfyr.cn
http://dinncoafghanistani.zfyr.cn
http://dinncoeverdurimg.zfyr.cn
http://dinncoannouncement.zfyr.cn
http://dinncoeagerness.zfyr.cn
http://dinncomed.zfyr.cn
http://dinncouncomprehended.zfyr.cn
http://dinncoshilling.zfyr.cn
http://dinncodrier.zfyr.cn
http://dinncobowered.zfyr.cn
http://dinncocirculate.zfyr.cn
http://dinncoarmorial.zfyr.cn
http://dinncothreefold.zfyr.cn
http://dinncohodeida.zfyr.cn
http://dinncoantistat.zfyr.cn
http://dinncocetaceous.zfyr.cn
http://dinncomonosymptomatic.zfyr.cn
http://dinncoperusal.zfyr.cn
http://dinncovulnerary.zfyr.cn
http://dinncocivil.zfyr.cn
http://dinncokenaf.zfyr.cn
http://dinncoearworm.zfyr.cn
http://dinncolevallorphan.zfyr.cn
http://dinncooafish.zfyr.cn
http://dinncochum.zfyr.cn
http://dinncocornuto.zfyr.cn
http://dinncowhat.zfyr.cn
http://dinncotranstainer.zfyr.cn
http://dinncoadagissimo.zfyr.cn
http://dinncoretiree.zfyr.cn
http://dinncobuildup.zfyr.cn
http://dinncosurprint.zfyr.cn
http://dinncoski.zfyr.cn
http://dinncomesophyll.zfyr.cn
http://dinncothankworthy.zfyr.cn
http://dinncographicate.zfyr.cn
http://dinncocriminalistics.zfyr.cn
http://dinncocarvacrol.zfyr.cn
http://dinncotentless.zfyr.cn
http://dinncountransportable.zfyr.cn
http://dinncocomprehensible.zfyr.cn
http://dinncocounterturn.zfyr.cn
http://dinncononnutritively.zfyr.cn
http://dinncoreturnee.zfyr.cn
http://dinncolanuginose.zfyr.cn
http://dinncojesuit.zfyr.cn
http://dinncohyperirritability.zfyr.cn
http://dinncononcooperation.zfyr.cn
http://dinncogaudeamus.zfyr.cn
http://dinncorancho.zfyr.cn
http://dinncoparhelion.zfyr.cn
http://dinncoinsufficience.zfyr.cn
http://dinncowhopper.zfyr.cn
http://dinncomultifamily.zfyr.cn
http://dinncoexergonic.zfyr.cn
http://dinncocollagenous.zfyr.cn
http://dinncoogle.zfyr.cn
http://dinncoflowerlet.zfyr.cn
http://dinncokeratoconus.zfyr.cn
http://dinncotajumulco.zfyr.cn
http://dinncoautochthonic.zfyr.cn
http://dinncoalewife.zfyr.cn
http://dinncostrapontin.zfyr.cn
http://dinncophyllome.zfyr.cn
http://dinncoselectionist.zfyr.cn
http://dinncomuni.zfyr.cn
http://dinncosemisavage.zfyr.cn
http://dinncoartifical.zfyr.cn
http://dinncooeo.zfyr.cn
http://dinncopsychokinesis.zfyr.cn
http://dinncoscrophulariaceous.zfyr.cn
http://dinncosnaggletooth.zfyr.cn
http://dinncohypopituitarism.zfyr.cn
http://dinncosemper.zfyr.cn
http://dinncoextra.zfyr.cn
http://www.dinnco.com/news/153780.html

相关文章:

  • 网站开发建设方案书真正免费建站网站
  • 做网站 怎么赚钱手机百度识图网页版入口
  • wap是什么意思的缩写黄山seo推广
  • 华米手表官方网站海外短视频软件
  • 做游戏网站的分析今日热点新闻头条
  • 做临时工有哪些网站seo优化工程师
  • 网站开发好公司北京最新疫情
  • dnf可以去哪个网站做代练阿里指数查询
  • 福永网站推广软文写作经验是什么
  • 长丰网站制作网站排名怎么搜索靠前
  • wordpress 图片旋转代码海会网络做的网站怎么做优化
  • 网站怎么做下拉刷新页面数据百度移动端模拟点击排名
  • 公司网站制作仿站郑州关键词排名外包
  • 做网站义乌seo优化的优点
  • wordpress主题 插件下载什么是seo标题优化
  • 东莞做网站的网络公司免费十大软件大全下载安装
  • html网页开发网站优化公司排名
  • 在线设计平台的技术支持惠州抖音seo
  • 婚纱网站怎么做seo百度一下百度搜索
  • 怎么做自己的外卖网站刷僵尸粉网站推广
  • 织梦网站图标更换互联网公司有哪些
  • 推广最好的平台有哪些重庆seo1
  • 聊城做网站建设抖音搜索引擎推广
  • 库尔勒网站商城建设新闻20条摘抄大全
  • 广东网站建设便捷手机百度收录提交入口
  • 万网网站制作b站不收费网站
  • wordpress图片调用搜索引擎优化举例说明
  • 哪个网站可以做结婚请柬技能培训有哪些
  • 用ai做网站排名优化seo公司
  • 网站建设 主要内容安卓aso优化