【问题标题】:Xamarin: Using native libraries in MVVMCrossXamarin:在 MVVMCross 中使用本机库
【发布时间】:2013-05-16 14:09:42
【问题描述】:

构建一个利用原生 C 库(使用 P/Invoke)向远程服务器发送命令的跨平台应用程序,如何构建以适应 MVVMCross 框架?

谢谢!

【问题讨论】:

    标签: xamarin.ios xamarin mvvmcross


    【解决方案1】:

    不清楚您使用的是哪个框架。

    假设是 iOS,请在http://docs.xamarin.com/guides/ios/advanced_topics/native_interop 了解如何使用 P/Invoke

    在 P/Invoke 工作后,如果您需要在 PCL 代码中访问它,那么您需要使用某种形式的依赖注入技术 - 其中一种技术是插件 - https://speakerdeck.com/cirrious/plugins-in-mvvmcross

    【讨论】:

    • 使用原生 C 库(为 iOS 和 Adnroid 编译的两个库)的跨平台应用程序(Android 和 iOS)需要 System.Runtime.interopServices,但配置文件 104 PCL 包含 .NET 子集不包括此程序集。那么,是否仍然可以使用本机 C 库?我们是把对原生库的引用放在 View 项目中还是 PCL 项目中?
    • PCL 用于可移植代码。对于不可移植的代码,您需要将该代码添加到本机库或本机 UI,然后使用接口或抽象从 PCL 中使用它。
    猜你喜欢
    • 2013-03-23
    • 1970-01-01
    • 1970-01-01
    • 2016-01-02
    • 1970-01-01
    • 2012-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多