Hà Nội Cách hoạt động việc truy cập dịch vụ Web trong Android

Thảo luận trong 'Quảng cáo tổng hợp' bắt đầu bởi nerudite, 29/12/15.

  1. nerudite

    nerudite New Member

    Phần này, các bạn sẽ được học cách thức hoạt động việc truy cập dịch vụ Web trong lập trình android . Phương pháp Definition() đầu tiên mở ra một kết nối HTTP đến dịch vụ Web, đi qua trong từ mà bạn quan tâm:

    Mã:
    in=OpenHttpConnection(“http://services.aonaware.com/DictService/DictService.asmx/Define?word=”+word);
    Sau đó sử dụng các đối tượng DocumentBuilderFactoryDocumentBuilder để có được một tài liệu (DOM) đối tượng từ một tập tin XML khi lập trình android(đó là kết quả XML trả về bởi các dịch vụ Web):

    Mã:
    db=dbf.new DocumentBuilder();doc=db.parse(in);}catch(ParserConfigurationException e){//TODOAuto-generatedcatchblocke.printStackTrace();}catch(Exceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}doc.getDocumentElement().normalize();
    Khi các đối tượng tài liệu thu được, bạn sẽ tìm thấy tất cả các yếu tố với các tag <Definition>

    Mã:
    //---retrieveallthe<Definition>nodes---NodeList itemNodes= doc.getElementsByTagName(“Definition”);
    Hình dưới đây cho thấy cấu trúc của tài liệu XML được trả về bởi các dịch vụ Web.
    [​IMG]
    Như định nghĩa của một từ được chứa trong phần tử <WordDefinition>, sau đó bạn tiến hành giải nén tất cả các định nghĩa:

    Mã:
    String strDefinition=“”;for(inti=0;i<definitionElements.getLength();i++){Node itemNode=definitionElements.item(i);if(itemNode.getNodeType()==Node.ELEMENT_NODE){//---converttheNodeintoanElement---Element definitionElement=(Element)itemNode;//---getallthe<WordDefinition>elementsunder//the<Definition>element---NodeList wordDefinitionElements=(definitionElement).getElementsByTagName(“WordDefinition”);strDefinition=“”;for(intj=0;j<wordDefinitionElements.getLength();j++){//---converta<WordDefinition>NodeintoanElement---ElementwordDefinitionElement=(Element)wordDefinitionElements.item(j);//---getallthechildnodesunderthe//<WordDefinition>element---NodeList textNodes=(Node)wordDefinitionElement).getChildNodes();(//---getthefirstnode,whichcontainsthetext---strDefinition+=((Node)textNodes.item(0)).getNodeValue()+“.“;}//---displaythetitle---Toast.makeText(getBaseContext(),strDefinition,Toast.LENGTH_SHORT).show();}}}catch(IOExceptione1){Toast.makeText(this, e1.getLocalizedMessage(),Toast.LENGTH_LONG).show();e1.printStackTrace();}
    Các vòng trên thông qua tất cả các <Definition> yếu tố và sau đó cho mỗi <Definition> yếu tố nó sẽ cho một phần tử con tên là <WordDefinition>. Các nội dung văn bản của phần tử <WordDefinition> chứa các định nghĩa của một từ. Lớp Toast hiển thị mỗi định nghĩa của từ đó được lấy ra.

    ---------------- || ----------------
    Trung tâm Đào tạo hoc php tại hà nọi !
     

Chia sẻ trang này

Đang tải...