java getmethodid,JNI在应用程序中检测到错误:JNI GetMethodID调用挂起异常java.lang.ClassNotFoundException:未找到类...

我收到以下错误:

JNI DETECTED ERROR IN APPLICATION:JNI GetMethodID调用挂起异常java.lang.ClassNotFoundException:未在路径上找到类“package.name.class”:DexPathList [[zip file“/system/framework/sample.jar”] ,nativeLibraryDirectories = [/ vendor / lib,/ system / lib]]

JNI DETECTED ERROR IN APPLICATION: JNI GetMethodID called with pending exception java.lang.ClassNotFoundException: Didn't find class "package.name.class" on path: DexPathList[[zip file "/system/framework/XposedBridge.jar"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]

26771-26918/package.name.class A/art: art/runtime/java_vm_ext.cc:410] at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:56)

26771-26918/package.name.class A/art: art/runtime/java_vm_ext.cc:410] at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:511)

26771-26918/package.name.class A/art: art/runtime/java_vm_ext.cc:410] at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:469)

这里有更多关于错误的信息:

`jmethodID MethodId;

JNIEnv * env;

int nStatus = gVM->GetEnv((void**)&env, JNI_VERSION_1_6);

int nResult = attachStatus(nStatus, &env);

LOG_HM("::attach status = %d::\n", nResult);

if (nResult == ATTACH_FAILED) {

LOG_HM("Attach failed");

return ;

}

jclass classClass = env->GetObjectClass(gTotalUsageClass);

auto classLoaderClass = env->FindClass("java/lang/ClassLoader");

auto getClassLoaderMethod = env->GetMethodID(classClass, "getClassLoader",

"()Ljava/lang/ClassLoader;");

gClassLoader = env->CallObjectMethod(gTotalUsageClass, getClassLoaderMethod);

gFindClassMethod = env->GetMethodID(classLoaderClass, "findClass",

"(Ljava/lang/String;)Ljava/lang/Class;");

jclass totalUsage = static_cast(env->CallObjectMethod(gClassLoader, gFindClassMethod, env->NewStringUTF("com/a/a/TotalUsageInfo")));

TotalUsageInfo *info = NULL;

jobject jUsageInfo = NULL;

jlong noOfProc = 0;

jlong memTotal = 0;

jlong memFree = 0;

jlong cache = 0;

jlong buffer = 0;

jlong cpuUtil = 0;

//jclass totalUsage = env->FindClass("com/a/a/TotalUsageInfo");

if (totalUsage == NULL) {

LOG_HM("Class TotalUsageInfo not Found \n");

nResult = FAIL;

detachThread(nResult);

return;

}

else {

LOG_HM("Class TotalUsageInfo Found \n");

}

jmethodID constructor = env->GetMethodID(totalUsage, "", "(JJJJJJ)V");

if (NULL == constructor) {

LOG_HM("JNIGetTotalUsageInfo::TotalUsageInfo constructor not found\n");

nResult = FAIL;

detachThread(nResult);

return ;

}`

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值