《第一行代码》读书笔记 (第十章至第十三章)
2016-07-11 21:07
246 查看
[align=left]第10章 看看精彩的世界,使用网络技术 [/align]
[align=left]
[/align]
[align=left]10.2.1 使用httpURLConnection[/align]
[align=left]1、首先需要获取到httpUrlConnection的实例 [/align]
[align=left]2、传入目标的网络地址[/align]
[align=left]3、然后调用一下openConnection()方法即可[/align]
[align=left]URL url =new URL("http://www.baidu.com")[/align]
[align=left]HttpUrlConnection connection =url.openConnection();[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]10.2.2 使用HttpClient [/align]
[align=left]httpClient 是Apache提供的HTTP网络访问接口,从一开始就被引入到了Android API中。它可以王城和HttpURLConnection几乎一模一样的效果,但两者之间的用法确有较大的差别,那么我们自然要看一下HttpClient是如何使用的了。[/align]
[align=left]1、httpClient是一个接口,因此无法创建它的实例,通常情况下都会创建一个DefaultHttpClient的实例。[/align]
[align=left]2、如果想要发起一条get请求,就可以创建一个HttpGet对象[/align]
[align=left]3、并传入目标的网络地址。[/align]
[align=left]4、然后调用调用httpClient的execute方法即可。[/align]
[align=left]5、如果是发起一条Post请求,就可以创建一个HttpPost对象[/align]
[align=left]6、通过一个NameValuePair集合来存放待提交的参数,[/align]
[align=left]7、并将参数集合传入到一个UrlEncodedFormEntity中。[/align]
[align=left]8、然后调用httpPost的setEntity()方法构建好的UrlEncodedFormEntity传入[/align]
[align=left]
[/align]
[align=left]10.3 解析XML格式数据[/align]
[align=left]
[/align]
[align=left]10.5 网络编程最佳实践 [/align]
[align=left]网络请求通常都是耗时操作,而sendHttpRequest()方法的内部并没有开启线程,这样就有可能导致在调用sendHttpRequest()方法的时候使得主线程被阻塞住。[/align]
[align=left]如果我们在sendHttpRequest()方法中开启了一个线程来发起http请求,那么服务器响应的数据是无法进行返回的,所有的耗时逻辑都是在子线程里进行。sendHttpRequest()方法会在服务器还来得及响应的时候就执行结束了,当然也就无法返回响应的数据了。[/align]
[align=left]
[/align]
[align=left]第11章 Android特色开发,基于位置的服务 [/align]
[align=left]Android中一般有三种位置提供器可供选择,GPS_PROVIDER、NETWORK_PROVIDER和PASSIVE_PROVIDER。其中前两种使用的比较多,分别表示使用GPS定位和使用网络定位,这两种定位方式各有特点,GPS定位的精准度比较高,但是非常耗电。[/align]
[align=left]
[/align]
[align=left]requestLocationUpdates()方法接受四个参数,第一个参数是位置提供器的类型,第二个参数是监听位置变化的时间间隔,以毫秒为单位,第三个参数是监听位置变化的距离间隔,以米为单位,第四个参数是LocationListener监听器。[/align]
[align=left]
[/align]
[align=left]11.3 反向地理编码,看得懂的位置信息[/align]
[align=left]话说,刚才我们虽然成功获取了设备当前位置的经纬度信息,但遗憾的是,这种经纬度一般人是根本看不懂的。[/align]
[align=left]
[/align]
[align=left]第13章 [/align]
[align=left]无论在哪里都能获取到Context。[/align]
[align=left]我们可以定制自己的一个Application类,每当程序启动的时候,系统就会自动将这个类进行初始化。而我们可以定制一个自己的Application类。[/align]
[align=left]
[/align]
[align=left]13.2 使用Intent 传递对象 [/align]
[align=left]
[/align]
[align=left]13.2.1 Serializable方式[/align]
[align=left]使用Intent传递对象通常有两种方式,Seriazlizable和Parcelable。 [/align]
[align=left]Seriazlizable是序列化的意思,表示将一个对象转换成可存储或可传输的状态。序列化后的对象可以在网络上进行传输,也可以存储到本地。至于序列化的方法也很简单,需要让一个类去实现Serializable这个接口就可以了。[/align]
[align=left]
[/align]
[align=left]13.2.2 Parcelable 方式 [/align]
[align=left]除了Seriazable之外,使用pacelable也可以实现相同的效果,不过不同于将对象进行序列化,Parcelable方式的实现原理是将一个完整的对象进行分解,而分解后的每一部分都是Intent所支持的数据类型。[/align]
[align=left]注:读取的顺序和刚才写入的顺序完全相同[/align]
[align=left]
[/align]
[align=left]13.3 定制自己的日志工具[/align]
[align=left]
[/align]
[align=left]10.2.1 使用httpURLConnection[/align]
[align=left]1、首先需要获取到httpUrlConnection的实例 [/align]
[align=left]2、传入目标的网络地址[/align]
[align=left]3、然后调用一下openConnection()方法即可[/align]
[align=left]URL url =new URL("http://www.baidu.com")[/align]
[align=left]HttpUrlConnection connection =url.openConnection();[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]10.2.2 使用HttpClient [/align]
[align=left]httpClient 是Apache提供的HTTP网络访问接口,从一开始就被引入到了Android API中。它可以王城和HttpURLConnection几乎一模一样的效果,但两者之间的用法确有较大的差别,那么我们自然要看一下HttpClient是如何使用的了。[/align]
[align=left]1、httpClient是一个接口,因此无法创建它的实例,通常情况下都会创建一个DefaultHttpClient的实例。[/align]
[align=left]2、如果想要发起一条get请求,就可以创建一个HttpGet对象[/align]
[align=left]3、并传入目标的网络地址。[/align]
[align=left]4、然后调用调用httpClient的execute方法即可。[/align]
[align=left]5、如果是发起一条Post请求,就可以创建一个HttpPost对象[/align]
[align=left]6、通过一个NameValuePair集合来存放待提交的参数,[/align]
[align=left]7、并将参数集合传入到一个UrlEncodedFormEntity中。[/align]
[align=left]8、然后调用httpPost的setEntity()方法构建好的UrlEncodedFormEntity传入[/align]
[align=left]
[/align]
[align=left]10.3 解析XML格式数据[/align]
[align=left]
[/align]
[align=left]10.5 网络编程最佳实践 [/align]
[align=left]网络请求通常都是耗时操作,而sendHttpRequest()方法的内部并没有开启线程,这样就有可能导致在调用sendHttpRequest()方法的时候使得主线程被阻塞住。[/align]
[align=left]如果我们在sendHttpRequest()方法中开启了一个线程来发起http请求,那么服务器响应的数据是无法进行返回的,所有的耗时逻辑都是在子线程里进行。sendHttpRequest()方法会在服务器还来得及响应的时候就执行结束了,当然也就无法返回响应的数据了。[/align]
[align=left]
[/align]
[align=left]第11章 Android特色开发,基于位置的服务 [/align]
[align=left]Android中一般有三种位置提供器可供选择,GPS_PROVIDER、NETWORK_PROVIDER和PASSIVE_PROVIDER。其中前两种使用的比较多,分别表示使用GPS定位和使用网络定位,这两种定位方式各有特点,GPS定位的精准度比较高,但是非常耗电。[/align]
[align=left]
[/align]
[align=left]requestLocationUpdates()方法接受四个参数,第一个参数是位置提供器的类型,第二个参数是监听位置变化的时间间隔,以毫秒为单位,第三个参数是监听位置变化的距离间隔,以米为单位,第四个参数是LocationListener监听器。[/align]
[align=left]
[/align]
[align=left]11.3 反向地理编码,看得懂的位置信息[/align]
[align=left]话说,刚才我们虽然成功获取了设备当前位置的经纬度信息,但遗憾的是,这种经纬度一般人是根本看不懂的。[/align]
[align=left]
[/align]
[align=left]第13章 [/align]
[align=left]无论在哪里都能获取到Context。[/align]
[align=left]我们可以定制自己的一个Application类,每当程序启动的时候,系统就会自动将这个类进行初始化。而我们可以定制一个自己的Application类。[/align]
[align=left]
[/align]
[align=left]13.2 使用Intent 传递对象 [/align]
[align=left]
[/align]
[align=left]13.2.1 Serializable方式[/align]
[align=left]使用Intent传递对象通常有两种方式,Seriazlizable和Parcelable。 [/align]
[align=left]Seriazlizable是序列化的意思,表示将一个对象转换成可存储或可传输的状态。序列化后的对象可以在网络上进行传输,也可以存储到本地。至于序列化的方法也很简单,需要让一个类去实现Serializable这个接口就可以了。[/align]
[align=left]
[/align]
[align=left]13.2.2 Parcelable 方式 [/align]
[align=left]除了Seriazable之外,使用pacelable也可以实现相同的效果,不过不同于将对象进行序列化,Parcelable方式的实现原理是将一个完整的对象进行分解,而分解后的每一部分都是Intent所支持的数据类型。[/align]
[align=left]注:读取的顺序和刚才写入的顺序完全相同[/align]
[align=left]
[/align]
[align=left]13.3 定制自己的日志工具[/align]
相关文章推荐
- 只需十分钟,结果大不同 |《深度思考》
- 《洋葱阅读法》读书笔记
- Jquery实战_读书笔记1―选择jQuery
- JavaScript 精粹读书笔记(1,2)
- JavaScript 权威指南(第四版) 读书笔记
- Terry七月Ruby读书笔记(比较详细)第1/4页
- 整理java读书笔记十五之java中的内部类
- 从「林」开始--C++ primer 读书笔记 -- Part II: Containers ...
- 读书笔记-大型分布式网站架构-设计与实践【陈康贤】
- [读书笔记]Scrum 总结
- 大型网站架构系列:负载均衡详解
- 《穷爸爸,富爸爸》读书笔记
- 《程序员的职业素养》读书笔记
- sniff读书笔记
- 第一行代码Android笔记精华版
- 《Zabbix监控系统深度实践》读书笔记
- 《DevOps故障排除:Linux服务器运维最佳实践》读书笔记
- 重学JS 1
- 《javascript高级程序设计》读书笔记——引用类型之Object类型(细节整理)
- 《HTML重构》读书笔记&思维导图