【问题标题】:MonoDroid lacks support for System.IO.PortsMonoDroid 缺乏对 System.IO.Ports 的支持
【发布时间】:2012-05-23 04:43:54
【问题描述】:

我有一个用 C# .NET 4.0 编写的应用程序。我考虑使用 MonoDroid 让它在 Android 系统上也能运行。问题是,该应用程序严重依赖于 MonoDroid 中似乎不存在的 .NET Framework 命名空间 System.IO.Ports。有什么解决方案适合我,所以我仍然可以使用 MonoDroid?

【问题讨论】:

    标签: xamarin.android


    【解决方案1】:

    我已向 Mono for Android 添加了对串行端口支持的增强请求:

    https://bugzilla.novell.com/show_bug.cgi?id=687407

    但是,我不确定它会有多大用处,因为粗略的搜索表明需要自定义 Linux 内核才能在 Android 上获得 RS232 串行端口支持,所以这可能有点不适合。

    还有android-serialport-api...但维基也建议recompiling the kernel

    假设您希望将其用于“正常”使用(在 Android Market 上部署等),我不确定是否支持任何形式的串行端口。

    【讨论】:

      【解决方案2】:

      如果您只需要一些简单的代码结构,您可以从mono github repo 获取一些代码。当然,并非主要单声道存储库中的所有内容都可以在 MonoDroid 中运行,但是像枚举这样的一些东西应该可以毫无问题地复制/粘贴。最终,据我所知,您在 Android 中并没有真正的串行端口。

      正如其他人所说,可能有一种方法可以将串行破解到您的设备上。但是,您最好探索蓝牙或wifi serial adapter。 (蓝牙 SPP 可用于 Android,但可能不适用于 iOS,因此如果您想同时涵盖两者,则可能需要使用 wifi。)然后您可以创建自己的 System.IO.Ports.SerialPort 实现将其包装在您的MonoDroid 项目。

      我自己没有这样做,但这是我探索过的。

      【讨论】:

        猜你喜欢
        • 2016-11-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-02-17
        • 2016-04-02
        • 2011-06-03
        • 1970-01-01
        相关资源
        最近更新 更多