http android club 2015. Сегодня json get запрос post запрос

18
HTTP ANDROID CLUB 2015

Upload: eleanore-dawson

Post on 17-Jan-2016

228 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

HTTPANDROID CLUB 2015

Page 2: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

Сегодня

JSON GET запрос POST запрос

Page 3: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

JSON

Формат данных для обмена JavaScript Object Notation

Page 4: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

JSON vs XML

JSON: компактный JSON: читабельный XML: CDATA

Page 5: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

JSON объектпример

{

"id":1,

"firstname":"Joe",

"lastname":"Richard”

}

Page 6: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

JSON объектпрактика

Создавайте JSON объект для книги author: Фридрих Ницше title: Так говорил Заратустра year: 1885

Page 7: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

JSON массив: пример[

{

"id":1,

"firstname":"Joe",

"lastname":"Richard"

},

{

"id":2,

"firstname":"Kain",

"lastname":"Saridzawa"},

{

"id":3,

"firstname":"Otabek",

"lastname":"Rakhimov"

}

]

Page 8: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

JSON массивпрактика

Создавайте JSON массив из 3 объектов (книг)

3 ваших любимых книг

Page 9: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

Android Asynchronous Http Client

Основана на Apache HTTP Работает вне потока UI Компактная: 90kb GET, POST Instagram, Pinterest, Spotify

Page 10: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

GET vs POST

GET не меняет данные в сервере POST меняет данные в сервере

Page 11: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

GET запроспример

AsyncHttpClient client = new AsyncHttpClient();client.get("http://jsonip.com", new AsyncHttpResponseHandler() { @Override public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) { String json = new String(responseBody); TextView tvJson = (TextView) findViewById(R.id.tvJson); tvJson.setText(json); }

@Override public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {

}});

Page 12: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

GET запроспрактика

Получите данные: http://www.telize.com/geoip?callback=ваш ip адрес

Показывайте JSON в TextView

Page 13: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

GET запроспрактика 2

http://androidclub.uz/api/test/lessons/android.php

Показывайте JSON в TextView

Page 14: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

Разобрать JSONпример

1. POJO

2. Лист POJO

3. Layout

4. BaseAdapter

5. ListView

Page 15: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

Разобрать JSONпрактика

http://androidclub.uz/api/test/lessons/java.php Показывайте список уроков по Java в

ListView

Page 16: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

POST запроспример

RequestParams params = new RequestParams();params.add("title", "Test");params.add("description", "Будет тест");

AsyncHttpClient client = new AsyncHttpClient(); client.get("http://androidclub.uz/api/test/lessons/add_android.php", new AsyncHttpResponseHandler() { @Override public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) { String json = new String(responseBody); TextView tvJson = (TextView) findViewById(R.id.tvJson); tvJson.setText(json); }

@Override public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {

}});

Page 17: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

POST запроспрактика

http://androidclub.uz/api/test/lessons/add_java.php

Добавьте урока в лист уроков Java

Page 18: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос

Домашнее задание

http://joerichard.net/api/tw/tw.json