Sử dụng thư viện Android Networking để lấy dữ liệu JSON từ server

Hiện nay, JSON là một kiểu mô tả dữ liệu được sử dụng phổ biến, nhiều công ty sử dụng JSON để gửi dữ liệu cho các ứng dụng Android, iOS hay WindowPhone. Để có thể đọc được dữ liệu dạng JSON cho ứng dụng Android có rất nhiều cách, bạn có thể sử dụng apache (hiện nay không còn phổ biến nữa) hoặc sử dụng các thư viện như: Volley (google), Retrofit (Square), ... Hôm nay mình xin giới thiêu một thư viện mà mình hay sử dụng vì sự đơn giản, dễ hiểu, dễ sử dụng của nó. Đó là thư viện Android Networking. Chúng ta hãy thử tạo một project Android với công cụ Android Studio để thấy được sự đơn giản của thư viện trên nhé 😄

1. Bước 1: Tạo project Android

2. Bước 2: Thêm quyền INTERNET trong manifest

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

3. Bước 3: Add thư viện vào project

Đặt vào dependencies của file app/build.gradle:

    compile 'com.amitshekhar.android:android-networking:0.3.0'

4. Bước 4: Sử dụng thư viện

Mình có chuẩn bị một link dữ liệu dạng JSON sau http://android-samsung.herokuapp.com/api/category. Chúng ta sẽ đọc dữ liệu này với thư viện trên.

Mở file MainActivity, thêm vào hàm onCreate():


    AndroidNetworking.initialize(getApplicationContext());
    AndroidNetworking.get("http://android-samsung.herokuapp.com/api/category")
                .build()
                .getAsString(new StringRequestListener() {
                    @Override
                    public void onResponse(String response) {
                        Toast.makeText(getBaseContext(), response, Toast.LENGTH_LONG).show();
                    }

                    @Override
                    public void onError(ANError anError) {
                        Toast.makeText(getBaseContext(), anError.toString(), Toast.LENGTH_LONG).show();
                    }
                });

5. Bước 5: Chạy thử project và xem kết qủa

Ở đây mình sử dụng method là get(), dữ liệu callback là String, khi run ứng dụng thì sẽ Toast ra một dòng kết qủa là dữ liệu JSON nếu thành công còn khi thất bại sẽ Toast ra lỗi.

Kết qủa Screenshot from 2016-12-25 22-03-32.png

Bạn thấy rất đơn giản phải không? 😄

Bạn có thể xem thêm thông tin chi tiết tại

https://github.com/amitshekhariitbhu/Fast-Android-Networking