Android学习笔记(十五)

Android学习笔记(十五)

  • XML数据解析
    • Pull解析方式
      1. 获取一个XmlPullParserFactory的实例,并借助该实例得到XmlPullParser对象
      2. 调用XmlPullParser的setInput()方法将服务器返回的XML数据传入
      3. 通过getEventType()可以得到当前的解析事件,通过While循环不断地进行解析,直到解析事件为XmlPullParser.END_DOCUMENT。
      4. 通过getName()方法得到当前节点的名字,从而进行判断获取。
    • SAX解析方式:新建一个类继承自DefaultHandle,重写五个父类的方法
      1. startDocument()//开始XML解析的时候调用,
      2. startElement()//开始解析某个节点的时候调用,
      3. characters()//获取节点内容时调用,
      4. endElement()//完成解析某个节点的时候调用
  • 解析JSON格式数据
    • 使用JSONObject
      1. 得到服务器返回的数据
      2. 将返回的数据传入一个JSONArray对象中,然后循环读取这个JSONArray
      3. JSONArray中每一个元素都是一个JSONObject对象。
      4. 最后调用getString()方法将这些数据取出
    • 使用GSON:可以将一段JSON格式的字符串自动映射成一个对象
      1. 直接调用Person person = gson.fromJson(jsonData,Person.class):就可以将JSON数据解析成一个Person对象了
      2. 如果要解析的是一段JSON数组,我们就要借助TypeToken将期望解析成的数据类型传入到fromJson中
  • 基于位置的服务:
    • LocationManager的基本用法:
      1. 获取LocationManager的实例:调用Context的getSystemService()方法获取到,传入Context.LOCATION_SERVICE。
      2. 选择一个位置提供器:GPS_PROVIDER(GPS定位,精确度高、费电)、NETWORK_PROVIDER(网络定位、精确度低、耗电低)和PASSIVE_PROVIDER.将选择好的位置提供器传入到getLastKnownLocation()方法中,得到一个Location对象。
      3. 通过requestLocationUpdates()方法,传入一个LocationListener实例。requestLocationUpdate()方法传入四个参数,第一个参数是位置提供器的类型,第二个参数是监听位置变化的时间间隔,第三个参数是监听位置变化的距离间隔,第四个参数是LocationListener监听器.
    • 反向地址编码:Geocoding API的用法
      1. 发送一个HTTP请求给谷歌的服务器,再对返回的JSON数据进行解析
      2. 开一期各子线程,然后使用HttpClient去请求这个地址,且在HttpGet中添加一个消息头,将语言类型指定为中文
      3. 对服务器返回的JSON数据进行解析,服务器会返回一组位置信息,这些信息都是放在reults节点下,只要获取其中的第一条就可以了。
      4. 从formatted_address节点中取出格式化的位置信息。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值