【发布时间】:2014-10-20 18:53:36
【问题描述】:
我是 Xamarin 的新手,必须创建一个跨平台库(iOS、Android、Win Phone)。我很难创建一个适用于这 3 个平台的 pcl。
例如,这个 pcl 需要与打印机建立一个套接字连接。
在 pcl 中我不能使用 System.Net.Sockets 所以我的想法是创建一个方法并尝试使用共享项目调用他的代码。
当我执行代码时,会跳过#if __ANDROID__ .中的代码
PCL
public class Class1
{
public void socket()
{
Conecta.Class oi = new Conecta.Class();
oi.conecta();
}
}
共享代码
#if __ANDROID__
using System.Net.Sockets;
#endif
namespace Conecta
{
class Class
{
public void conecta()
{
#if __ANDROID__
System.Net.Sockets.TcpClient clientSocket = new System.Net.Sockets.TcpClient();
clientSocket.Connect("192.168.210.171", 4002);
NetworkStream serverStream = clientSocket.GetStream();
byte[] outStream = System.Text.Encoding.ASCII.GetBytes("teste \n");
serverStream.Write(outStream, 0, outStream.Length);
serverStream.Flush();
#endif
}
}
}
这只是一个测试,代码并不复杂 有人可以帮助我吗? 还有什么想法吗?
【问题讨论】:
标签: android sockets visual-studio-2013 xamarin cross-platform