首页 文章

Xamarin绑定.aar与Metadata.xml似乎不起作用

提问于
浏览
0

我正在尝试绑定一个用于语音聊天的android SDK(zoom sdk) . 他们有两个.aar文件( zoomcoomonlib.aarzoomsdk.aar

我知道我必须为每个.aar创建单独的绑定项目,然后引用它们 .

虽然绑定 zoomsdk.aar 我收到以下错误

The type `Com.Zipow.Videobox.Onedrive.ErrorEventArgs' already contains a definition for `P0' (CS0102) (B14)

enter image description here

在.aar文件中,我导航到 package com.zipow.videobox.onedrive; 到界面 IODFoldLoaderListener

以下是它的内容

enter image description here

所以似乎方法 onError 的参数 String var1 导致了问题 .

并且xamarin工作室生成 obj/debug/api.xml 确认它(截图下方) onError 将有第一个参数名为 p0
enter image description here

因此,在这种情况下,我更改 metadata.xml 以为此参数提供有意义的名称 .

如下截图:

enter image description here

但即便这样做,我也得到同样的错误 . 那个错误没有解决 . 此外,如果我看到 obj/debug/api/.xml 文件,我看到类 IODFoldLoaderListener 的内容保持不变 .

因此,更改metadata.xml似乎没有任何效果 .

1 回答

  • 0

    你的定义需要改变很多 . 这是一个解决同样问题的例子:

    <attr path="/api/package[@name='com.emarsys.mobileengage.inbox']/interface[@name='ResetBadgeCountResultListener']/method[@name='onError' and count(parameter)=1 and parameter[1][@type='java.lang.Exception']]" name="argsType">ResetBadgeCountResultListenerOnErrorArgs</attr>
    

    请注意此处的 /interfaceargsType 项目,因为您的初始定义不正确 . 然后,您可以将参数更改为字符串,而不是我的示例中的 java.lang.Exception .

相关问题