簡體   English   中英

Java Client Android在虛擬設備上正在運行,但在實際設備上卻無法運行

[英]Java Client Android On virtual device is working, on real device not

在虛擬設備上正在工作,在真實設備上卻沒有。 檢查所有IP,許多端口,但什么也沒有。

安卓7.1.1 Lenovopad TB-X304F

在清單中:

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

碼:

public class MainActivity extends AppCompatActivity {

EditText e1;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    e1 = (EditText)findViewById(R.id.editText);
}

public void send_text(View v) {
    String message = e1.getText().toString();
    myTask mt = new myTask();
    mt.execute(message);

    Toast.makeText(getApplicationContext(),"Data sent: "+e1.getText().toString(), Toast.LENGTH_LONG).show();
}

class myTask extends AsyncTask<String, Void, Void>{
    Socket s;
    PrintWriter printWriter;

    @Override
    protected Void doInBackground(String... params){
        try {
            String message = params[0];
            s = new Socket("192.168.1.5", 6001);
            printWriter = new PrintWriter(s.getOutputStream());
            printWriter.write(message);
            printWriter.flush();
            printWriter.close();

        } catch (IOException e) {
            e.printStackTrace();
        }
        return null;
    }
}

錯誤:

W / System.err:java.net.ConnectException:連接超時

錯誤是我不知道必須禁用防火牆並打開端口。 我打開了端口,一切正常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM