Как я могу подключиться из моего приложения Android к WebApi? - PullRequest
0 голосов
/ 11 марта 2019

У меня есть приложение WebApi, и я сериализовал свои данные на ПК localhost. Я хочу видеть эти данные в приложении Android. И я написал приложение с библиотекой okhttp3. Но это не сработало, когда я заменил свой URL реальным URL, например: api url для монетоприемника работает хорошо. Что интересно, когда я пишу свой локальный адрес, он не выдает никакой ошибки, это просто закрывает приложение на моем телефоне. Вот мои коды:

public class MainActivity extends AppCompatActivity {
private TextView mTextViewResult;
private Button ExecuteButton;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    mTextViewResult = findViewById(R.id.text_wiev_result);
    ExecuteButton = findViewById(R.id.btnCallMethod);

    OkHttpClient client = new OkHttpClient();
    String url = "https://api.coindesk.com/v1/bpi/currentprice.json";
    //String url = "localhost:59085/api/Students";



    ExecuteButton.setOnClickListener(v -> {

        Request request = new Request.Builder()
                .url(url)
                .build();
        client.newCall(request).enqueue(new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {
                e.printStackTrace();
            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                if(response.isSuccessful())
                {
                    final String myResponse = response.body().string();

                    MainActivity.this.runOnUiThread(() -> mTextViewResult.setText(myResponse));
                }

            }
        });
    });

Вот мои данные Json:

Here my Json Datas:

1 Ответ

0 голосов
/ 12 марта 2019

Наконец я решил свою проблему самостоятельно. Честно говоря, необходимо решить много шагов, чтобы решить эту проблему. Я расскажу шаг за шагом.

Шаг 1: Откройте Защитник Windows -> Брандмауэр и защита сети -> Общая сеть -> Закройте защиту для этого.

Шаг: 2 : Установите Jexus Manager, откройте его и перейдите на вкладку сайтов под именем вашего компьютера, щелкните правой кнопкой мыши и добавьте веб-сайт. Укажите имя веб-сайта и выберите путь к веб-приложению в разделе «Физический путь». Дать порт например 61508. Для имени хоста используйте 127.0.0.1, для IP-адреса используйте свой IPv4-адрес и нажмите кнопку ОК.

Шаг 3: На левой стороне щелкните ваше имя сайта и щелкните правой кнопкой мыши на открытой области и перейдите к -> Управление веб-сайтом -> Пуск. И нажмите «Управление веб-сайтом» -> «Обзор» и убедитесь, что ваш веб-сайт работает хорошо.

Шаг 4: Теперь откройте android и установите свой текущий URL-адрес: http://10.0.2.2:61508/api/Students, тогда приложение будет работать хорошо.

...