iOS绑定项目构建但不可用

时间:2018-03-09 09:14:49

标签: ios objective-c xamarin binding

我上周一直在为iOS SDK创建一个绑定项目。我已经完成了Xamarin开发人员指南演练中的步骤,我在Mac上创建了.a库并运行了sharpie工具来创建ApiDefinitions和Structs。然后,我创建了绑定项目,并将ApiDefinitions和Structs中的库和代码放入相关文件中。我收到了很多错误消息,并且已经解决了,所以现在项目已成功构建。

我的问题是我现在似乎无法对该项目做任何事情。当我在Visual Studio对象浏览器中查看它时,它下面不会显示任何类。我可以在iOS项目中引用它,但我似乎无法在一个类中使用它。

我想知道是否有人对可能出错的事情有任何想法。任何建议都表示赞赏。

谢谢, 斯蒂芬。

2 个答案:

答案 0 :(得分:0)

为了帮助您,需要使用Objective-sharpie命令行(您使用的是什么)。有些库没有伞头文件(在这种情况下我手动创建),而sharpie无法找到表面API的c / objc声明。

还有其他选项可以从sharpie命令行传递给clang(非常简单)。

无论如何需要更多信息。

答案 1 :(得分:0)

谢谢Moljac, 我使用的sharpie命令是: sharpie bind --output = BrightcoveIos --namespace = BrightcoveSDK --scope =。/ Brightcove.Ios / --sdk = iphoneod11.2 ./BrightcoveIos/BrightcovePlayerSDK.h 其中./Brightcove.Ios/是包含所有.h文件的文件夹,而BrightcovePlayerSDK.h是调用所有其他文件的主文件。 BrightcovePlayerSDK.h像这样开始:

// BrightcovePlayerSDK.h

//BrightcovePlayerSDK

// Copyright (c) 2018 Brightcove, Inc. All rights reserved.

// License: https://accounts.brightcove.com/en/terms-and-conditions

#import <Foundation/Foundation.h>

#import <UIKit/UIKit.h>

FOUNDATION_EXPORT const unsigned char BrightcovePlayerSDKVersionString[];

#import "BCOVPlaybackService.h"

#import "BCOVPlaybackServiceRequestFactory.h"

#import "NSDictionary+BCOVURLSupport.h"

#import "BCOVPlayerSDKManager.h"

#import "BCOVBasicSessionProvider.h"

#import "BCOVCuePointProgressPolicy.h"

我不确定这是否突出了任何问题?

谢谢, 斯蒂芬。