栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

需要一个简单的android / webservice工作教程?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

需要一个简单的android / webservice工作教程?

最初, 您必须建立一个http连接,以便可以从api获得响应,无论是xml响应还是json响应。您可以使用以下代码。
使班级与活动分开。:-

public class Response {String get_url, response;Activity activity;public Response(String url){    this.get_url = url;}public String getResponse(){     InputStream in = null;   byte[] data = new byte[1000];        try {   URL url = new URL(get_url);      URLConnection conn = url.openConnection();   conn.connect();    in = conn.getInputStream();   Log.d("Buffer Size +++++++++++++", ""+in.toString().length());   BufferedReader rd = new BufferedReader(new InputStreamReader(in),in.toString().length());   String line;   StringBuilder sb =  new StringBuilder();   while ((line = rd.readLine()) != null) {         sb.append(line);   }   rd.close();   response = sb.toString();  in.read(data);          Log.d("INPUT STREAM PROFILE RESPONSE",response); in.close();        } catch (IOException e1) { Log.d("ConNECTION  ERROR", "+++++++++++++++++++++++++++"); // TODO Auto-generated catch block e1.printStackTrace();        }        return response;}}

您可以像这样在活动中上课:-

Response res = new Response("your_url");String getResponse = res.getResponse();

因此,您可以从api获得响应。

现在,让解析器

         //Extend the class with Default Handler         public class XMLParser extends DefaultHandler {   //You must have basic knowledge about Array List and setter/getter methods   // This is where the data will be stored       ArrayList<Item> itemsList;          Item item;String data; String type;private String tempVal;      //Create the Constructorpublic XMLParser(String data){        itemsList = new ArrayList<Item>();        this.data = data;    }     public byte parse(){ SAXParserFactory spf = null; SAXParser sp = null; InputStream inputStream = null; try {     inputStream = new ByteArrayInputStream(data.getBytes());     spf = SAXParserFactory.newInstance();     if (spf != null) {         sp = spf.newSAXParser();         sp.parse(inputStream, this);     } }  catch (Exception e) {     System.out.println("Exception: " + e);     e.printStackTrace(); } finally {     try {         if (inputStream != null)  inputStream.close();     } catch (Exception e) {     } } if (itemsList != null && itemsList.size() > 0) { //  //Log.d("Array List Size",""+tipsList.get(4).getTitle());     return 1; } else {     return 0; }        }     public ArrayList<Item> getItemList(){         return itemsList;     }   // Here you can check for the xml Tags     @Override    public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {         if(localName.equalsIgnoreCase("item")){  item = new Item();  Log.d("Working", "+++++++++++++++++++++++");         }     }         //tempVal is the variable which stores text temporarily and you      // may save the data in arraylists     public void characters(char[] ch, int start, int length)     throws SAXException { tempVal = new String(ch, start, length);        }     @Override    public void endElement(String uri, String localName, String qName) throws SAXException {         if(localName.equalsIgnoreCase("item")){  itemsList.add(item);  Log.d("Working in endelement", "+++++++++++++++++++++++"); item.setTitle(tempVal);        }       }

结合所有这些:

现在让我们看一下活动

         public void oncreate(){    // Do something or mostly the basic pre    // Call the class to initate the connection and get the data      FetchList fl = new FetchList();       fl.execute();       }          //Always better to use async task for these purposespublic class FetchList extends asyncTask<Void,Void,Byte>{     doinbackground{         // this was explained in first step          Response res = new Response("url");          String response = res.getResponse();          XmlParser xml = new XmlParser(response);ArrayList<item> itemList = xml.getItemList();xml.parse();      }     }

好了,仅此而已。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/418401.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号