ソケットを使用してAndroidアプリを開発しています。しかし、Socket soc=new Socket(ip,port)
常に私にSocketTimeoutException
. Java プロジェクトでソケットを使用していますが、問題ありません。しかし、Android プロジェクトではありません。
public static void main(String[] args) {
try{
Socket soc=new Socket("192.168.177.103",8888);
}catch(Exception e){
e.printStackTrace();
}
}
これは問題ありませんが、Android プロジェクトではありません。なんで?
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_mmmm);
new Thread(){
public void run(){
try{
Socket soc=new Socket("192.168.177.103",8888);
}catch(Exception e){
e.printStackTrace();
}
}
}.start();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_mmmm, menu);
return true;
}
誰かが理由を教えてもらえますか? どうもありがとうございました。Androidでソケットを使用する場合の例外の詳細:
java.net.SocketTimeoutException: Connection timed out
at org.apache.harmony.luni.platform.OSNetworkSystem.connect(Native Method)
at dalvik.system.BlockGuard$WrappedNetworkSystem.connect(BlockGuard.java:361)
at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:204)
at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:183)
at java.net.Socket.startupSocket(Socket.java:732)
at java.net.Socket.tryAllAddresses(Socket.java:152)
at java.net.Socket.<init>(Socket.java:211)
at java.net.Socket.<init>(Socket.java:178)
at com.example.mmmmm.MMMMActivity$1.run(MMMMActivity.java:26)