c# – Xamarin绑定“Wrapper type”缺少其原生ObjectiveC类
发布时间:2020-12-16 02:02:13 所属栏目:百科 来源:网络整理
导读:我正在尝试将外部附件MSR SDK绑定到Xamarin.注意,这是在设备上.它根本不适用于模拟器.我一直收到这个错误: Wrapper type 'iMagProII.IMag' is missing its native ObjectiveC class 'IMag'. 这是我的.cs与我的链接器标志: [assembly: LinkWith ("libiMagSD
我正在尝试将外部附件MSR SDK绑定到Xamarin.注意,这是在设备上.它根本不适用于模拟器.我一直收到这个错误:
Wrapper type 'iMagProII.IMag' is missing its native ObjectiveC class 'IMag'. 这是我的.cs与我的链接器标志: [assembly: LinkWith ("libiMagSDK.a",LinkTarget = LinkTarget.ArmV6 | LinkTarget.ArmV7 | LinkTarget.Simulator,SmartLink = true,ForceLoad = true,IsCxx = true,Frameworks = "CoreGraphics ExternalAccessory",LinkerFlags="-lsqlite3.0 -lc++")] 这是堆栈跟踪: at MonoTouch.Registrar.DynamicRegistrar.OnRegisterType (MonoTouch.Registrar.ObjCType type) [0x00334] in /Developer/MonoTouch/Source/monotouch/src/ObjCRuntime/.pmcs-compat.DynamicRegistrar.cs:573 at MonoTouch.Registrar.Registrar.RegisterTypeUnsafe (System.Type type,System.Collections.Generic.List`1& exceptions) [0x009a4] in /Developer/MonoTouch/Source/monotouch/src/ObjCRuntime/.pmcs-compat.Registrar.cs:1027 at MonoTouch.Registrar.Registrar.RegisterType (System.Type type,System.Collections.Generic.List`1& exceptions) [0x00011] in /Developer/MonoTouch/Source/monotouch/src/ObjCRuntime/.pmcs-compat.Registrar.cs:680 at MonoTouch.Registrar.DynamicRegistrar.Register (System.Type type) [0x00002] in /Developer/MonoTouch/Source/monotouch/src/ObjCRuntime/.pmcs-compat.DynamicRegistrar.cs:839 at MonoTouch.ObjCRuntime.Class.Register (System.Type type) [0x00000] in /Developer/MonoTouch/Source/monotouch/src/ObjCRuntime/.pmcs-compat.Class.cs:126 at MonoTouch.ObjCRuntime.Class.GetHandle (System.Type type) [0x00000] in <filename unknown>:0 at MonoTouch.Foundation.NSObject.AllocIfNeeded () [0x00015] in /Developer/MonoTouch/Source/maccore/src/Foundation/.pmcs-compat.NSObject2.cs:390 at MonoTouch.Foundation.NSObject..ctor (MonoTouch.Foundation.NSObjectFlag x) [0x00006] in /Developer/MonoTouch/Source/maccore/src/Foundation/.pmcs-compat.NSObject2.cs:102 at iMagProII.IMag..ctor () [0x00000] in /Users//Projects/Xamarin/Bindings/Unimag/iMagProII/obj/Debug/ios/iMagProII/IMag.g.cs:112 at iMagProII.iOS.ImagViewController.ViewDidLoad () [0x0005c] in /Users//Projects/Xamarin/Bindings/Unimag/iMagProII.iOS/ImagViewController.cs:46 at (wrapper managed-to-native) MonoTouch.ObjCRuntime.Messaging:IntPtr_objc_msgSendSuper (intptr,intptr) at MonoTouch.UIKit.UIViewController.get_View () [0x00030] in /Developer/MonoTouch/Source/monotouch/src/build/compat/UIKit/.pmcs-compat.UIViewController.g.cs:2232 at iMagProII.iOS.ImagViewController..ctor () [0x00008] in /Users//Projects/Xamarin/Bindings/Unimag/iMagProII.iOS/ImagViewController.cs:23 at iMagProII.iOS.AppDelegate.FinishedLaunching (MonoTouch.UIKit.UIApplication app,MonoTouch.Foundation.NSDictionary options) [0x00016] in /Users//Projects/Xamarin/Bindings/Unimag/iMagProII.iOS/AppDelegate.cs:33 at (wrapper managed-to-native) MonoTouch.UIKit.UIApplication:UIApplicationMain (int,string[],intptr,intptr) at MonoTouch.UIKit.UIApplication.Main (System.String[] args,System.String principalClassName,System.String delegateClassName) [0x0004c] in /Developer/MonoTouch/Source/monotouch/src/UIKit/.pmcs-compat.UIApplication.cs:38 at iMagProII.iOS.Application.Main (System.String[] args) [0x00008] in /Users//Projects/Xamarin/Bindings/Unimag/iMagProII.iOS/Main.cs:17 任何有关获取此库的帮助将不胜感激.我一直在敲打几个小时. 解决方法
当在最终的可执行文件中找不到类IMag时会发生这种情况.
最常见的原因是: >班级名称中的拼写错误. $lipo -info /path/to/libiMagSDK.a 您还需要知道您正在为应用程序使用的体系结构,您可以在“高级”页面上的项目的iOS Build设置中进行检查.选择本机库包含的一个. $nm -arch armv7 /path/to/libiMagSDK.a | grep IMag 0x0000f00d S _OBJC_CLASS_$_IMag [other results] 上面的结果表明该类包含在本机库中. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |