4
我現在正在關注此問題一段時間。我正在接收端通過套接字將數據從設備發送到設備,我必須將此數據從套接字發送到設備本身。 localhost/127.0.0.1/10.0.0.2
或WiFi地址不起作用。將套接字連接到設備上的本地地址
如何在設備上將數據從套接字發送到localhost:port
?
try
{
Socket socket = new Socket(InetAddress.getLocalHost(), 1500);
InputStream is = s.getInputStream();
OutputStream os = socket.getOutputStream();
int bufferSize = 1024;
byte[] buffer = new byte[bufferSize];
int len = 0;
while ((len = is.read(buffer)) > 0)
{
if(is.available() > 1024){
os.write(buffer);
Log.i(TAG, "localSocket writing: " + buffer.length);
}
try
{
Thread.sleep(100);
}
catch (InterruptedException e)
{
Log.e(TAG, "LocalSocketThread" + e.toString());
}
}
}
和我的清單權限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
數據到達端口44444,現在我想通過套接字轉發數據到本地主機。我試圖連接到「10.0.2.2」,「127.0.0.1」,「本地主機」和自己的無線地址與DatagramSocket和套接字到這個地址。我知道他們是設備的環回地址,但我怎樣才能連接到他們? – 2013-02-28 14:07:11
請發佈你的'AndroidManifest.xml'和你的* full *方法代碼。嘗試一條線不構成嘗試。 – Phil 2013-02-28 14:10:27
你的清單?你要求什麼權限? – Phil 2013-02-28 14:21:04