0

我开发了一个 swift 框架作为 xcframework 并为它创建了 xamarin 绑定。在框架中,调用是作为单例类进行的

MyFramework.shared.start()

共享的是一个单例实例

static let shared = MyFramework()

在 Xamarin 中制作 dll 并调用 start 方法后,它会因为在 null 中共享而崩溃。该ApiDefinition.cs文件在下面提供。有人可以帮助如何分配共享实例。

using Foundation;
using ObjCRuntime;

// @interface LeapCreator : NSObject
[BaseType(typeof(NSObject), Name = "_TtC14MyFrameworkSDK11MyFramework")]
[Protocol]
interface MyFramework
{
    // @property (readonly, nonatomic, strong, class) MyFramework * _Nonnull shared;
    [Static]
    [Export("shared", ArgumentSemantic.Strong)]
    MyFramework Shared { get; }

    // -(void)start:(NSString * _Nonnull)apiKey;
    [Export("start:")]
    void Start(string apiKey);
}
4

0 回答 0