Html5 调摄像头代码
WebRTC可能是明年最受关注的HTML5标准了,Mozilla为此开发了一套帮助你控制硬件的API,例如,摄像头,麦克风,或者是加速表。你可以不依赖其它的插件来调用你需要的本机硬件设备。
在今天的这篇文章中,我们将介绍来自Wolfram Hempel开发的Photobooth.js,使用这个类库可以帮助你快速的调用摄像头功能,你可以很容易的添加摄像头功能到网站中。并且快速的帮助你拍照,你可以使用这个功能来实现用户的大头照拍摄,是不是非常不错?
HTML5电子书翻页动画特效
HTML5电子书翻页动画特效
HTML5 Canvas圆盘抽奖应用
实现个小例子来达到学习的目的,无疑是最好的。很看到网上有很多已经实现的转盘游戏,自己也试着写了一个,思路是:画一个圆盘,分成10份,设立10个奖项,中间有个指针,点抽奖后旋转指针。
HTML5+CSS3 精美登陆界面源码
3个很精美的登陆界面,全都是用HTML5+CSS3开发的,网下载分享一下
SSH学习Demo
Spring3 struts2 hibernate 4学习Demo能正常运行数据库为mysql,实现用户登录、登录成功后信息展示等功能。
HTML5高级程序设计第二版
第1章 HTML5概述
第2章 Canvas API
第3章 音频和视频
第4章 GELOLCATION API
第5章 Communication API
第6章 WebSockets API
第7章 Forms API
第8章 Web Workers API
第9章 Web Storage API
第10章 构建离线Web应用
第11章 HTML5未来展望
HTML5做的超级玛丽游戏
HTML5做的超级玛丽源码,小时候玩的游戏,怀旧版
无插件拖拽上传图片
HTM5 无插件拖拽上传图片 ,分享给需要的人
爱情表白专用html5动画网页的代码
程序猿表白专用的html5动画特效网页,真的挺羡慕创作者的水平,有这水平可以把爱表白给想表白的人,不要以为那些鲜花是用的图片,你会发现在资源文件中没有一个图片资源,但HTML5强大的功能不能不让你惊叹,左侧的文字是类似打字效果的动画形式,因IE9以前的浏览器不支持HTML5,所以你在查看本效果的时候,最后使用火狐浏览器或Chrome浏览器或Google浏览器。
PLSQL Developer 11.0.0.1762 中文绿色注册版(免Oracle11g客户端
PLSQL Developer 11.0.0.1762 中文绿色注册版(免Oracle11g客户端,真正好用oracle客户端
js图片轮播:VCD包装盒个性幻灯片
网站学习下载的 分享出来给大家学习使用下载
HTML5移动Web开发实战源码
很好Html5移动开发技术源码,我学习时把代码写下来打包,分享出来。
HTML5移动Web开发实战
HTML5移动Web开发实战》提供了应对这一挑战的解决方案。通过阅读本书,你将了解如何有效地利用最新的HTML5的那些针对移动网站的功能,横跨多个移动平台。全书共分10章,从移动Web、设备端配置和优化,变互、响应式设计、设备访问,调试、性能测试、富媒体等角度出发,包含了60多个实用的示倒,详细阐释如何构建快速、响应式的HTML5移动网站,适用于iOS、Android、Windows Phone和BlackBerry等众多主流移动应用平台。
HTML5 3D相册
程序员给女朋友用HTML5制作的3D相册感觉挺漂亮。 整理里一个自己可以换相片
27个后台管理界面设计
27个后台管理界面设计,包含普通后台、网站后台、应用后台等,非常好的模板
仿淘宝查看商品
实现的仿淘宝查看商品图片变大变清晰的功能
UCENTERPHT
UCENTERUCENTERUCENTERUCENTERUCENTER
Phpstudy学习资料
Phpstudy学习资料
webzip webzip
webzip 非常好的离线浏览工具
可下载任何网站资源到本地
oa 系统管理 登录页面
oa 系统管理 登录页面
88个andriod开发实例程序
88个andriod开发实例程序
Android多分辨率规格的界面设计
Android多分辨率规格的界面设计
andriod精华学习教程
ANR定义
在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户
显示一个对话框,这个对话框称作应用程序无响应(ANR:Application Not
Responding)对话框。用户可以选择让程序继续运行,但是,他们在使用你的应
用程序时,并不希望每次都要处理这个对话框。因此,在程序里对响应性能的设
计很重要,这样,系统不会显示ANR给用户。
如何避免:
考虑上面的ANR定义,让我们来研究一下为什么它会在Android应用程序里发生和
如何最佳构建应用程序来避免ANR。
Android应用程序通常是运行在一个单独的线程(例如,main)里。这意味着你
的应用程序所做的事情如果在主线程里占用了太长的时间的话,就会引发ANR对
话框,因为你的应用程序并没有给自己机会来处理输入事件或者Intent广播。
因此,运行在主线程里的任何方法都尽可能少做事情。特别是,Activity应该在
它的关键生命周期方法(如onCreate()和onResume())里尽可能少的去做创建操
作。潜在的耗时操作,例如网络或数据库操作,或者高耗时的计算如改变位图尺
寸,应该在子线程里(或者以数据库操作为例,通过异步请求的方式)来完成。
然而,不是说你的主线程阻塞在那里等待子线程的完成——也不是调用
Thread.wait()或是Thread.sleep()。替代的方法是,主线程应该为子线程提供
一个Handler,以便完成时能够提交给主线程。以这种方式设计你的应用程序,
将能保证你的主线程保持对输入的响应性并能避免由于5秒输入事件的超时引发
的ANR对话框。这种做法应该在其它显示UI的线程里效仿,因为它们都受相同的
超时影响。
IntentReceiver执行时间的特殊限制意味着它应该做:在后台里做小的、琐碎的
工作如保存设定或者注册一个Notification。和在主线程里调用的其它方法一样
,应用程序应该避免在BroadcastReceiver里做耗时的操作或计算。但不再是在
子线程里做这些任务(因为BroadcastReceiver的生命周期短),替代的是,如
果响应Intent广播需要执行一个耗时的动作的话,应用程序应该启动一个
Service。顺便提及一句,你也应该避免在Intent Receiver里启动一个Activity
,因为它会创建一个新的画面,并从当前用户正在运行的程序上抢夺焦点。如果
你的应用程序在响应Intent广播时需要向用户展示什么,你应该使用
Notification Manager来实现。
一般来说,在应用程序里,100到200ms是用户能感知阻滞的时间阈值。因此,这
里有一些额外的技巧来避免ANR,并有助于让你的应用程序看起来有响应性。
如果你的应用程序为响应用户输入正在后台工作的话,可以显示工作的进度
(ProgressBar和ProgressDialog对这种情况来说很有用)。
特别是游戏,在子线程里做移动的计算。
若你的应用程序有一个耗时的初始化过程的话,考虑可以显示一个Splash
Screen或者快速显示主画面并异步来填充这些信息。在这两种情况下,你都应该
显示正在进行的进度,以免用户认为应用程序被冻结了。
本文来自CSDN博客,转载请标明出处:
http://blog.csdn.net/Zengyangtech/archive/2010/11/21/6025671.aspx
2、什么情况会导致Force Close ?如何避免?能否捕获导致其的异常?
3、Android本身的api并未声明会抛出异常,则其在运行时有无可能抛出runtime
异常,你遇到过吗?诺有的话会导致什么问题?如何解决?
4、简要解释一下activity、 intent 、intent filter、service、Broadcast、
BroadcaseReceiver
Activity
Android中,Activity是所有程序的根本,所有程序的流程都运行在Activity之
中,Activity具有自己的生命周期(由系统控制生命周期,程序无法改变,但可
以用onSaveInstanceState保存其状态)。
对于Activity,关键是其生命周期的把握(如那张经典的生命周期图=.=),其
次就是状态的保存和恢复(onSaveInstanceState onRestoreInstanceState),
以及Activity之间的跳转和数据传输(intent)。
Activity中常用的函数有SetContentView() findViewById() finish()
startActivity(),其生命周期涉及的函数有:
void onCreate(Bundle savedInstanceState)
void onStart()
void onRestart()
void onResume()
void onPause()
void onStop()
void onDestroy()
新版Android开发教程
最新的新版Android开发教程。最新的新版Android开发教程。
淘宝客户端for_android.
淘宝手机客户端是是我学习时写的,想跟大家分享哈
AndroidHttps服务器端和客户端简单实例
main.xml代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<Button
android:id="@+id/testButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="HTTPS Test" />
</LinearLayout>
将该Android项目运行起来,点击按钮,在logcat中就可以看到打印信息:
Android_读取信息实例
开始进入编写程序前,需要对需求的功能做一些可行性分析,以做到有的放矢,如果有些无法实现的功能,可以尽快调整。这里分析一下项目需要的功能,主要是信息查看和信息收集,如版本信息、硬件信息等,这些都可以通过读取系统文件或者运行系统命令获取,而像获取安装的软件信息和运行时信息则需要通过API提供的接口获取。实现API接口不是什么问题,主要把精力集中在如何实现运行系统命令,获取其返回的结果功能实现上。具体实现代码如下所示:
Java代码:
1. public class CMDExecute {
2. public synchronized String run ( String [] cmd,String workdirectory)
3. throws IOException {
4. String result = “ ” ;
5. try {
6. processBuilder builder = new ProcessBuilder ( cmd );
7. //设置一个路径
8. if ( workdirectory ! = null )
9. builder.directory ( new File ( workdirectory ) ) ;
10. builder.redirectErrorStream (true) ;
11. Process process = builder.start ( ) ;
12. InputStream in = process.getInputStream ( ) ;
13. byte[] re = new byte[1024] ;
14. while ( in.read ( re ) ) ;
15. result = result + new String ( re ) ;
16. }
17. in.close ( ) ;
18. } catch ( Exception ex ) {
19. Ex.printStackTrace ( ) ;
20. }
21. Return result ;
22. }
23. }
10个经典的Android开源应用项目
10个经典的Android开源应用项目 对android网络通信 ,界面应用, 短信管理,游戏应用开发代码和注解
Andrio很好界面应用实例
一个很好的andriod界面程序,界面插件与表达字符分离,界面丰富多彩,是一个很好的学习例子。
500强android学习资料
很好的五百强学习笔记,是我在学android是做的笔记,现在工作了拿出来跟同学分享一下,也让想学android的同事很快学好
Android平台下利用WiFi技术实现
们平常都会使用蓝牙来进行无线传输数据,其实我们还可以使用Wifi无线传输数据,Wifi无线传输数据不管是大文件还是小文件,速度都很快。Wifi无线传输数据需要我们使用Android系统手机才能进行,如何才能利用WiFi来实现Android手机与PC电脑或手机进行无线传输数据,这里我们就来搭建FTP传数据,具体操作步骤如下:
设置WiFi无线登录
设置你的Android手机WiiFi的无线网络,让手机通过无线路由器的Wifi方式实现无线上网。依次点击手机“设置/无线和网络/WLANf设置”,搜索WiFi网络后登录。
架设WiFi无线连接
让PC也通过无线路由器构建的局域网环境上网,有线或者无线都可以。利用91手机助手安装好Websharing。在Android手机桌面建立快捷方式,点击启动即可看到软件主界面。
在手机WiFi联网状态下,“开始”,运行网络共享服务点击时会显示“i青输入http://192.168.0.100:2112以上地址在浏览器进行访问”,字样下面会显示私人账户访问密码和游客访问密码。现在在同一局域网的电脑上打开浏览器,输入上面的地址,会提示让你输入密码,输入前面手机提示的密码后,即可在WEB页面直接看到手机卡上的全部资料。
在浏览器中可以直接查看手机卡的全部资料,若想删除卡上不需要的文件,点选需要删除的文件,然后点击左边的文件按钮,在弹出菜单点击删除即可。若是想从电脑或其他手机上传资料到Android手机卡指定目录,那么先用浏览器访问http://192.168.0.100:2112/,进入需要放置文件的目录,点击左侧“文件/上传文件’,指定需要上传到手机的文件,稍后即可完成上传。
使用Wifi无线工具在Android手机与PC机之间进行数据传输,只要在同一无线局域网环境下。由于采用WiiFi方式联网,速度比蓝牙传输更快,现在就算没USB线,也可以直接传资料了,非常方便。
SSH框架与AJAX技术的Java_Web应用开发(4页,pdf书籍)不是代码
《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》:资深程序员全力打造,深入剖析SSH框架整合开发的精髓
全方位解读Java Web开发的基础知识、高级技术及应用案例
内容全面,讲解详细,全面覆盖JSP、Se rvlet、AJAX及SSH框架整合开发
避免冗长的理论讲解,而是直击主题,通过具体实例引导读者快速学习
提供典型应用案例,剖析JSP/Servret技术与Struts 2技术在Web开发中的不同
提供完整的应用案例,使读者可以深入体会SSH开发模式的精髓
所有开发工具和框架均使用目前的最新版本,紧跟技术发展的趋势
提供230个实例和4个综合案例,可以作为案头必备的查询手册
一线开发人员全力打造,分享技术盛宴!
重点内容及特色
《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》介绍了Web开发中客户端技术的基础知识,包括JavaScript、CSS、AJAX等,这些技术都是Web应用中常用的客户端技术。
《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax+》讲解了JSP/S rvlet技术的基础知识,并提供了一个综合案例展示其具体应用,它们是Java Web服务端技术的基石,也是学习Java Web开发所要必须掌握的技术。
《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》重点讲解了Struts 2、Speing和HIbernate框架的基础知识和高级技术,如Sruts 2中的拦截器、类型转换、国际化和标签等,HIbe rna{e的会话、0/R映射和事务管理等,Spring中的数据库技术与AOP等。
《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》特别介绍了Struts 2对AjAX的支持,还重点剖析了SSH框架的整合开发,并给出了两个综合案例来展示整合SSH框架开发Web应用。
和已经出版的同类图书相比,《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》讲解由浅入深,涵盖更多内容,列举了大量典型实例具有超强的实用性,另外,《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》各篇独立,适合读者全面学习或对部分内容重点学习。
读者对象
有Java基础,想进一步学习SSH框架整合开发的人员
了解SSH整合开发,想进一步提高开发技术的人员
正在使用SSH整合技术开发项目,想查阅资料的人员
大中专院校的学生和老师,以及Java培训班的学员和讲师
需要一本案头必备查询手册的程序员
Web开发+java+ssh框架
.Hibernate<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中
取代CMP,完成数据持久化的重任。
大多数开发机构经常采取创建各自独立的数据持久层。一旦底层的数据结构发生改变,那么修改应用的其余部分使之适应这种改变的代价将是十分巨大的。Hibernate适时的填补了
这一空白,它为Java应用提供了一个易用的、高效率的对象关系映射框架。hibernate是个轻量级的持久性框架,功能却非常丰富。
优点:
a.Hibernate 使用 Java 反射机制而不是字节码增强程序来实现透明性。
b.Hibernate 的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。
c.它支持各种关系数据库,从一对一到多对多的各种复杂关系。
缺点:它限制您所使用的对象模型。(例如,一个持久性类不能映射到多个表)其独有的界面和可怜的市场份额也让人不安,尽管如此,Hibernate 还是以其强大的发展动力减轻了
这些风险。其他的开源持久性框架也有一些,不过都没有 Hibernate 这样有市场冲击力。
面回贴情绪有点激动,希望谅解,我不是因为有人批评Hibernate而感到不快,而是因为帖子里面的观点实在让我觉得荒谬。不管觉得Hibernate好也吧,不好也吧,我唯一觉得
遗憾的是,在中文论坛里面找不到一个对Hibernate的真正高水平的评价。在TSS上有一个关于Hibernate的hot thread,跟了几百贴,其中包括Hibernate作者Gavin和LiDO JDO的
CTO,对于JDO和Hibernate有过一些激烈的争论,我曾经耐心的看了一遍,仍然没有发现针对Hibernate真正有力的攻击,那些所谓的攻击无非针对Hibernate没有一个GUI的配置工
具,没有商业公司支持,没有标准化等等这些站不住脚的理由。
补充几点我的意见:
一、Hibernate是JDBC的轻量级的对象封装,它是一个独立的对象持久层框架,和App Server,和EJB没有什么必然的联系。Hibernate可以用在任何JDBC可以使用的场合,例如Java
应用程序的数据库访问代码,DAO接口的实现类,甚至可以是BMP里面的访问数据库的代码。从这个意义上来说,Hibernate和EB不是一个范畴的东西,也不存在非此即彼的关系。
二、Hibernate是一个和JDBC密切关联的框架,所以Hibernate的兼容性和JDBC驱动,和数据库都有一定的关系,但是和使用它的Java程序,和App Server没有任何关系,也不存在
兼容性问题。
三、Hibernate不能用来直接和Entity Bean做对比,只有放在整个J2EE项目的框架中才能比较。并且即使是放在软件整体框架中来看,Hibernate也是做为JDBC的替代者出现的,而
不是Entity Bean的替代者出现的,让我再列一次我已经列n次的框架结构:
传统的架构:
1) Session Bean <-> Entity Bean <-> DB
为了解决性能障碍的替代架构:
2) Session Bean <-> DAO <-> JDBC <-> DB
使用Hibernate来提高上面架构的开发效率的架构:
3) Session Bean <-> DAO <-> Hibernate <-> DB
就上面3个架构来分析:
1、内存消耗:采用JDBC的架构2无疑是最省内存的,Hibernate的架构3次之,EB的架构1最差。
2、运行效率:如果JDBC的代码写的非常优化,那么JDBC架构运行效率最高,但是实际项目中,这一点几乎做不到,这需要程序员非常精通JDBC,运用Batch语句,调整
PreapredStatement的Batch Size和Fetch Size等参数,以及在必要的情况下采用结果集cache等等。而一般情况下程序员是做不到这一点的。因此Hibernate架构表现出最快的运行
效率。EB的架构效率会差的很远。
3、开发效率:在有JBuilder的支持下以及简单的项目,EB架构开发效率最高,JDBC次之,Hibernate最差。但是在大的项目,特别是持久层关系映射很复杂的情况下,Hibernate效
率高的惊人,JDBC次之,而EB架构很可能会失败。
4、分布式,安全检查,集群,负载均衡的支持
由于有SB做为Facade,3个架构没有区别。
javaWEB开发ssh面试题
给面试官说hibernate的映射过程就可以了
struts的MVC如何实现:MVC设计模式(应用观察者模式的框架模式)
M: Model(Business process layer),模型,操作数据的业务处理层,并独立于表现层
(Independent of presentation)。
V: View(Presentation layer),视图,通过客户端数据类型显示数据,并回显模型层的执
行结果。
C: Controller(Control layer),控制器,也就是视图层和模型层桥梁,控制数据的流向,
接受视图层发出的事件,并重绘视图。
JSP+Servlet+JavaBean,以控制为核心,JSP只负责显示和收集数据,Sevlet,连接视图
和模型,将视图层数据,发送给模型层,JavaBean,分为业务类和数据实体,业务类处
理业务数据,数据实体,承载数据,基本上大多数的项目都是使用这种MVC的实现模式。
android开发教程
第一篇 开发知识库大全
第1章 Android简介及其开发环境的搭建 2
1.1 Android的诞生 2
1.2 Android的特点 2
1.3 Android开发环境的搭建 3
1.4 第一个Android程序――HelloAndroid 6
1.5 Android应用程序的调试 7
1.6 Android应用程序的项目结构 9
1.7 Android的系统架构 11
1.8 本章小结 14
第2章 Android简单控件的开发及应用 15
2.1 Button按钮应用 15
2.2 LinearLayout――线性布局的应用 17
2.3 RelativeLayout――相对布局的应用 22
2.4 FrameLayout――帧布局的应用 26
2.5 TableLayout――表格布局的应用 29
2.6 AbsoluteLayout――绝对布局的应用 32
2.7 TextView文字显示 35
2.8 TextView颜色的设置 37
2.9 使用Style样式化TextView 39
2.10 简单的本地验证――EditText编辑框 41
2.11 性别的选择――RadioButton组的应用 44
2.12 选择喜欢的玩家――RadioButton ID的应用 47
2.13 确认提交――CheckBox的isChecked属性 49
2.14 个人爱好选择――CheckBox复选框的应用 52
2.15 灯泡开关――ToggleButton的应用 54
2.16 最亲和的提示――Toast消息提示 58
2.17 有背景图片的按钮――ImageButton应用 59
2.18 图片按钮的单击变换――ImageButton的选择特效 61
2.19 音乐播放的进度提示――ProgressBar的应用 64
2.20 音量大小的调节――SeekBar的应用 66
2.21 为你喜欢的作品打分――RatingBar的应用 68
2.22 本章小结 70
第3章 Android高级控件的开发及应用 71
3.1 单击查看名人信息――ListView的应用 71
3.2 动态图片排版――GridView的应用 74
3.3 Spinner自定义下拉列表――选择喜欢的体育运动 78
3.4 Spinner自定义下拉列表――向下拉列表中添加选项 81
3.5 单击改变ImageView的图片透明度 83
3.6 动态改变ImageView的图片大小 85
3.7 旋转ImageView中的图片 89
3.8 制作自己的相片集――Gallery的应用开发 92
3.9 重要消息提醒――AlertDialog对话框的应用 94
3.10 后台程序安装进度提示――ProgressDialog的应用 96
3.11 选择个人特长――单选列表对话框 99
3.12 选择喜欢的城市――复选列表对话框 102
3.13 单击“确定”按钮弹出对话框窗口 105
3.14 查看时间日期――TimePicker和DatePicker的应用 107
3.15 时钟模拟设计――AnalogClock和DigitalClock的应用 110
3.16 动态列表配置选项――List Activity的应用 113
3.17 WebActivity的应用开发 115
3.18 TABActivity的应用开发 117
3.19 本章小结 121
第4章 手机用户界面的开发 122
4.1 获取手机屏幕的分辨率 122
4.2 界面响应事件 124
4.3 控件外观的控制 127
4.4 定时改变Toast提示信息 130
4.5 手机桌面心情 133
4.6 选项菜单的应用 141
4.7 上下文菜单的应用 145
4.8 手机背景颜色的设置 148
4.9 字体颜色的变换 150
4.10 使用set Content View实现手机界面的切换 152
4.11 使用Intent启动另一个Activity 155
4.12 使用Bundle实现Activity间的数据传送 159
4.13 使用startActivityForResult实现数据的返回 165
4.14 设置自己的手机显示模式 170
4.15 更改手机屏幕方向 173
4.16 本章小结 176
第5章 手机通信服务及手机控制 177
5.1 自动调用系统的拨号、上网和发送E-mail的功能 177
5.2 电话拨号软件 179
5.3 自制电话拨号系统 182
5.4 手机发送短信 186
5.5 简易电子邮件 190
5.6 自制手机通讯录搜索 193
5.7 一键查询――查看联系人资料 198
5.8 有图标的爱好选择系统 200
5.9 界面切换时的振动提醒 202
5.10 带图片的Toast提醒 205
5.11 音乐播放器在状态栏上图标提示 207
5.12 自制打开或关闭WIFI 210
5.13 还原手机桌面背景 214
5.14 设置手机桌面背景 216
5.15 轻松获取手机桌面背景 217
5.16 轻松查看手机的相关信息 219
5.17 查看SIM卡的信详细息 223
5.18 按键移动图片――方向键的应用 226
5.19 查看正在运行的程序 229
5.20 手机屏幕更改时信息的捕捉和提醒 232
5.21 本章小结 235
第6章 手机的自动服务功能 236
6.1 Servicer的创建、停止、绑定和取消绑定 236
6.2 系统服务的开始与停止 240
6.3 提醒用户收到短信 243
6.4 查看手机电池剩余电量 246
6.5 接收到短信时界面切换显示短信消息 249
6.6 通过后台定时发送提示 252
6.7 短信群发功能的实现 257
6.8 开机程序自启动 259
6.9 手机状态提醒 264
6.10 有来电时,发送短信回复 267
6.11 手机存储卡容量的查询 271
6.12 备忘录的定时提醒 275
6.13 设置手机静音和固定号码来电时手机振动 279
6.14 根据手机姿态改变手机模式 285
6.15 定时更改手机模式 288
6.16 本章小结 293
第7章 手机文件I/O与数据库的应用 294
7.1 手机SD卡文本阅读器 294
7.2 修改手机中的文件 297
7.3 删除手机中的文件 303
7.4 访问APK包中的文件 307
7.5 简单的学生信息管理――数据库中的增、删、改、查 310
7.6 查看手机中的相片――DecodeFile()方法的使用 317
7.7 ContentResolver对数据库的操作 321
7.8 记录访问程序的时间――Preferences的应用 324
7.9 本章小结 326
第8章 手机网络应用 327
8.1 网络连接检测软件 327
8.2 简单网页浏览器开发 331
8.3 自定义网页浏览器 334
8.4 网络图片浏览软件 336
8.5 网络图片相册集 339
8.6 手机查看实时卫星云图 348
8.7 Google天气客户端 351
8.8 旅游城市的介绍 358
8.9 网络音乐播放 363
8.10 网络歌曲下载软件 367
8.11 下载网络歌曲制作手机铃声 373
8.12 下载网络图片制作手机背景 378
8.13 制作RSS阅读器――SAXParser解析XML 381
8.14 远程下载与安装Android程序――APK Installer的应用 388
8.15 手机下载看3gp影片 393
8.16 访问网站LoginAPI 399
8.17 本章小结 405
第9章 手机的Google服务功能 406
9.1 手机客户端Google账号登录 406
9.2 使用手机进行Google搜索 412
9.3 制作成绩柱状图 416
9.4 Google地图的实现 420
9.5 Google地图地点查询功能的实现 428
9.6 随身词典 435
9.7 本章小结 439
第10章 手机多媒体服务功能 440
10.1 获取图片的宽高 440
10.2 简单图形的绘制 442
10.3 平面贴图的实现 445
10.4 淡入淡出效果的实现 447
10.5 虚拟键的设计与实现 451
10.6 获取手机内置媒体图片 454
10.7 手机音量大小的调节 457
10.8 音频数据的采集 462
10.9 图像数据的采集 467
10.10 视频数据的采集 473
10.11 视频播放器 479
10.12 自定义动画效果 485
10.13 小球游戏 488
10.14 音乐播放器 498
10.15 本章小结 504
第11章 Android手机的3D世界 505
11.1 三角形的绘制 505
11.2 立方体的绘制 510
11.3 球体的绘制 513
11.4 丰富多彩的光照世界 517
11.5 制作木箱 521
11.6 朦胧的世界――雾的使用 525
11.7 透过玻璃看风景 528
11.8 3D相册的制作 532
11.9 本章小结 542
第12章 手机特效开发 543
12.1 虚线特效的开发 543
12.2 切屏动画特效 547
12.3 生成登录框特效的开发 552
12.4 多点触控 556
12.5 传感器探测者 561
12.6 手机动态壁纸――小球游戏 564
12.7 自动完成输入框 571
android开发教程4.0
第一篇 开发知识库大全
第1章 Android简介及其开发环境的搭建 2
1.1 Android的诞生 2
1.2 Android的特点 2
1.3 Android开发环境的搭建 3
1.4 第一个Android程序――HelloAndroid 6
1.5 Android应用程序的调试 7
1.6 Android应用程序的项目结构 9
1.7 Android的系统架构 11
1.8 本章小结 14
第2章 Android简单控件的开发及应用 15
2.1 Button按钮应用 15
2.2 LinearLayout――线性布局的应用 17
2.3 RelativeLayout――相对布局的应用 22
2.4 FrameLayout――帧布局的应用 26
2.5 TableLayout――表格布局的应用 29
2.6 AbsoluteLayout――绝对布局的应用 32
2.7 TextView文字显示 35
2.8 TextView颜色的设置 37
2.9 使用Style样式化TextView 39
2.10 简单的本地验证――EditText编辑框 41
2.11 性别的选择――RadioButton组的应用 44
2.12 选择喜欢的玩家――RadioButton ID的应用 47
2.13 确认提交――CheckBox的isChecked属性 49
2.14 个人爱好选择――CheckBox复选框的应用 52
2.15 灯泡开关――ToggleButton的应用 54
2.16 最亲和的提示――Toast消息提示 58
2.17 有背景图片的按钮――ImageButton应用 59
2.18 图片按钮的单击变换――ImageButton的选择特效 61
2.19 音乐播放的进度提示――ProgressBar的应用 64
2.20 音量大小的调节――SeekBar的应用 66
2.21 为你喜欢的作品打分――RatingBar的应用 68
2.22 本章小结 70
第3章 Android高级控件的开发及应用 71
3.1 单击查看名人信息――ListView的应用 71
3.2 动态图片排版――GridView的应用 74
3.3 Spinner自定义下拉列表――选择喜欢的体育运动 78
3.4 Spinner自定义下拉列表――向下拉列表中添加选项 81
3.5 单击改变ImageView的图片透明度 83
3.6 动态改变ImageView的图片大小 85
3.7 旋转ImageView中的图片 89
3.8 制作自己的相片集――Gallery的应用开发 92
3.9 重要消息提醒――AlertDialog对话框的应用 94
3.10 后台程序安装进度提示――ProgressDialog的应用 96
3.11 选择个人特长――单选列表对话框 99
3.12 选择喜欢的城市――复选列表对话框 102
3.13 单击“确定”按钮弹出对话框窗口 105
3.14 查看时间日期――TimePicker和DatePicker的应用 107
3.15 时钟模拟设计――AnalogClock和DigitalClock的应用 110
3.16 动态列表配置选项――List Activity的应用 113
3.17 WebActivity的应用开发 115
3.18 TABActivity的应用开发 117
3.19 本章小结 121
第4章 手机用户界面的开发 122
4.1 获取手机屏幕的分辨率 122
4.2 界面响应事件 124
4.3 控件外观的控制 127
4.4 定时改变Toast提示信息 130
4.5 手机桌面心情 133
4.6 选项菜单的应用 141
4.7 上下文菜单的应用 145
4.8 手机背景颜色的设置 148
4.9 字体颜色的变换 150
4.10 使用set Content View实现手机界面的切换 152
4.11 使用Intent启动另一个Activity 155
4.12 使用Bundle实现Activity间的数据传送 159
4.13 使用startActivityForResult实现数据的返回 165
4.14 设置自己的手机显示模式 170
4.15 更改手机屏幕方向 173
4.16 本章小结 176
第5章 手机通信服务及手机控制 177
5.1 自动调用系统的拨号、上网和发送E-mail的功能 177
5.2 电话拨号软件 179
5.3 自制电话拨号系统 182
5.4 手机发送短信 186
5.5 简易电子邮件 190
5.6 自制手机通讯录搜索 193
5.7 一键查询――查看联系人资料 198
5.8 有图标的爱好选择系统 200
5.9 界面切换时的振动提醒 202
5.10 带图片的Toast提醒 205
5.11 音乐播放器在状态栏上图标提示 207
5.12 自制打开或关闭WIFI 210
5.13 还原手机桌面背景 214
5.14 设置手机桌面背景 216
5.15 轻松获取手机桌面背景 217
5.16 轻松查看手机的相关信息 219
5.17 查看SIM卡的信详细息 223
5.18 按键移动图片――方向键的应用 226
5.19 查看正在运行的程序 229
5.20 手机屏幕更改时信息的捕捉和提醒 232
5.21 本章小结 235
第6章 手机的自动服务功能 236
6.1 Servicer的创建、停止、绑定和取消绑定 236
6.2 系统服务的开始与停止 240
6.3 提醒用户收到短信 243
6.4 查看手机电池剩余电量 246
6.5 接收到短信时界面切换显示短信消息 249
6.6 通过后台定时发送提示 252
6.7 短信群发功能的实现 257
6.8 开机程序自启动 259
6.9 手机状态提醒 264
6.10 有来电时,发送短信回复 267
6.11 手机存储卡容量的查询 271
6.12 备忘录的定时提醒 275
6.13 设置手机静音和固定号码来电时手机振动 279
6.14 根据手机姿态改变手机模式 285
6.15 定时更改手机模式 288
6.16 本章小结 293
第7章 手机文件I/O与数据库的应用 294
7.1 手机SD卡文本阅读器 294
7.2 修改手机中的文件 297
7.3 删除手机中的文件 303
7.4 访问APK包中的文件 307
7.5 简单的学生信息管理――数据库中的增、删、改、查 310
7.6 查看手机中的相片――DecodeFile()方法的使用 317
7.7 ContentResolver对数据库的操作 321
7.8 记录访问程序的时间――Preferences的应用 324
7.9 本章小结 326
第8章 手机网络应用 327
8.1 网络连接检测软件 327
8.2 简单网页浏览器开发 331
8.3 自定义网页浏览器 334
8.4 网络图片浏览软件 336
8.5 网络图片相册集 339
8.6 手机查看实时卫星云图 348
8.7 Google天气客户端 351
8.8 旅游城市的介绍 358
8.9 网络音乐播放 363
8.10 网络歌曲下载软件 367
8.11 下载网络歌曲制作手机铃声 373
8.12 下载网络图片制作手机背景 378
8.13 制作RSS阅读器――SAXParser解析XML 381
8.14 远程下载与安装Android程序――APK Installer的应用 388
8.15 手机下载看3gp影片 393
8.16 访问网站LoginAPI 399
8.17 本章小结 405
第9章 手机的Google服务功能 406
9.1 手机客户端Google账号登录 406
9.2 使用手机进行Google搜索 412
9.3 制作成绩柱状图 416
9.4 Google地图的实现 420
9.5 Google地图地点查询功能的实现 428
9.6 随身词典 435
9.7 本章小结 439
第10章 手机多媒体服务功能 440
10.1 获取图片的宽高 440
10.2 简单图形的绘制 442
10.3 平面贴图的实现 445
10.4 淡入淡出效果的实现 447
10.5 虚拟键的设计与实现 451
10.6 获取手机内置媒体图片 454
10.7 手机音量大小的调节 457
10.8 音频数据的采集 462
10.9 图像数据的采集 467
10.10 视频数据的采集 473
10.11 视频播放器 479
10.12 自定义动画效果 485
10.13 小球游戏 488
10.14 音乐播放器 498
10.15 本章小结 504
第11章 Android手机的3D世界 505
11.1 三角形的绘制 505
11.2 立方体的绘制 510
11.3 球体的绘制 513
11.4 丰富多彩的光照世界 517
11.5 制作木箱 521
11.6 朦胧的世界――雾的使用 525
11.7 透过玻璃看风景 528
11.8 3D相册的制作 532
11.9 本章小结 542
第12章 手机特效开发 543
12.1 虚线特效的开发 543
12.2 切屏动画特效 547
12.3 生成登录框特效的开发 552
12.4 多点触控 556
12.5 传感器探测者 561
12.6 手机动态壁纸――小球游戏 564
12.7 自动完成输入框 571
12.8 照片编辑――裁剪特效的开发 576
12.9 界面菜单――左右拖拉特效的开发 580
12.10 桌面Widget的开发 586
12.11 JDBC客户端的开发 593
12.12 新浪微博客户端的开发 598
12.13 本章小结 604
第二篇 案例实战
第13章 蓝鸟健身俱乐部小助手 606
13.1 系统背景及功能介绍 606
13.1.1 背景简介 606
13.1.2 功能概述 606
13.1.3 构建开发环境 607
13.1.4 系统预览 607
13.2 数据库设计 610
13.2.1 数据库分析 610
13.2.2 数据库表的设计 610
13.3 欢迎界面的设计 611
13.4 主界面的开发 613
13.4.1 主界面主框架的开发 614
13.4.2 列表选择地址的界面开发 616
13.4.3 自己填写地址的界面开发 617
13.4.4 最近地点查询的界面开发 618
13.4.5 广告控件的开发 618
13.5 列表选择地址模块的开发 620
13.5.1列表选择界面的显示 620
13.5.2控件中数据初始化 621
13.5.3 Intent消息传送的实现 623
13.6 自己填写地址模块的开发 624
13.6.1自己填写地址界面的显示 624
13.6.2 Intent消息传送的实现 625
13.7 最短距离查询模块的开发 629
13.7.1 最短距离查询界面的显示 629
13.7.2 Intent消息传送的实现 630
13.8 MAP界面的开发 633
13.8.1 MAP界面布局的开发 633
13.8.2 申请Android Map API Key 634
13.8.3 地图初始化 635
13.9 提示信息图层的开发 639
13.9.1 信息窗口的开发 639
13.9.2 MapVIew图标与信息窗口的绘制 641
13.9.3 信息图层的事件触发 641
13.10 用DOM解析XML文件 643
13.10.1 XML解析器:DOM 643
13.10.2 DOM解析XML文件 643
13.11 路线导航的开发 645
13.11.1 导航路径的开发 645
13.11.2 线路导航的实现 646
13.11.3 汽车动态导航方向问题的开发 648
13.11.4 绘制导航汽车 649
13.11.5 汽车动态导航的实现 650
13.12 本章小结 651
第14章 娱乐游戏――3D迷宫 652
14.1 游戏的背景及功能概述 652
14.1.1 背景概述 652
14.1.2 功能简介 652
14.2 游戏的策划及准备工作 656
14.2.1 游戏的策划 656
14.2.2 Android平台下游戏的准备工作 656
14.3 游戏的框架介绍 657
14.4 游戏的公共类的设计与实现 659
14.4.1 主类MazeActivity 659
14.4.2 游戏常量类 663
14.5 游戏主菜单类的设计与实现 664
14.6 游戏界面的设计与实现 667
14.7 游戏界面中主要场景的绘制 672
14.8 游戏中的逻辑实现与线程操控 683
14.9 游戏地图设计器的开发 687
14.9.1 地图设计器的界面效果与使用方式 687
14.9.2 地图设计器的开发实现 690
14.10 游戏的优化与改进 695
14.11 本章小结 696
第15章 休闲游戏――Q版疯狂大炮 697
15.1 Q版疯狂大炮的背景及功能概述 697
15.1.1 背景概述 697
15.1.2 功能简介 697
15.2 游戏的策划及准备工作 699
15.2.1 游戏的策划 699
15.2.2 Android平台下游戏的准备工作 700
15.3 游戏的架构 701
15.3.1 游戏的框架简介 701
15.3.2 各个类的简要介绍 701
15.4 公共类的实现 703
15.4.1 GameActivity类的代码框架 703
15.4.2 GameActivity类部分成员变量及方法的实现 705
15.4.3 KeyThread类的实现 710
15.4.4 Constant类的实现 711
15.5 辅助界面相关类的实现 713
15.5.1 欢迎动画界面WelcomeView类的实现 713
15.5.2 主菜单界面MainMenuSurfaceView的实现 715
15.5.3 积分榜界面HighScoreSurfaceView的代码框架 717
15.5.4 HighScoreSurfaceView类的部分方法的实现 718
15.6 游戏界面相关类的实现 721
15.6.1 游戏界面GameView类的代码框架 721
15.6.2 GameView类部分成员方法的实现 723
15.6.3 目标路径Path类的实现 726
15.6.4 产生目标的线程GenerateTargetThread类的实现 727
15.7 情景相关类的实现 728
15.7.1 大炮类DaPao的代码框架 728
15.7.2 DaPao类部分成员方法的实现 729
15.7.3 炮弹Bullet类的实现 731
15.7.4 目标类Target的实现 733
15.7.5 爆炸效果Explosion类的实现 734
15.7.6 飞行器AirCraft类及其子类的实现 735
15.7.7 所有飞行物FlyingThings类的实现 736
15.8 自定义控件及工具类的实现 737
15.8.1 力度条StrengthBar类的实现 737
15.8.2 定时器Timer类的实现 738
15.8.3 得分Score类的实现 740
15.8.4 滚屏背景BackGround类的实现 741
15.8.5 主菜单按钮MainMenuButton类的实现 742
15.8.6 获取日期的工具DateUtil类的实现 743
15.9 游戏的优化与改进 744
本书评论
Android(经典实例).
package snowfox.android;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Matrix;
import android.graphics.drawable.BitmapDrawable;
import android.os.Bundle;
import android.util.Log;
import android.view.KeyEvent;
import android.widget.ImageView;
public class MainActivity extends Activity {
/** Called when the activity is first created. */
private ImageView v1;
private int widthOrg, heightOrg, w;
float scale = 1;
float scaleWidth, scaleHeight;
Bitmap OrgMap, newMap;
BitmapDrawable bmd;
Matrix matrix = new Matrix();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
v1 = (ImageView)findViewById(R.id.image01);
OrgMap = BitmapFactory.decodeResource(getResources(), R.drawable.test);
widthOrg = OrgMap.getWidth();
heightOrg = OrgMap.getHeight();
//确定图片初始缩放比例,一般以适应屏幕宽度为准
w = 320;
scale = (float)w/widthOrg;
matrix = new Matrix();
Java编程思想第四版
读者评论
前言
简介
第1章 对象导论
1.1 抽象过程
1.2 每个对象都有一个接口
1.3 每个对象都提供服务
1.4 被隐藏的具体实现
1.5 复用具体实现
1.6 继承
1.6.1 “是一个”(is-a)与“像是一个”(is-like-a)关系
1.7 伴随多态的可互换对象
1.8 单根继承结构
1.9 容器
1.9.1 参数化类型(范型)
1.10 对象的创建和生命期
1.11 异常处理:处理错误
1.12 并发编程
1.13 java与internet
1.13.1 web是什么
.1.13.2 客户端编程
1.13.3 服务器端编程
1.22 总结
第2章 一切都是对象
2.1 用引用操纵对象
2.2 必须由你创建所有对象
2.2.1 存储到什么地方
2.2.2 特例:基本类型
2.2.3 java中的数组
2.3 永远不需要销毁对象
2.3.1 作用域
2.3.2 对象的作用域
2.4 创建新的数据类型:类
2.4.1 域和方法
2.4.2 基本成员默认值
2.5 方法、参数和返回值
2.5.1 参数列表
2.6 构建一个java程序
2.6.1 名字可见性
2.6.2 运用其他构件
2.6.3 static 关键字
2.7 你的第一个java程序
编译和运行
2.8 注释和嵌入式文档
2.8.1 注释文档
2.8.2 语法
2.8.3 嵌入式html
2.8.4 一些标签示例
2.8.5 文档示例
2.9 编码风格
2.10 总结
2.11 练习
第3章 操作符
3.1 更简单的打印语句
3.2 使用java操作符
3.3 优先级
3.4 赋值
3.4.1 方法调用中的别名问题
3.5 算术操作符
3.5.1 一元加、减操作符
3.6 自动递增和递减
3.7 关系操作符
3.7.1 测试对象的等价性
3.8 逻辑操作符
3.8.1 短路
3.9 直接常量
3.9.1 指数记数法
3.10 按位操作符
3.11 移位操作符
3.12 三元操作符 if-else
3.13 字符串操作符 + 和 +=
3.14 使用操作符时常犯的错误
3.15 类型转换操作符
3.15.1 截尾和舍入
3.15.2提升
3.16 java没有“sizeof”
3.17 操作符小结
3.18 总结
第4章 控制执行流程
4.1 true和false
4.2 if-else
4.3 迭代
4.3.1 do-while
4.3.2 for
4.3.3 逗号操作符
4.4 foreach语法
4.5 return
4.6 break和 continue
4.7 臭名昭著的“goto”
4.8 switch
4.9 总结
第5章 初始化与清理
5.1 用构造器确保初始化
5.2 方法重载
5.2.1 区分重载方法
5.2.2 涉及基本类型的重载
5.2.3 以返回值区分重载方法
5.3 缺省构造器
5.4 this关键字
5.4.1 在构造器中调用构造器
5.4.2 static的含义
5.5 清理:终结处理和垃圾回收
5.5.1 finalize()的用途何在
5.5.2 你必须实施清理
5.5.3 终结条件
5.5.4 垃圾回收器如何工作
5.6 成员初始化
5.6.1 指定初始化
5.7 构造器初始化
5.7.1 初始化顺序
5.7.2. 静态数据的初始化
5.7.3. 显式的静态初始化
5.7.4. 非静态实例初始化
5.8 数组初始化
5.8.1 可变参数列表
5.9 枚举类型
5.10 总结
第6章 访问权限控制
第7章 复用类
第8章 多态
第9章 接口
第10章 内部类
第11章 持有对象
第12章 通过异常处理错误
第13章 字符串
第14章 类型信息
第15章 泛型
第16章 数组
第17章 容器深入研究
第18章 java i/o系统
第19章 枚举类型
第20章 注解
第21章 并发
第22章 图形化用户界面
附录a 补充材料
可下载的补充材料
thinking in c:java的基础
java编程思想 研讨课
hands-on java研讨课cd
thinking in objects研讨课
thinking in enterprise java
thinking in patterns(with java)
thinking in patterns研讨课
设计咨询与复审
Android应用开发详解pdf.
第一篇 基础篇
第1章 Android概述 2
1.1 Android的前世今生 3
1.1.1 Android的产生 3
1.1.2 Android的发展 3
1.2 Android的平台架构及特性 4
1.2.1 Android平台特性 5
1.2.2 Android平台架构 5
1.3 Android Market 7
1.4 Android应用程序组件 8
1.4.1 Activity 9
1.4.2 Service 9
1.4.3 Broadcast Receiver 9
1.4.4 ContentProvider 9
1.4.5 View 10
1.4.6 Intent 10
1.5 Android与Java ME的区别与联系 10
1.5.1 二者的区别 10
1.5.2 二者的联系 10
1.5.3 各自的优势 11
.第2章 Android开发基础 12
2.1 Android开发环境的搭建 12
2.1.1 下载Android SDK 13
2.1.2 下载安装JDK 15
2.1.3 下载Eclipse 16
2.1.4 下载安装ADT 16
2.2 Android常用工具的使用 18
2.2.1 创建Android Virtual Devices(AVD) 18
2.2.2 模拟器(Emulator)的使用 20
2.2.3 Android Debug Bridge(ADB)的使用 20
2.2.4 Dalvik Debug Monitor Service(DDMS)的使用 21
2.2.5 Android Asset Packaging Tool(AAPT)的使用 22
2.2.6 DX的使用 22
2.2.7 mksdcard的使用 22
2.3 我的第一个Android应用 22
2.3.1 纯手工创建一个Android应用 22
2.3.2 使用Eclipse创建一个Android应用 25
第二篇 技术篇
第3章 Android中的资源访问 32
3.1 资源简介 33
3.1.1 资源的类型和布局 33
3.1.2 资源文件的使用 33
3.2 使用颜色(color)资源 35
3.2.1 颜色值定义 35
3.2.2 颜色资源XML文件的定义 35
3.2.3 使用颜色资源 36
3.3 使用字符串(string)资源 37
3.3.1 字符串资源XML文件的定义 37
3.3.2 字符串资源XML文件的使用 38
3.4 使用尺寸(dimen)资源 39
3.4.1 Android中支持的尺寸单位 39
3.4.2 尺寸资源XML文件的定义 40
3.4.3 尺寸资源XML文件的使用 40
3.5 使用原始XML资源 42
3.5.1 原始XML资源文件的定义 42
3.5.2 原始XML文件的使用 42
3.6 使用drawables资源 45
3.7 使用布局(layout)资源 47
3.7.1 布局文件的定义 47
3.7.2 布局文件的使用 48
3.8 使用菜单(menu)资源 49
3.8.1 菜单资源文件的定义 50
3.8.2 菜单资源文件的使用 51
第4章 Android用户界面 55
4.1 菜单 55
4.1.1 选项菜单(Option Menu) 56
4.1.2 上下文菜单(Context Menu) 57
4.1.3 子菜单(Sub Menu) 59
4.2 对话框 61
4.3 提示信息(Toast) 64
4.4 事件处理 66
4.4.1 事件处理机制 66
4.4.2 Android中的事件监听器 68
4.4.3 事件处理步骤 69
4.5 布局管理(Layout) 72
4.5.1 线性布局 73
4.5.2 帧布局 75
4.5.3 表格布局 76
4.5.4 相对布局 77
4.5.5 绝对布局 78
4.6 组件(Widget) 79
4.6.1 常用组件 79
4.6.2 自动完成文本框(AutoCompleteTextView) 86
4.6.3 选项卡(Tab) 88
4.6.4 进度条(ProgressBar) 91
4.6.5 日期、时间选择对话框(DataPickerDialog、TimePickerDialog) 95
4.6.6 列表视图(ListView) 97
4.6.7 网格视图(GridView) 99
4.6.8 画廊视图(Gallery) 101
4.6.9 地图视图(MapView) 105
4.6.10 网络视图(WebView) 108
第5章 Android基本程序单元Activity 111
5.1 何谓回调 111
5.2 Activity简介 113
5.2.1 Activity的创建 113
5.2.2 启动另一个Activity 115
5.2.3 Activity之间传递数据 117
5.2.4 启动另一个Activity并返回结果 121
5.3 Activity的生命周期 126
第6章 Android组件之间的信使Intent 130
6.1 Intent对象及其属性 131
6.1.1 Intent的ComponentName属性 131
6.1.2 Intent的Action属性 135
6.1.3 Intent的Data属性 140
6.1.4 Intent的Category属性 141
6.1.5 Intent的Extras属性 142
6.2 系统标准Activity Action应用 144
6.2.1 和打电话相关的标准Activity Action应用 145
6.2.2 访问浏览器和地图 147
6.2.3 发邮件 149
6.3 Intent的实现策略 151
第7章 Android Service组件 159
7.1 Service简介 159
7.1.1 创建一个Service 159
7.1.2 启动和停止Service 160
7.1.3 绑定一个已经存在的Service 161
7.1.4 Service实例演示 161
7.2 远程Service调用 166
7.2.1 创建一个AIDL文件 166
7.2.2 实现AIDL文件生成的Java接口 170
7.2.3 将你的接口暴露给客户端 171
7.2.4 客户端调用 171
第8章 Android广播事件处理 Broadcast Receiver 173
8.1 自己定义Broadcast Receiver来处理广播事件 173
8.2 系统广播事件的使用 176
8.3 Notification和NotificationManager的使用 178
8.3.1 Notification和NotificationManager简介 178
8.3.2 通知实例演示 179
8.4 AlarmManager的使用 186
第9章 Android中的数据存取 190
9.1 Preference 190
9.1.1 Preference简介 190
9.1.2 Preference应用实例——保存临时短信 191
9.2 File 193
9.3 SQLite 195
9.3.1 SQLiteDatabase 195
9.3.2 SQLiteOpenHelper 199
9.3.3 SQLite应用实例——收藏管理 201
第10章 Content Provider 208
10.1 Content Provider简介 208
10.1.1 Content Provider的常用方法 208
10.1.2 ContentResolver 209
10.1.3 URI 209
10.1.4 查询系统ContentProvider内容 210
10.1.5 添加系统ContentProvider内容 211
10.1.6 添加系统ContentProvider图片内容 211
10.2 自定义ContentProvider 212
10.2.1 创建ContentProvider的步骤 212
10.2.2 ContentProvider实例 213
第11章 Android中的多媒体应用 221
11.1 音频及视频播放 221
11.1.1 从源文件中播放 221
11.1.2 从文件系统中播放 222
11.1.3 从网络中播放 222
11.2 迷你音乐播放器 223
11.3 迷你视频播放器 228
11.4 音视频的录制 229
11.5 Camera照相 233
第12章 Android中的图形图像 238
12.1 在Android中访问图片 238
12.1.1 使用图片文件创建Drawable对象 239
12.1.2 使用XML文件定义Drawable属性 240
12.1.3 Bitmap和BitmapFactory 241
12.2 Android中的动画 242
12.2.1 Tween动画 242
12.2.2 Frame动画 251
12.3 动态图形绘制 253
12.3.1 动态图形绘制的基本思路 253
12.3.2 动态图形绘制类简介 256
12.3.3 绘制几何图形 257
12.4 图形特效 261
12.4.1 使用Matrix实现旋转、缩放和平移 261
12.4.2 使用Shader类渲染图形 264
第13章 Android中的互联网应用 268
13.1 通过Socket、ServerSocket进行网络编程 268
13.1.1 Socket、ServerSocket编程模型 268
13.1.2 Socket编程实例 269
13.2 通过URL进行网络编程 271
13.3 通过HTTP进行网络编程 273
13.3.1 使用HttpURLConnection 273
13.3.2 使用Apache HTTP客户端 278
13.4 通过Web Service进行网络编程 280
13.5 直接使用WebView视图组件显示网页 285
13.5.1 使用WebView打开网页 285
13.5.2 使用WebView加载HTML 286
第14章 Android中的GPS应用 287
14.1 LocationManager和LocationProvider简介 287
14.1.1 LocationManager 288
14.1.2 LocationProvider 288
14.2 通过模拟器测试位置服务 289
14.3 获得LocationProvider 292
14.3.1 通过名称获得LocationProvider 292
14.3.2 获得当前可利用的LocationProvider 292
14.3.3 根据Criteria条件获得LocationProvider 292
14.4 定位和跟踪 293
14.4.1 定位 294
14.4.2 跟踪 296
14.5 趋近警告 298
14.6 Geocoder正逆向编解码 300
14.6.1 正向编码 301
14.6.2 反向编码 303
第三篇 应用篇
第15章 Android应用案例——移动警务通 306
15.1 移动警务通需求分析 306
15.2 移动警务通总体设计 307
15.2.1 系统架构 307
15.2.2 技术选型 307
15.2.3 系统功能 308
15.3 移动警务通详细设计 309
15.3.1 系统包及其资源规划 309
15.3.2 Activity界面规划及其程序执行流程 310
15.3.3 系统数据库设计 312
15.4 系统编码实现 313
15.4.1 登录模块Android客户端实现 313
15.4.2 登录模块服务器端实现 320
15.4.3 程序主菜单实现 325
15.4.4 信息查询子菜单实现 326
15.4.5 在逃人员查询模块客户端实现 327
15.4.6 在逃人员查询模块服务器端实现 332
15.4.7 信息采集子菜单实现 338
15.4.8 机动车违章信息采集Android客户端实现 339
15.4.9 机动车违章信息采集服务器端实现 345
15.4.10 文件上传子菜单实现 348
15.4.11 现场照片上传Android客户端实现 349
15.4.12 现场照片上传服务器端实现 360
15.4.13 GPS定位功能子菜单实现 363
15.4.14 GPS定位“我的位置”的实现 364
15.4.15 GPS定位“按坐标查询”的实现 369
15.4.16 GPS定位“按地址查询”的实现 374
第16章 Android应用案例——雷电游戏 378
16.1 Android游戏开发基本框架 378
16.1.1 Android游戏开发基础 378
16.1.2 Android游戏开发基本框架 379
16.2 将Java ME游戏API嫁接到Android 384
16.2.1 Layer类的移植 384
16.2.2 Sprite类的移植 386
16.2.3 TiledLayer类的移植 386
16.2.4 LayerManager类的移植 386
16.3 Android版雷电游戏的实现 387
16.3.1 雷电游戏简介 387
16.3.2 雷电游戏的实现 387
第17章 Android应用案例——备忘录 396
17.1 备忘录数据存储实现 396
17.1.1 数据库表设计 396
17.1.2 备忘录ContentProvider实现 397
17.2 备忘录列表展示 402
17.3 备忘录维护 405
17.4 备忘录定时提醒 412
17.4.1 定义提醒广播接收器 412
17.4.2 显示提醒Activity 413
第18章 Android应用案例——无线点餐系统 417
18.1 无线点餐系统需求分析 417
18.2 无线点餐系统概要设计 417
18.2.1 系统物理架构 418
18.2.2 技术选型 418
18.2.3 系统功能 419
18.3 无线点餐系统详细设计 422
18.3.1 系统包及其资源规划 422
18.3.2 系统数据库设计 423
18.4 系统编码实现 424
18.4.1 登录模块Android客户端实现 424
18.4.2 登录模块服务器端实现 432
18.4.3 程序主菜单实现 437
18.4.4 点餐功能客户端实现 440
18.4.5 点餐功能服务器端实现 450
18.4.6 结算模块Android客户端实现 455
18.4.7 结算模块服务器端实现 458
18.4.8 查台模块Android客户端实现 466
18.4.9 查台模块服务器端实现 470
18.4.10 更新模块Android客户端实现 473
18.4.11 更新模块服务器端实现 477
18.4.12 转台模块Android客户端实现 480
18.4.13 转台模块服务器端实现 482
18.4.14 并台模块Android客户端实现 485
18.4.15 并台模块服务器端实现 488
Google Android开发入门与实战
第1章 掀起你的盖头来—初识Android
1.1 认识Android
1.2 Android的背景
1.2.1 Android的历史
1.2.2 Android的发展
1.3 我的Android我做主
1.3.1 开发基于Android平台的应用
1.3.2 参加Android开发者大赛
1.3.3 个人英雄主义再现—得到更多人的认可和尊重
1.3.4 获得应有的收益—Android Market
1.4 真实体验—Android 模拟器
1.4.1 初识庐山真面目—模拟器概述
1.4.2 模拟器和真机的区别
1.4.3 模拟器使用注意事项
1.5 更上一层楼,加入Android开发社区
1.6 本章小结
第2章 工欲善其事 必先利其器—搭建Android开发环境
2.1 你的爱机胜任吗—开发Android应用前的准备
2.1.1 Android开发系统要求
2.1.2 Android软件开发包
2.1.3 其他注意事项
2.2 Wwindow开发环境搭建
2.2.1 JDK、Eclipse、Android SDK软件安装
2.2.2 SDK的家在哪里—设定 Android SDK Home
2.2.3 真的准备好了吗—开发环境验证
2.3 Linux一族— Ubuntu开发环境搭建
2.3.2 设定 Android SDK Home
2.4 Mac OS一族—苹果开发环境搭建
2.5 本章小结
第3章 清点可用资本—Android SDK介绍
3.1 Android SDK基础
3.2 深入探寻Android SDK的密码
3.2.1 Android SDK目录的骨架
3.2.2 android.jar及内部结构
3.2.3 SDK文档及阅读技巧
3.2.4 先来热热身—Android SDK例子解析
3.2.5 小李飞刀—Android SDK提供的工具介绍
3.3 重中之重—Android 典型包分析
3.3.1 开发的基石—Android API核心开发包介绍
3.3.2 拓展开发外延—Android可选API介绍
3.4 本章小结
第4章 赚钱的市场—Android Market及应用发布
4.1 Google Market产生背景与目的
4.2 体验“选货”的乐趣—在G1上体验Market的使用
4.3 Android开发活动及特色应用
4.3.1 开发应用的领域
4.3.2 Android Market特色应用
4.4 你也可以做东家—申请M arket帐号
4.4.1 卖东西要先入伙—准备工作
4.4.2 入伙过程—申请
4.5 开张了—在Market上发布应用
4.5.1 发布时可能遇到的错误
4.5.2 卖东西也要签名—生成签名文件
4.5.3 项目打包、签名和发布
4.6 本章小结
第5章 千里之行 始于足下—第一个应用HelloWorld
5.1 HelloWorld应用分析
5.1.1 新建一个Android工程
5.1.2 填写工程的信息
5.1.3 编程实现
5.1.4 运行项目
5.2 调试项目
5.2.1 设置断点
5.2.2 Debug 项目
5.2.3 断点调试
5.3 本章小结
第6章 磨刀不误砍柴工—Android应用程序结构介绍
第7章 良好的学习开端—Android基本组件介绍
第8章 移动信息仓库—Android的数据存储操作
第9章 我来“广播”你的“意图”—Intents和Broadcast面对面
第10章 一切为用户服务—Service应用实例
第11章 循序渐进—开发Android应用的基本步骤
第12章 Android综合案例一—RSS阅读器实例
第13章 综合案例二—基于Google API开发个人移动地图
第14章 综合案例三—基于Android的豆瓣网(Web 2.0)移动客户端开发
第15章 综合案例四—在线音乐播放器
第16章 综合案例五—手机信息查看助手