1

MonoforAndroidでTCPサーバーを処理できるコードを変換しようとしています。これは、 Windowsチュートリアル用のこのチャットアプリのコードです。ただし、次のエラーが発生します。

ListenForClientアクセスが拒否されました!

これは、コードのこの部分によって作成されます。

try
{
    //We are using TCP sockets
    serverSocket = new Socket(AddressFamily.InterNetwork,
                              SocketType.Stream,
                              ProtocolType.Tcp);

    //Assign the any IP of the machine and listen on port number 1000
    IPEndPoint ipEndPoint = new IPEndPoint(IPAddress.Any, 1000);

    //Bind and listen on the given address
    serverSocket.Bind(ipEndPoint);
    serverSocket.Listen(4);

    //Accept the incoming clients
    serverSocket.BeginAccept(new AsyncCallback(OnAccept), null);
}
catch (Exception ex)
{
    System.Console.WriteLine("@ ListenForClient" + ex.Message);
    Android.Util.Log.Info("ListenForClient", ex.Message);
}

serverSocket.Bind(IPEndPoint);MonoforAndroidでは許可されていないようです。誰かが回避策を知っているか、それが許可されない理由を知っていますか?

4

1 に答える 1

0

解決策を見つけました、それは2つの問題でした、

1)Androidマニフェスト:

<uses-permission android:name="android.permission.INTERNET" />

2)ポート1000が予約されています!

于 2012-05-14T10:04:38.407 に答える