2

经过一番摸索后,我终于得到了.framework成功绑定文件的 Objective-sharpie,但是ApiDefinition.cs它生成的文件包含一些不规则性。

    // @optional -(void)flyerView:(WFKFlyerView * _Nonnull)flyerView gotSingleTap:(id<WFKFlyerViewTapAnnotation> _Nullable)annotation atPoint:(CGPoint)point;
    [Export("flyerView:gotSingleTap:atPoint:")]
    void FlyerView(WFKFlyerView flyerView, [NullAllowed] WFKFlyerViewTapAnnotation annotation, CGPoint point);

    // @optional -(void)flyerView:(WFKFlyerView * _Nonnull)flyerView gotDoubleTap:(id<WFKFlyerViewTapAnnotation> _Nullable)annotation atPoint:(CGPoint)point;
    [Export("flyerView:gotDoubleTap:atPoint:")]
    void FlyerView(WFKFlyerView flyerView, [NullAllowed] WFKFlyerViewTapAnnotation annotation, CGPoint point);

    // @optional -(void)flyerView:(WFKFlyerView * _Nonnull)flyerView gotLongPress:(id<WFKFlyerViewTapAnnotation> _Nullable)annotation atPoint:(CGPoint)point;
    [Export("flyerView:gotLongPress:atPoint:")]
    void FlyerView(WFKFlyerView flyerView, [NullAllowed] WFKFlyerViewTapAnnotation annotation, CGPoint point);

所以这实际上不会编译,因为 Visual Studio 恰当地指出,尽管方法具有不同的[Export]属性,但它们具有完全相同的定义。我尝试更改它,因此只有一个具有多个[Export]属性的方法,但这也是不允许的。不知道在这里做什么。

using顶部还有一个声明,我认为试图指出Native Reference我已经在 Visual Studio for Mac 的 Xamarin 项目中进行了设置,但它不起作用(type or namespace could not be found are you missing an assembly reference, etc.

非常感谢任何帮助!

4

1 回答 1

2
  1. 通过在生成的代码中注释掉重复的实现来修复警告,即那些具有相同参数的实现等。
  2. 删除了空生成的接口。
  3. 在 ApiDefinition.cs 中注释掉“使用 xxx(你的 SDK 名称)”——不是 100% 确定为什么这是必要的!
于 2018-08-29T00:44:13.950 回答