1. Trang chủ
  2. » Công Nghệ Thông Tin

Lập trình android phần 4

310 294 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 310
Dung lượng 11,52 MB

Nội dung

Bài 46: Sử dụng .Net Webservice trong AndroidBài 47: Xử lý tin nhắn SMS bằng BroadCastReceiverBài 48: Cách sử dụng Facebook SDK trong AndroidBài 49: Cách debug ứng dụng trên thiết bị Android bằng WIFI (không cần cắm USB Cable)Bài 50: Cách sử dụng Google Cloud Message trong AndroidBài 51: Xử lý JSON trong AndroidBài 52: Tạo định dạng JSON trong C asp.net service vs AndroidBài 57: Xây dựng phần mềm nghe trộm Tin Nhắn trong AndroidBài 58: Làm quen với môi trường lập trình Android Studio – Phần 1Bài 59: Làm quen với môi trường lập trình Android Studio – Phần 2Bài 60: Cấu hình Hardware Accelerated Execution để chạy máy ảo Android 5.0Bài 61: Cách đưa định dạng JSon về Java class bằng GSonBài 62: Cách đưa định dạng JSon về Java class bằng GSon (tiếp 1)Bài 63: Cách đưa định dạng JSon về Java class bằng GSon (tiếp 2)Bài 65: Xây dựng phần mềm Camera Uploader trong Android StudioBài 66: Cách vẽ các loại biểu đồ trong Android bằng AChartEngineBài 67: Cài đặt Google Play Service cho máy ảo Genymotion

Lập trình Android phần (the and) Bài 46: Sử dụng Net Webservice Android Bài 47: Xử lý tin nhắn SMS BroadCastReceiver Bài 48: Cách sử dụng Facebook SDK Android Bài 49: Cách debug ứng dụng thiết bị Android WIFI (không cần cắm USB Cable) Bài 50: Cách sử dụng Google Cloud Message Android Bài 51: Xử lý JSON Android Bài 52: Tạo định dạng JSON C# asp.net service vs Android Bài 57: Xây dựng phần mềm nghe trộm Tin Nhắn Android Bài 58: Làm quen với môi trường lập trình Android Studio – Phần Bài 59: Làm quen với môi trường lập trình Android Studio – Phần Bài 60: Cấu hình Hardware Accelerated Execution để chạy máy ảo Android 5.0 Bài 61: Cách đưa định dạng JSon Java class GSon Bài 62: Cách đưa định dạng JSon Java class GSon (tiếp 1) Bài 63: Cách đưa định dạng JSon Java class GSon (tiếp 2) Bài 65: Xây dựng phần mềm Camera Uploader Android Studio Bài 66: Cách vẽ loại biểu đồ Android AChartEngine Bài 67: Cài đặt Google Play Service cho máy ảo Genymotion Bài 46: Sử dụng Net Webservice Android Để làm 46 bạn nên xem qua trước tập 44 45 Trong tập 46 Tui muốn trình bày ví dụ cách tương tác từ Android tới net web service thông qua thư viện KSOAP API Các ví dụ là: 1) Cách lấy liệu Primitive Data từ net webservice xuống Android 2) Cách lấy liệu Complex Data từ net webservice xuống Android 3) Cách truyền Parameter primitive data từ Android tới net web service 4) Cách truyền Object data từ Android tới net web service Thư viện KSOAP API bạn tải (tạm thời tự nghiên cứu trước): http://www.mediafire.com/download/kmznar1je4702ga/ksoap2-androidassembly-2.6.0-jar-with-dependencies.jar Tui tranh thủ đưa ví dụ để bạn kịp làm tập 43 —————————————————————————— Tất ví dụ Tui sử dụng Service Description http://testdrthanh.somee.com/mywebservice.asmx?WSDL tập trước Khi bạn mở với Service description cung cấp cho bạn đầy đủ thông tin hình Tui chụp đây: NameSpace tên hàm quan trọng để dựa vào ta truy xuất liệu, nên sai namespace hay method chắn truy suất Sau tui hướng dẫn bạn ví dụ Các phải : 1) Cách lấy liệu Primitive Data từ net webservice xuống Android – Bạn tạo Project Android giống hình Tui chụp này: Bạn ý Tui đánh thứ tự từ 1, 2, 3, có ý đồ kỹ thuật Bạn phải xếp chương trình sử dụng thư viện truy suất webservice, đặt sai báo lỗi thực thi ứng dụng Mặc định bạn tạo Project không thứ tự đâu, bạn phải tự làm lại thứ tự, cách đổi thứ tự Tui nói rõ cho bạn Tiếp tới bạn phải tham chiếu tới thự Viện KSOAP API mà tui khoanh màu đỏ, bạn lưu đâu bạn tham chiếu tới cho đúng, bạn nhét vào thư viện libs (bấm chuột phải vào Project / chọn Build Path/ chọn Add External Archives –> chọn thư viện KSOAP API để add vào ứng dụng) – Cách đổi thứ tự tham chiếu sau: Bấm chuột phải vào Project bạn/ chọn Build Path/Configure build path…: Cửa sổ hiển thị lên/chọn tab Order and export: Ta xếp hình trên, để di chuyển dùng nút : Up,down, top, bottom Bạn ý phải đảm bảo tất mục CHECKED bấm nút OK – Sau giao diện (rất đơn giản) project sau: – Nút “Get Catalog count” triệu gọi Service trả có Danh mục Cơ sở liệu – Cấu trúc XML giao diện: 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 – Ta tiến hành xử lý coding MainActivity.java sau: 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 package tranduythanh.com; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.SoapPrimitive; import org.ksoap2.serialization.SoapSerializationEnvelope; import org.ksoap2.transport.HttpTransportSE; import import import import import import android.os.Bundle; android.os.StrictMode; android.app.Activity; android.view.View; android.widget.Button; android.widget.TextView; public class MainActivity extends Activity { TextView txtcount; Button btncount; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //thiết lập Permit để kết nối internet StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder() permitAll().build(); StrictMode.setThreadPolicy(policy); txtcount=(TextView) findViewById(R.id.txtcount); btncount=(Button) findViewById(R.id.btncount); btncount.setOnClickListener(new View.OnClickListener() { public void onClick(View arg0) { doCount(); } }); } 30 31 32 33 34 35 public void doCount(){ 36 try{ 37 //khai báo namespace Webservice 38 final String NAMESPACE="http://tranduythanh.com/"; //hàm cần truy suất 39 final String METHOD_NAME="CountCatalog"; 40 final String SOAP_ACTION=NAMESPACE+METHOD_NAME; 41 //service description 42 final String URL="http://testdrthanh.somee.com/mywebservice.asmx?WSDL"; 43 //khai báo đối tượng SoapOBject SoapObject request=new SoapObject(NAMESPACE, METHOD_NAME); 44 //thiết lập version 45 SoapSerializationEnvelope envelope= 46 new SoapSerializationEnvelope(SoapEnvelope.VER11); 47 envelope.dotNet=true; //thiết lập output 48 envelope.setOutputSoapObject(request); 49 //tạo đối tượng HttpTransportSE 50 HttpTransportSE androidHttpTransport= 51 new HttpTransportSE(URL); 52 //tiến hành triệu gọi Service androidHttpTransport.call(SOAP_ACTION, envelope); 53 //lấy kết trả SoapPrimitive, hàm CountCatalog trả kiểu 54 int (primitive data) 55 SoapPrimitive response=(SoapPrimitive) envelope.getResponse(); 56 //hiển thị kết lên giao diện 57 txtcount.setText(response.toString()); } 58 catch(Exception e) { 59 e.printStackTrace(); 60 } 61 } }//end MainActivity 62 63 64 65 66 67 – Bạn quan sát dòng lệnh: StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder() permitAll().build(); StrictMode.setThreadPolicy(policy); Dòng lệnh cho phép ứng dụng kết nối tới internet, ý cách làm không TỐT, phải sửa lại Từ Android 4.0 yêu cầu kết nối internet phải viết Tiểu Trình (dùng đa tiến trình, bạn xem lại ví dụ trước) Còn viết bên TUI viết dở, làm Đơ Ứng Dụng phải Time Request, giải pháp tình để bạn dễ hiểu Bạn nên xóa dòng lệnh bên đi, đưa hàm doCount() vào tiểu trình (bạn dùng Handler class AsyncTask class), cách làm đa tiến trình Tui hướng dẫn kỹ lưỡng trước, bạn tự làm (nếu không làm chưa đạt) Bạn tải source code (nhớ down đổi lại tham chiếu tới thư viện KSOAP), bạn nên nhét vào thư mục Libs để chép tới nơi khác tham chiếu lại: http://www.mediafire.com/download/wo4211x3ra3x7q3/LearnWebservice_ForPrimi tiveData.rar Bạn phải ý làm nhiều lần hiểu rõ vấn đề 2) Cách lấy liệu Complex Data từ net webservice xuống Android – Ở phần Bạn biết cách truy suất webservice trả liệu Primivite data, Tui hướng dẫn bạn lấy liệu dạng Complex Data – Cách cấu hình tham chiếu thư viện, đổi thứ tự tham chiếu … mục tui nói, mục Tui thẳng vào ứng dụng: – Tui muốn tạo Ứng dụng cho phép triệu gọi danh sách Danh Mục Sản phẩm từ webservice với giao diện vô đơn giản sau (bạn tạo ứng dụng tên LearnWebservice_complex_data): – Ứng dụng triệu gọi hàm : getListCatalog – Nó khác biệt trả danh sách đối tượng Danh Mục, làm để ta lấy danh sách đối tượng nafy??? – Sau XML Layout ứng dụng: 10 11 12 13 14 15 Đến bạn cài đặt Google Play Service thành công Bước 6: Bật On GPS máy ảo Genymotion Từ hình máy ảo Genymotion, bạn bấm vào nút có chữ GPS, bật On hình đây: Bây bạn chạy phần mềm có liên quan tới Google Play Service mà bạn viết, không báo lỗi hình tui chụp, bạn kết sau: Bạn ý sử dụng máy ảo Genymotion có phiên mới gần giùm Tui nhé, từ thời Lạc Long Quân tán Âu Cơ bỏ ... import android. os.Bundle; android. os.StrictMode; android. app.Activity; android. content.Intent; android. view.View; android. widget.AdapterView.OnItemClickListener; android. widget.AdapterView; android. widget.ArrayAdapter;... import import android. os.Bundle; android. os.StrictMode; android. renderscript.Mesh.Primitive; android. app.Activity; android. view.Menu; android. view.View; android. view.View.OnClickListener; android. widget.ArrayAdapter;...

Ngày đăng: 09/08/2017, 09:11

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w