Bài học thực tế kết nối mạng internet trong lập trình Android

Thảo luận trong 'Lập trình phần mềm' bắt đầu bởi datecom, 11/8/15.

  1. datecom

    datecom Thành Viên Mới

    Tham gia ngày:
    10/7/15
    Bài viết:
    35
    Đã được thích:
    0
    Điểm thành tích:
    6
    Vietpro sẽ chia sẻ với các thành viên diễn đàn bài học tiếp theo của serries lập trình android bài học : Bài 54: Kết nối mạng trong lập trình Android

    Android cho phép ứng dụng của bạn kết nối với Internet hay bất kỳ mạng địa phương khác và cho phép bạn thực hiện các hoạt động mạng. Một thiết bị có thể có các loại khác nhau của các kết nối mạng. Trong bài họclập trình android này tập trung vào việc sử dụng hoặc là một Wi-Fi hoặc kết nối mạng di động.

    1. Kiểm tra kết nối mạng android

    Trước khi bạn thực hiện bất kỳ hoạt động mạng, bạn phải kiểm tra đầu tiên mà bạn kết nối với mạng internet hoặc vv Đối với Android này cung cấp lớp ConnectivityManager . Bạn cần phải nhanh chóng một đối tượng của lớp này bằng cách gọi phương thức getSystemService(). Cú pháp hoc photoshop của nó được đưa ra dưới đây:

    ket-noi-mang-4.png
    Mã:
    ConnectivityManager check = (ConnectivityManager)
    this.context.getSystemService(Context.CONNECTIVITY _SERVICE);
    
    Một khi bạn tạo đối tượng của lớp ConnectivityManager, bạn có thể sử dụng phương pháp getAllNetworkInfo để có được các thông tin của tất cả các mạng. Phương thức này trả về một mảng của NetworkInfo. Vì vậy, bạn phải nhận được nó như thế này.
    Mã:
    NetworkInfo[] info = check.getAllNetworkInfo();
    
    Điều cuối cùng bạn cần làm là kiểm tra kết nối nhà nước của mạng.
    Mã:
    for (int i = 0; i<info.length; i++){
    if (info.getState() == NetworkInfo.State.CONNECTED){
    Toast.makeText(context, "Internet is connected
    Toast.LENGTH_SHORT).show();
    }
    }
    
    Ngoài các quốc gia kết nối này, có những quốc gia khác một mạng có thể đạt được. Cú pháp lap trinh androidcủa nó được đưa ra dưới đây Chúng được liệt kê dưới đây:
    STT State
    • Kết nối(Connecting)
    • Disconnected
    • Ngắt kết nối(Disconnecting)
    • Suspended
    • Unknown
    2. Thực hiện Điều hành Mạng internet

    Sau khi kiểm tra mà bạn đang kết nối với internet, bạn có thể thực hiện bất kỳ hoạt động của mạng. Ở đây chúng ta lấy các html của một trang web từ một url.

    Android cung cấp HttpURLConnection và URL lớp để xử lý các hoạt động này. Bạn cần phải nhanh chóng một đối tượng của lớp URL bằng cách cung cấp các liên kết của trang web. Cú pháp của nó là như sau:
    Mã:
    URL url = new URL(link);
    

    Sau đó bạn cần phải gọi phương pháp openConnection của lớp url và nhận được nó trong một đối tượng HttpURLConnection. Sau đó bạn cần phải gọi phương thức kết nối của lớp HttpURLConnection.
    Mã:
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    conn.connect();
    

    Điều cuối cùng bạn cần là lấy mã HTML từ website. Để làm điều này bạn sẽ sử dụng lớp InputStream và BufferedReader. Cú pháp như sau:
    Mã:
    InputStream is = conn.getInputStream();
    BufferedReader reader =new BufferedReader(new InputStreamReader(is, "UTF-8"));
    String webPage = "",data="";
    
    while ((data = reader.readLine()) != null){
    webPage += data + "\n";
    }
    

    Ngoài các phương thức kết nối này, còn có một số phương thức có sẵn trong lớp HttpURLConnection. Danh sách sau đây:

    STT Phương thức và mô tả

    1 disconnect()
    • Phương pháp này phát hành kết nối này để các nguồn lực của nó có thể được tái sử dụng một trong hai hoặc đóng cửa
    2 getRequestMethod()
    • Phương thức này trả yêu cầu phương thức mà sẽ được sử dụng để tạo yêu cầu để điều khiển HTTP server.
    3 getResponseCode()
    • Phương thức này trả lại dòng lệnh phản hồi từ máy chủ từ xa.
    4 setRequestMethod(String method)
    • Phương thức này thiết lập yêu cầu lênh máy chủ sẽ được gửi để điều khiển máy chủ HTTP từ xa.
    5 usingProxy()
    • Phương thức này trả lại nơi mà kết nối được sử dụng một proxy máy chủ hoặc không.
    3. Ví dụ android

    Ví dụ dưới đây trình bày cách sử dụng HttpURLConnection. Nó tạo một ứng dụng cơ bản cho phép bạn tải HTML từ một web.

    Để thử nghiệm với ví dụ này, bạn cần chạy một thiết bị cái mà có thể kết nối mạng

    Các bước Mô tả
    1. Bạn sẽ sử dụng Android studio để tạo ra một ứng dụng Android dưới một gói com.example.sairamkrishna.myapplication ;. Trong khi tạo dự án này, chắc chắn bạn Target SDK và biên dịch với các phiên bản mới nhất của Android SDK sử dụng các cấp cao hơn của các API.
    2. Sửa file src/MainActivity.java thêm mã Hoạt động.
    3. Sửa đổi bố trí tập tin XML res/layout/activity_main.xml thêm bất kỳ thành phần giao diện nếu cần thiết.
    4. Sửa AndroidManifest.xml để thêm mã cần thiết.
    5. Chạy ứng dụng và chọn một thiết bị Android chạy và cài đặt các ứng dụng trên nó và kiểm tra kết quả. Trung tâm đào tạo học lap trinh android chuyên nghiệp và chuyên về đào tạo hoc php cơ bản nâng cao tại VietPro!
    Nội dung file src/MainActivity.java:
    Mã:
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();
    //noinspection SimplifiableIfStatement
    if (id == R.id.action_settings) {
    return true;
    }
    return super.onOptionsItemSelected(item);
    }
    }
    

    Nội dung file activity_main.xml.
    Mã:
    <Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Button"
    android:id="@+id/button"
    android:layout_below="@+id/imageView"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="76dp" />
    </RelativeLayout>
    

    Nội dung file Strings.xml.
    Mã:
    <resources>
    <string name="app_name">My Application</string>
    <string name="hello_world">Hello world!</string>
    <string name="action_settings">Settings</string>
    </resources>
    

    Nội dung file AndroidManifest.xml
    Mã:
    </application>
    </manifest>
    

    Kết quả sau khi lập trình android hoàn chỉnh:

    • Chọn thiết bị ảo và hiển thị sau:
    • Bây giờ ấn nút và kiểm tra kết nối như thử tải ảnh
    • ket noi mang 3
    • Ra sẽ là như sau và nó có lấy logo từ internet
     
    Cảm ơn đã xem bài:

    Bài học thực tế kết nối mạng internet trong lập trình Android

    Last edited by a moderator: 11/8/15
    Đang tải...


Like và Share ủng hộ ITSEOVN