Вам необходимо загрузить файл okHttp jar и включить его в свой проект, если вы используете eclipse или добавляете зависимость в своем build.gradle, если используете студию Android. Вы можете найти здесь инструкции - http://square.github.io/okhttp/
Лучше создать общий класс для сетей и написать общие методы HTTP-запросов (GET, POST и т. Д.), Чтобы их можно было вызывать из любого места приложения, просто передав требуемые параметры.
Теперь, если вы хотите, вы можете добавить его на onclicklistener
Образец примера -
public class GetExample {
OkHttpClient client = new OkHttpClient();
String run(String url) throws IOException {
Request request = new Request.Builder()
.url(url)
.build();
Response response = client.newCall(request).execute();
return response.body().string();
}
public static void main(String[] args) throws IOException {
GetExample example = new GetExample();
String response = example.run("https://raw.github.com/square/okhttp/master/README.md");
System.out.println(response);
}
}
Для onClickListener вы можете написать ниже код в AsyncTask или новую тему (я надеюсь, что вы знаете, как писать AsyncTask или новая тема) -
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url(url)
.build();
Response response = client.newCall(request).execute();
String reponse = response.body().string();
* Например, я хочу использовать его в onclicklistener кнопки. * Тогда почему вы не поместили код там? –
@TimCastelijns Я получаю ошибку. Я использовал запрос без функции, но все же выдавал свою ошибку в приложении logcat и dieing. – Bana
Ну, какая ошибка? NetworkOnMainThreadException? –