我正在尝试将 Mixpanel 集成到我的 Xamarin.Android 项目中。但是当我打电话时Com.Mixpanel.Android.Mpmetrics.MixpanelAPI.GetInstance()
,java.lang.NoClassDefFoundError
会抛出异常消息com/mixpanel/android/mpmetrics/MixpanelAPI。
我刚刚构建了 MixpanelAPI.jar,然后创建了“Android Java 绑定库”项目,将 jar 添加为 InputJar(也尝试了 EmbeddedJar),然后构建了 dll 并将其导入到我的项目中。
jar tf MixpanelAPI.jar
显示所有类,javap
显示有效的类接口。装配浏览器还显示所有类。但是当涉及到时class_ref
get
,就会抛出异常。
我无法理解我做错了什么。
堆栈跟踪:
[MonoDroid] UNHANDLED EXCEPTION: Java.Lang.NoClassDefFoundError: Exception of type 'Java.Lang.NoClassDefFoundError' was thrown. [MonoDroid] at Android.Runtime.JNIEnv.FindClass (string) [0x00087] in /Users/builder/data/lanes/monodroid-mlion-monodroid-4.8.0-branch/b76e8ec4/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.cs:287 [MonoDroid] at Android.Runtime.JNIEnv.FindClass (string,intptr&) [0x00014] in /Users/builder/data/lanes/monodroid-mlion-monodroid-4.8.0-branch/b76e8ec4/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.cs:300 [MonoDroid] at Com.Mixpanel.Android.Mpmetrics.MixpanelAPI.get_class_ref () [0x00000] in /path/to/mixpanel/bindings/project/Mixpanel/Mixpanel/obj/Release/generated/src/Com.Mixpanel.Android.Mpmetrics.MixpanelAPI.cs:1047 [MonoDroid] at Com.Mixpanel.Android.Mpmetrics.MixpanelAPI.GetInstance (Android.Content.Context,string) [0x00014] in /path/to/mixpanel/bindings/project/Mixpanel/Mixpanel/obj/Release/generated/src/Com.Mixpanel.Android.Mpmetrics.MixpanelAPI.cs:1199