小编典典

最初, 您必须建立一个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();

/* conn.*/

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 itemsList;

Item item;

String data;

String type;

private String tempVal;

//Create the Constructor

public XMLParser(String data){

itemsList = new ArrayList();

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);

}

}

/*

* Exceptions need to be handled MalformedURLException

* ParserConfigurationException IOException SAXException

*/

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 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 code

// 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 purposes

public class FetchList extends asyncTask{

doinbackground{

// this was explained in first step

Response res = new Response("url");

String response = res.getResponse();

XmlParser xml = new XmlParser(response);

ArrayList itemList = xml.getItemList();

xml.parse();

}

}

好了,仅此而已。

2020-07-27

android web service视频教程,需要一个简单的android / webservice工作教程?相关推荐

  1. Web Service入门简介(一个简单的WebService示例)

    一.Web Service简介 1.1.Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intrane ...

  2. Android apps浅析01-Amazed:一个简单但令人上瘾的加速度为基础的大理石指导游戏。

    Android apps浅析01-Amazed:一个简单但令人上瘾的加速度为基础的大理石指导游戏. 这个例子中只有4个类,一个绘制大理石类Marble,一个绘制迷宫类Maze,一个Amazed视图类, ...

  3. Android apps浅析01-Amazed:一个简单但令人上瘾的加速度为基础的大理石指导游戏。...

    Android apps浅析01-Amazed:一个简单但令人上瘾的加速度为基础的大理石指导游戏. 这个例子中只有4个类,一个绘制大理石类Marble,一个绘制迷宫类Maze,一个Amazed视图类, ...

  4. android实现mysql数据库存储_一个简单的Android端对象代理数据库系统的实现(二、执行+存储)...

    这是我之前在武汉大学彭智勇老师那边做过的一个对象代理数据库系统.文中给出了一整个系统的几乎所有代码,经测试可正常运行.文章比较长,超出了知乎的最长文章范围,因此分为两篇文章.这是第二篇. 执行 执行部 ...

  5. android计算器功能实现,在android中利用 studio实现一个简单的计算器功能

    在android中利用 studio实现一个简单的计算器功能 发布时间:2020-11-07 15:35:20 来源:亿速云 阅读:168 作者:Leah 这篇文章将为大家详细讲解有关在android ...

  6. 一个简单的android便签app

    一个简单的android便签app 源码下载 MainActivity.java package com.zp.myfirstapp;import java.io.File; import java. ...

  7. 搜索引擎快捷导航:一个简单的chrome插件(教程)

    搜索引擎快捷导航 使用方法 :下载crx扩展名文件,拖入chrome应用管理界面即可 github地址:https://github.com/mouday/chrome-search-tool 编写一 ...

  8. diybox路由器设置教程_一个简单的无线路由器入门设置教程,非常实用

    原标题:一个简单的无线路由器入门设置教程,非常实用 分享给朋友们一个简单的无线路由器入门设置教程,教大家怎么使用无线路由器.如何设置使用,非常实用. 一.无线路由器基本使用方法 1.拿到手的无线路由器 ...

  9. 一个简单的Android音乐播放器

    在这里主要是用两个简单的按钮实现音乐的播放和停止功能,工程的目录结构为: 同时添加一个文件夹,里面放后缀为mp3的文件就可以了. 在main配置文件主要是添加两个Button: 添加一个activit ...

  10. android做一个音乐播放器,制作一个简单的Android版的音乐播放器

    音乐播放器是一个非常常见的应用,这篇博客就是介绍如何制作一个简单的音乐播放器,这款音乐播放器具有以下的功能:播放歌曲.暂停播放歌曲..显示歌曲的总时长.显示歌曲的当前播放时长.调节滑块可以将歌曲调节到 ...

最新文章

  1. 下行物理信道rs_信道估计与均衡
  2. linux查看python环境变量_Linux中的Python环境变量
  3. Research Fellow、Research Assistant、predoc等的区别
  4. 传输设备,光端机的应用及故障分析
  5. [css] 你知道的等高布局有多少种?写出来
  6. unix修改服务器时间格式,处理unix中的日期格式
  7. mysql 触发器 库存管理_Mysql中的触发器(库存、用户订单中用到)
  8. 开源如何走向商业化?
  9. xml格式的word转为标准格式_保持的怎么保证Word格式不变?4个技巧需要带走
  10. nodejs导出导入_NodeJS导出和导入模块
  11. 【并发】关于并发、超卖处理的思路
  12. Atitit.软件仪表盘(8)--os子系统--资源占用监测
  13. Live Writer 2011 , OutLook 2010,FeedDemon软件的设置,Silverlight Tools 4 和 Windows Phone Tools 的安装...
  14. 程序员需要未雨绸缪,搞点副业,别把鸡蛋放在一个篮子里,要不然真的很危险
  15. python爬取微博评论数据的github链接_GitHub - 13633825898/weiboSpider: 新浪微博爬虫,用python爬取新浪微博数据...
  16. 生产计划为何难实施?
  17. 种草营销怎么玩?如何借小红书KOL、KOC笔记种草提升转化效果
  18. PostgreSql 分区表
  19. 超详细MP4格式分析
  20. MySQL数据库--01--一头扎进大沙漠-数据库概述

热门文章

  1. sqlServer2005升级到sqlServer2008R2
  2. JavaScript代码混淆加密 JS不可逆加密 JavaScript在线加密 免费JS代码加密工具
  3. 2018最新qq的服务器地址,腾讯QQ2018正式版新功能详细介绍
  4. cognos java_cognos开发心得
  5. 浏览器自动打开html怎么办,浏览器自动弹出网页怎么处理?开机自动弹出垃圾网页如何解决?...
  6. unity相关的javascript脚本:unity圣典学习笔记————MonoBehaviour
  7. PMP项目管理学习心得分享
  8. android poi导出excel,解决java poi导出excel2003不能超过65536行的问题
  9. 从零开始的FPGA学习4-比较器、全加器
  10. QTP10.0下载及安装说明