首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >北欧Dfu文库的Xamarin结合

北欧Dfu文库的Xamarin结合
EN

Stack Overflow用户
提问于 2018-12-19 16:39:42
回答 1查看 543关注 0票数 1

当我试图绑定包含用于android的北欧dfu的aar文件时,我会收到一些错误消息。

BINDINGSGENERATOR :警告BG8604:未为嵌套类型NO.Nordicsemi.Android.Dfu.DfuBaseService.1找到顶级祖先DfuBaseService。BINDINGSGENERATOR :警告BG8604:未找到嵌套类型NO.Nordicsemi.Android.Dfu.DfuBaseService.2的顶级祖先DfuBaseService。BINDINGSGENERATOR :警告BG8604:未为嵌套类型NO.Nordicsemi.Android.Dfu.DfuBaseService.3找到顶级祖先DfuBaseService。BINDINGSGENERATOR :警告BG8604:未为嵌套类型NO.Nordicsemi.Android.Dfu.DfuBaseService.4找到顶级祖先DfuBaseService。BINDINGSGENERATOR :警告BG8604:未为嵌套类型NO.Nordicsemi.Android.Dfu.DfuBaseService.5找到顶级祖先DfuBaseService。

这是源代码中的类声明:

代码语言:javascript
复制
public abstract class DfuBaseService extends IntentService implements DfuProgressInfo.ProgressListener {}

我尝试将这个添加到metadata.xml中:

代码语言:javascript
复制
<attr path="/api/package[@name='no.nordicsemi.android.dfu']/class[@name='DfuBaseService']" name="extends">mono.android.app.IntentService</attr>

但是,我得到了一个额外的错误:

/Users/laerdaldeveloper/Projects/NordicDfuPlayground/NordicDfuPlayground/Transforms/Metadata.xml(11,6)警告BG8A04:不匹配节点。

这是特别令人沮丧的,因为我在一年前成功地绑定了这个库:(对于我可能尝试的东西有什么建议吗?

我也尝试在编译aar之前公开这个类,但是没有帮助(我还添加了一个空类,以验证我已经绑定了更改)。

EN

回答 1

Stack Overflow用户

发布于 2018-12-20 07:51:15

我在https://gist.github.com/JonDouglas/dda6d8ace7d071b0e8cb上仔细看了看就知道了

默认的vs(至少在mac上)似乎是“类解析”,在这种情况下没有给出多少合理的错误(至少我发现了这种错误)。一旦我切换到jar2xml:

代码语言:javascript
复制
<AndroidClassParser>jar2xml</AndroidClassParser>

我发现了一个错误:

JARTOXML :警告android/support/v4/app/NotificationCompat$Builder :在反映no.nordicsemi.android.dfu.DfuBaseService :no.nordicsemi.android.dfu.DfuBaseService时引发了类错误

所以我只需要添加Xamarin.Android.Support.v4,并且修复这个,https://github.com/xamarin/AndroidSupportComponents/issues/124#issuecomment-440782832,然后它工作了.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53855574

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档