MonoDroid缺乏对System.IO.Ports的支持

时间:2011-04-13 18:36:02

标签: xamarin.android

我有一个用C#.NET 4.0编写的应用程序。我考虑使用MonoDroid使其在Android系统上运行。事实上,应用程序在很大程度上依赖于.NET Framework命名空间System.IO.Ports,它在MonoDroid中似乎不存在。我有什么解决方案,所以我仍然可以使用MonoDroid?

2 个答案:

答案 0 :(得分:2)

我已经为Mono for Android添加了串口支持的增强请求:

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

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

还有android-serialport-api ...但是wiki还建议recompiling the kernel

假设你想要“正常”使用(在Android Market上部署等),我不确定串口是否可以任何形式支持。

答案 1 :(得分:-1)

如果您只需要一些简单的代码构造,可以从mono github repo中获取一些代码。当然,并不是主单声道回购中的所有内容都可以在MonoDroid中运行,但是像枚举这样的东西应该没有问题地复制/粘贴。但最终,据我所见,你没有在Android中获得实际的串口。

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

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