Android Studio нет адреса, связанного с именем хоста с использованием адреса Inet

#java #android #performance #android-studio #inetaddress

#java #Android #Производительность #android-studio #адрес inetaddress

Вопрос:

У меня проблема с моей программой поиска ip в Java, я импортировал адрес Inet и реализовал задачу async и использовал разрешение в манифесте, но все еще показывает ту же проблему. Ошибка: не удается разрешить узел «[Ljava.lang.Строка;@f1679a5»: Нет адреса, связанного с именем хоста Я просматривал весь Интернет, и некоторые из них говорят, что это проблема с эмулятором, но я могу получить доступ к Интернету на своем устройстве, я сделал все, что они рекомендовали, но до сих пор нет решений.

Вот часть кода:

   EditText hostnumber;
TextView output;
Button submit;
ImageView back;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_lookup);
    back = findViewById(R.id.backlearn);

    hostnumber = findViewById(R.id.hostnumber);
    output = findViewById(R.id.outputDecimal);
    submit = findViewById(R.id.submit);

    back.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(Lookup.this, MainActivity.class);
            startActivity(intent);
        }
    });
    submit.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            @SuppressLint("StaticFieldLeak") AsyncTask<String, Void, connection.Result<InetAddress>> task = new AsyncTask<String, Void, connection.Result<InetAddress>>() {
                // NOTE: this method runs in a background thread, you cannot access the View from here
                @Override
                protected connection.Result<InetAddress> doInBackground(String... hostnumber) {
                    connection.Result<InetAddress> resu<
                    try {
                        result = new connection.Result.Success(InetAddress.getByName(String.valueOf(hostnumber)));
                    } catch (UnknownHostException e) {
                        e.printStackTrace();
                        result = new connection.Result.Failure(e);
                    }catch (Exception e) {
                        result = new connection.Result.Failure(e);
                    }

                    return resu<
                }


                @Override
                protected void onPostExecute(connection.Result<InetAddress> result) {
                    if (result instanceof connection.Result.Success) {
                        output.setText((CharSequence) ((connection.Result.Success<InetAddress>) result).data);
                    } else if (result instanceof connection.Result.Failure) {
                       Throwable error = ((connection.Result.Failure<InetAddress>) result).error;
                        Toast.makeText(Lookup.this,"Please Check The Address!: "  error, Toast.LENGTH_SHORT).show();

                    }
                }
            };

            task.execute(hostnumber.toString());
        };
    })
    ;}

}
class connection extends Activity {
    static class Result<T> {
        static class Success<T> extends Result<T> {
            public T data;
            public Success(T data) {
                this.data = data;
            }
        }
        static class Failure<T> extends Result<T> {
            public Throwable error;
            public Failure(Throwable error) {
                this.error = error;
            }
        }
    }
  

Я делаю что-то не так, потому что я так считаю? или какая-то проблема с эмулятором или отладкой со стороны Android Studio. если у вас есть какие-либо решения для этого, я был бы признателен. Заранее спасибо!

Комментарии:

1. Вы тестировали это на реальном телефоне?

2. @navylover Я только что запустил его на реальном устройстве, и та же проблема