B
Benützername_re_54
Neues Mitglied
- 0
Hallo liebe Leute
und zwar hab ich mich mit Socketverbindungen auseinandergesetzt.
Ich habe eine JAVA-Applikation an meinem PC geschrieben, welches der Server ist (dieser funktioniert einwandfrei).
Mein Problem liegt bei meinem Client "App". Hier ist mal der Code:
MainActivity:
Client
Hier ist die Fehlermeldung ConnectException
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
Könnt ihr mir sagen wo der Fehler liegt?
und zwar hab ich mich mit Socketverbindungen auseinandergesetzt.
Ich habe eine JAVA-Applikation an meinem PC geschrieben, welches der Server ist (dieser funktioniert einwandfrei).
Mein Problem liegt bei meinem Client "App". Hier ist mal der Code:
MainActivity:
Code:
package com.example.coonection;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity implements OnClickListener{
Client client;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button start = (Button) findViewById(R.id.button1);
start.setOnClickListener(this);
Button send = (Button) findViewById(R.id.button2);
send.setOnClickListener(this);
client = new Client();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId()){
case R.id.button1:
new ConnectingThread().start();
break;
case R.id.button2:
new SendingThread().start();
break;
}
}
class ConnectingThread extends Thread{
public void run(){
client.connect();
}
}
class SendingThread extends Thread{
public void run(){
client.writeMessage();
}
}
}
Code:
package com.example.coonection;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class Client {
ObjectInputStream sInput;
ObjectOutputStream sOutput;
Socket clientSocket;
Client(){
}
void connect(){
new ClientThread().start();
}
void writeMessage(){
try {
sOutput.writeObject("ssdsdsd");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
class ClientThread extends Thread{
public void run(){
while(true){
try {
clientSocket = new Socket("localhost", 9999);
sOutput = new ObjectOutputStream(
clientSocket.getOutputStream());
sInput = new ObjectInputStream(
clientSocket.getInputStream());
String message = (String) sInput.readObject();
System.out.println(message);
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
Code:
07-29 21:34:23.074: W/System.err(3472): java.net.ConnectException: failed to connect to localhost/127.0.0.1 (port 9999): connect failed: ECONNREFUSED (Connection refused)
07-29 21:34:23.074: W/System.err(3472): at libcore.io.IoBridge.connect(IoBridge.java:114)
07-29 21:34:23.074: W/System.err(3472): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
07-29 21:34:23.074: W/System.err(3472): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
07-29 21:34:23.074: W/System.err(3472): at java.net.Socket.startupSocket(Socket.java:596)
07-29 21:34:23.074: W/System.err(3472): at java.net.Socket.tryAllAddresses(Socket.java:127)
07-29 21:34:23.079: W/System.err(3472): at java.net.Socket.<init>(Socket.java:177)
07-29 21:34:23.079: W/System.err(3472): at java.net.Socket.<init>(Socket.java:149)
07-29 21:34:23.079: W/System.err(3472): at com.example.coonection.Client$ClientThread.run(Client.java:37)
07-29 21:34:23.079: W/System.err(3472): Caused by: libcore.io.ErrnoException: connect failed: ECONNREFUSED (Connection refused)
07-29 21:34:23.079: W/System.err(3472): at libcore.io.Posix.connect(Native Method)
07-29 21:34:23.079: W/System.err(3472): at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:85)
07-29 21:34:23.079: W/System.err(3472): at libcore.io.IoBridge.connectErrno(IoBridge.java:127)
07-29 21:34:23.079: W/System.err(3472): at libcore.io.IoBridge.connect(IoBridge.java:112)
07-29 21:34:23.079: W/System.err(3472): ... 7 more
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
Könnt ihr mir sagen wo der Fehler liegt?