Binding Xamarin:使用本机库

Binding Xamarin:使用本机库,binding,native,xamarin,Binding,Native,Xamarin,1) 在iOS和Android本机库可用的情况下,为了使用该库开发跨平台应用程序,应该采取哪些适当、高效和更简单的步骤?绑定Android库还是iOS?如果我们绑定Android本机库,我们是否能够在Xamarin.iOS应用程序中使用该绑定库,反之亦然 2)在A+C++库的可用性下,是否可以使用该库开发跨平台应用程序? 提前谢谢 (只是Xamarin的初学者,如果这个问题似乎不合适,请原谅) 本机iOS和Android库通常是完全不同的(iOS库通常用Objective-C编写,Androi

1) 在iOS和Android本机库可用的情况下,为了使用该库开发跨平台应用程序,应该采取哪些适当、高效和更简单的步骤?绑定Android库还是iOS?如果我们绑定Android本机库,我们是否能够在Xamarin.iOS应用程序中使用该绑定库,反之亦然

2)在A+C++库的可用性下,是否可以使用该库开发跨平台应用程序? 提前谢谢

(只是Xamarin的初学者,如果这个问题似乎不合适,请原谅)

  • 本机iOS和Android库通常是完全不同的(iOS库通常用Objective-C编写,Android库用Java编写),因此每个库的绑定都会有所不同。即使API相同,Objective-C和Java之间的差异也足以使绑定也必须不同

  • 是的,在iOS和Android项目中使用C++是可能的,但是机制是不同的。这里有几个选项:

      使用一个工具,如为C++库创建托管绑定。这也是一本有趣的书

      < L> > p>创建C库,该C库封装C++库,然后使用托管代码中可用的标准P/VoCK机制与C库进行交互。


    谢谢我使用的库不包含特定于平台的代码,仅用于将设备连接到远程服务器。这个库可以在ObjtoVoC、java和C++上使用。我需要它的绑定才能作为C#类库访问。那么,如果我绑定这些库中的任何一个,我是否能够跨不同的Xamarin项目使用它们?例如:如果我将可用的java库绑定到C#,我是否也可以在我的Xamarin.iOS项目中使用此绑定库?不,您将无法在iOS上使用java绑定(或java库本身),因为java只在Android上运行。但是,你应该能够在iOS和Android上使用C++版本(并且在这种情况下托管绑定也可以共享)。所以,现在我决定在我的跨平台应用程序上使用库的C++版本。谢谢。