第一行代码:Android

CSDN超人气博主、CSDN 2013年度十大博客之星、Android开发者郭霖力作!本引入经验值、升级与宝物系统的计算机书!见证自己从菜鸟到鹰的成长!

批量采购专线:028-83157118 (10:00-17:00)

定  价 :
¥79.00
文 轩 价 :
¥59.20 (7.5折) (降价通知)
配 送 至 :
中国四川省成都市
中国
四川省
成都市
请选择
    现在有货
    (配送详情)
    作  者 :
    郭霖
    所属分类 :
    图书 > 计算机与互联网 > IT产业与文化 > 信息产业经济
    促销活动 :
    ❤图书音像单笔满499减100!(特惠图书、电子书除外)
    ❤大陆非新疆西藏地区包邮,新疆西藏地区每单运费20元
    ❤特惠品超3本无特价可参加网站满省
    购买数量 :
    -+
    服  务 :
    由"文轩网"直接销售和发货,并提供售后服务
    正品低价|闪电发货|货到付款|高效退换货
    第一行代码:Android
    • 作 者:郭霖
    • 出版社:人民邮电出版社
    • 出版时间:2014-08-01
    • 开 本:16开
    • 页 数:553
    • 印刷时间:2014-08-01
    • 字 数:773.00千字
    • 装 帧:平装
    • 语  种:中文
    • 版 次:1
    • 印 次:1
    • I S B N:9787115362865
    小学教辅
    中学教辅
    幼儿园

    目录

    第1章  开始启程,你的第一行Android代码  1
    1.1  了解全貌,Android王国简介  2
    1.1.1  Android系统架构  2
    1.1.2  Android已发布的版本  3
    1.1.3  Android应用开发特色  4
    1.2  手把手带你搭建开发环境  5
    1.2.1  准备所需要的软件  5
    1.2.2  搭建开发环境  6
    1.3  创建你的第一个Android项目  11
    1.3.1  创建HelloWorld项目  11
    1.3.2  运行HelloWorld  14
    1.3.3  分析你的第一个Android程序  16
    1.3.4  详解项目中的资源  20
    1.4  前行必备,掌握日志工具的使用  22
    1.4.1  添加LogCat到你的Eclipse  22
    1.4.2  使用Android的日志工具Log  23
    1.4.3  为什么使用Log而不使用System.out  24
    1.5  小结与点评  26

    第2章  先从看得到的入手,探究活动  28
    2.1  活动是什么  28
    2.2  活动的基本用法  28
    2.2.1  手动创建活动  29
    2.2.2  创建和加载布局  30
    2.2.3  在AndroidManifest文件中注册  34
    2.2.4  隐藏标题栏  35
    2.2.5  在活动中使用Toast  36
    2.2.6  在活动中使用Menu  38
    2.2.7  销毁一个活动  41
    2.3  使用Intent在活动之间穿梭  41
    2.3.1  使用显式Intent  41
    2.3.2  使用隐式Intent  44
    2.3.3  更多隐式Intent的用法  46
    2.3.4  向下一个活动传递数据  51
    2.3.5  返回数据给上一个活动  52
    2.4  活动的生命周期  55
    2.4.1  返回栈  55
    2.4.2  活动状态  56
    2.4.3  活动的生存期  56
    2.4.4  体验活动的生命周期  58
    2.4.5  活动被回收了怎么办  66
    2.5  活动的启动模式  68
    2.5.1  standard  68
    2.5.2  singleTop  70
    2.5.3  singleTask  72
    2.5.4  singleInstance  74
    2.6  活动的最佳实践  77
    2.6.1  知晓当前是在哪一个活动  77
    2.6.2  随时随地退出程序  78
    2.6.3  启动活动的最佳写法  80
    2.7  小结与点评  81

    第3章  软件也要拼脸蛋,UI开发的点点滴滴  83
    3.1  该如何编写程序界面  83
    3.2  常见控件的使用方法  84
    3.2.1  TextView  84
    3.2.2  Button  88
    3.2.3  EditText  90
    3.2.4  ImageView  95
    3.2.5  ProgressBar  97
    3.2.6  AlertDialog  101
    3.2.7  ProgressDialog  103
    3.3  详解四种基本布局  105
    3.3.1  LinearLayout  105
    3.3.2  RelativeLayout  112
    3.3.3  FrameLayout  116
    3.3.4  TableLayout  117
    3.4  系统控件不够用?创建自定义控件  120
    3.4.1  引入布局  121
    3.4.2  创建自定义控件  124
    3.5  最常用和最难用的控件——ListView  127
    3.5.1  ListView的简单用法  127
    3.5.2  定制ListView的界面  129
    3.5.3  提升ListView的运行效率  133
    3.5.4  ListView的点击事件  135
    3.6  单位和尺寸  137
    3.6.1  px和pt的窘境  137
    3.6.2  dp和sp来帮忙  139
    3.7  编写界面的最佳实践  141
    3.7.1  制作Nine-Patch图片  141
    3.7.2  编写精美的聊天界面  145
    3.8  小结与点评  151

    第4章  手机平板要兼顾,探究碎片  153
    4.1  碎片是什么  153
    4.2  碎片的使用方式  155
    4.2.1  碎片的简单用法  157
    4.2.2  动态添加碎片  160
    4.2.3  在碎片中模拟返回栈  163
    4.2.4  碎片和活动之间进行通信  164
    4.3  碎片的生命周期  165
    4.3.1  碎片的状态和回调  165
    4.3.2  体验碎片的生命周期  168
    4.4  动态加载布局的技巧  171
    4.4.1  使用限定符  171
    4.4.2  使用最小宽度限定符  174
    4.5  碎片的最佳实践——一个简易版的新闻应用  175
    4.6  小结与点评  187

    第5章  全局大喇叭,详解广播机制  188
    5.1  广播机制简介  188
    5.2  接收系统广播  189
    5.2.1  动态注册监听网络变化  190
    5.2.2  静态注册实现开机启动  194
    5.3  发送自定义广播  196
    5.3.1  发送标准广播  197
    5.3.2  发送有序广播  199
    5.4  使用本地广播  202
    5.5  广播的最佳实践——实现强制下线功能  205
    5.6  Git时间,初识版本控制工具  215
    5.6.1  安装Git  215
    5.6.2  创建代码仓库  216
    5.6.3  提交本地代码  218
    5.7  小结与点评  218

    第6章  数据存储全方案,详解持久化技术  220
    6.1  持久化技术简介  220
    6.2  文件存储  221
    6.2.1  将数据存储到文件中  221
    6.2.2  从文件中读取数据  225
    6.3  SharedPreferences存储  228
    6.3.1  将数据存储到SharedPreferences中  229
    6.3.2  从SharedPreferences中读取数据  232
    6.3.3  实现记住密码功能  234
    6.4  SQLite数据库存储  238
    6.4.1  创建数据库  239
    6.4.2  升级数据库  245
    6.4.3  添加数据  248
    6.4.4  更新数据  251
    6.4.5  删除数据  254
    6.4.6  查询数据  256
    6.4.7  使用SQL操作数据库  260
    6.5  SQLite数据库的最佳实践  260
    6.5.1  使用事务  261
    6.5.2  升级数据库的最佳写法  263
    6.6  小结与点评  266

    第7章  跨程序共享数据,探究内容提供器  268
    7.1  内容提供器简介  268
    7.2  访问其他程序中的数据  269
    7.2.1  ContentResolver的基本用法  269
    7.2.2  读取系统联系人  271
    7.3  创建自己的内容提供器  275
    7.3.1  创建内容提供器的步骤  276
    7.3.2  实现跨程序数据共享  281
    7.4  Git时间,版本控制工具进阶  292
    7.4.1  忽略文件  292
    7.4.2  查看修改内容  293
    7.4.3  撤销未提交的修改  295
    7.4.4  查看提交记录  296
    7.5  小结与点评  297

    第8章  丰富你的程序,运用手机多媒体  298
    8.1  使用通知  298
    8.1.1  通知的基本用法  298
    8.1.2  通知的高级技巧  305
    8.2  接收和发送短信  307
    8.2.1  接收短信  308
    8.2.2  拦截短信  313
    8.2.3  发送短信  314
    8.3  调用摄像头和相册  320
    8.3.1  将程序运行到手机上  320
    8.3.2  调用摄像头拍照  322
    8.3.3  从相册中选择照片  327
    8.4  播放多媒体文件  331
    8.4.1  播放音频  332
    8.4.2  播放视频  336
    8.5  小结与点评  340

    第9章  后台默默的劳动者,探究服务  341
    9.1  服务是什么  341
    9.2  Android多线程编程  341
    9.2.1  线程的基本用法  342
    9.2.2  在子线程中更新UI  343
    9.2.3  解析异步消息处理机制  348
    9.2.4  使用AsyncTask  349
    9.3  服务的基本用法  353
    9.3.1  定义一个服务  353
    9.3.2  启动和停止服务  355
    9.3.3  活动和服务进行通信  359
    9.4  服务的生命周期  363
    9.5  服务的更多技巧  364
    9.5.1  使用前台服务  364
    9.5.2  使用IntentService  367
    9.6  服务的最佳实践——后台执行的定时任务  371
    9.7  小结与点评  376

    第10章  看看精彩的世界,使用网络技术  377
    10.1  WebView的用法  377
    10.2  使用HTTP协议访问网络  380
    10.2.1  使用HttpURLConnection  380
    10.2.2  使用HttpClient  385
    10.3  解析XML格式数据  388
    10.3.1  Pull解析方式  391
    10.3.2  SAX解析方式  394
    10.4  解析JSON格式数据  398
    10.4.1  使用JSONObject  399
    10.4.2  使用GSON  401
    10.5  网络编程的最佳实践  404
    10.6  小结与点评  408

    第11章  Android特色开发,基于位置的服务  409
    11.1  基于位置的服务简介  409
    11.2  找到自己的位置  409
    11.2.1  LocationManager的基本用法  410
    11.2.2  确定自己位置的经纬度  412
    11.3  反向地理编码,看得懂的位置信息  415
    11.3.1  Geocoding API的用法  416
    11.3.2  对经纬度进行解析  417
    11.4  使用百度地图  420
    11.4.1  申请API Key  420
    11.4.2  让地图显示出来  423
    11.4.3  定位到我的位置  427
    11.4.4  使用覆盖物来增加更多功能  430
    11.5  Git时间,版本控制工具的高级用法  434
    11.5.1  分支的用法  434
    11.5.2  与远程版本库协作  437
    11.6  小结与点评  438

    第12章  Android特色开发,使用传感器  439
    12.1  传感器简介  439
    12.2  光照传感器  439
    12.2.1  光照传感器的用法  440
    12.2.2  制作简易光照探测器  441
    12.3  加速度传感器  443
    12.3.1  加速度传感器的用法  443
    12.3.2  模仿微信摇一摇  444
    12.4  方向传感器  446
    12.4.1  方向传感器的用法  446
    12.4.2  制作简易指南针  448
    12.5  小结与点评  453

    第13章  继续进阶,你还应该掌握的高级技巧  455
    13.1  全局获取Context的技巧  455
    13.2  使用Intent传递对象  459
    13.2.1  Serializable方式  459
    13.2.2  Parcelable方式  461
    13.3  定制自己的日志工具  462
    13.4  调试Android程序  464
    13.5  编写测试用例  468
    13.5.1  创建测试工程  468
    13.5.2  进行单元测试  471
    13.6  总结  474

    第14章  进入实战,开发酷欧天气  476
    14.1  功能需求及技术可行性分析  476
    14.2  Git时间,将代码托管到GitHub上  478
    14.3  创建数据库和表  485
    14.4  遍历全国省市县数据  494
    14.5  显示天气信息  507
    14.6  切换城市和手动更新天气  519
    14.7  后台自动更新天气  523
    14.8  修改图标和名称  526
    14.9  你还可以做的事情  528

    第15章  最后一步,将应用发布到Google Play  530
    15.1  生成正式签名的APK文件  530
    15.2  申请Google Play账号  533
    15.3  上传和发布应用程序  534
    15.4  嵌入广告进行盈利  541
    15.4.1  注册有米账号和验证身份  542
    15.4.2  下载和接入有米SDK  544
    15.4.3  重新发布应用程序  550
    15.5  结束语  553

    作者简介

    郭霖
    Android软件开发工程师。从事Android开发工作四年,有着丰富的项目实战经验,负责及参与开发过多款移动应用与游戏,对Android系统架构及应用层开发有着深入的理解。
    2013年3月开始,在CSDN上发表Android技术相关博文,很快就获得了大量网友的好评。短短一年时间博客访问量超过50万次,评价近3000条。荣获CSDN认证专家,并被评选为2013年CSDN年度博客之星。
    现就职于蜗牛移动,继续从事Android开发工作。

    主编推荐

      先来说说较之其他Android书,这本书有哪些特点:
        一、 这本书的内容崭新,是基于Android 4的。在作者动手写这本书时,Android 4.2刚刚发布。
        二、 内容安排符合大脑工程学。对于那些简单的、一看就懂或几乎没实用价值的内容,作者对其篇幅进行了极大压缩,一带而过或压根儿无视,而对于那些真正的难点、疑点,作者进行了透彻而充分的讲解。
        三、 语言简练而通俗易懂,无废话。用相对不那么厚的篇幅,让你进得去出得来,对整个的Android开发世界有一个全面而地道的掌握,所有值得一看的景点你都不会错过。
        四、 考虑初学者的感受,提供一揽子解决方案。当你进行像样点的开发时,不会使用版本控制工具是不可想象的,读本书时,你顺便会学会分布式版本控制系统Git的典型使用。
        五、 开发*终是为了干嘛,是为了APP上架销售,产生回报。本书把这件*后但相当重要的事情一丝不苟地做好了,在国外和靠前多种盈利模式怎么上架收款都写得清清楚楚。
        此外,很好值得赞扬的一点是,在相当多的作者无视交稿期限的今天,在众多作者心平气和地看着交稿期限就这么雄赳赳气昂昂地从眼前走过的今天,本书作者郭霖后生可畏,以身作则地捍卫了出版合同的法律意义,尽管工作时常加班,但他算好了时间,起早贪黑,保质保量地、确确实实地在交稿期限内完成了这本书的创作,这不能不说是一个奇迹。
        这本书是“**行代码”系列的**本书。
        从名字上就能看出,这个系列是写给初学者的。为了让初学者能更好地阅读这个系列的图书,除了在策划思路、内容安排、语言风格、写作上的笔墨分配等方面做了很多工作外,*显而易见的部分是引入了一个经验值、升级、宝物系统。我希望通过这个系统的引入,让读者直观地看到自己水平的提升。以前的技术书,无论你读了多少章,看过多少页,但你并不知道你的水平到什么程度了,缺少一种推动力。
        但这本书不同。在你阅读本书时,当你看完这一节时,你获得了多少经验,级别升到了什么层次,当你读罢这一章后,你又获得了多少经验,捡到或赢得了什么宝物,升到了什么级别,所有这些都交代得明明白白。通过不断增加的经验值,不断出现的匪夷所思的宝物,以及让人提气的新的级别,让读者的阅读过程有更多的乐趣和激动人心的时刻,以促使和激励读者更迅速地学完本书。
        因为郭霖不擅长写这个升级系统的文字,因此,本书中的经验值、升级、宝物系统中的文字都是我本人写的。我希望它的引入能带给读者一些有趣的体验。
        如果你对这个升级系统或**行代码这个系列有任何感受、反馈或建议,欢迎告诉我(neosaga@126.com)。

        本书策划编辑:陈冰
        2014年4月28日

    读者对象

    Android开发初学者。

    内容简介

    《靠前行代码——Android》是Android初学者的很好入门书。全书由浅入深、系统全面地讲解了Android软件开发的方方面面。
    靠前章带领你搭建Android开发环境,完成你的靠前个Android程序。第2章至靠前3章完整地讲解了Android开发中的各种基本知识和关键技术,包括四大组件、UI、碎片、广播机制、数据存储、服务、多媒体、网络、定位服务、传感器,以及分布式版本控制系统Git的使用等等。在部分章节会穿插相关技术的不错使用技巧。靠前4章和靠前5章则将带领你编写一个完整的项目,教会你如何打包、上架、嵌入广告并获得盈利。
    《靠前行代码——Android》内容通俗易懂,既适合初学者循序渐进地阅读,也可作为一本参考手册,随时查阅。

    精彩内容

        欢迎你来到Android世界!Android系统是目前世界上市场占有率优选的移动操作系统,不管你在哪里,几乎都可以看到人人手中都会有一部Android手机。虽然今天的Android世界欣欣向荣,可是你知道它的过去是什么样的吗?我们一起来看一看它的发展史吧。
        2003年10月,Andy Rubin等人一起创办了Android公司。2005年8月谷歌收购了这家仅仅成立了22个月的公司,并让Andy Rubin继续负责Android项目。在经过了数年的研发之后,谷歌终于在2008年推出了Android系统的靠前个版本。但自那之后,Android的发展就一直受到重重阻挠。乔布斯自始至终认为Android是一个抄袭iPhone的产品,里面剽窃了诸多iPhone的创意,并声称一定要毁掉Android。而本身就是基于Linux开发的Android操作系统,在2010年被Linux团队从Linux内核主线中除名。又由于Android中的应用程序都是使用Java开发的,甲骨文则针对Android侵犯Java知识产一事对谷歌提起了诉讼……
        可是,似乎再多的困难也阻挡不了Android快速前进的步伐。由于谷歌的开放政策,任何手机厂商和个人都能免费地获取到Android操作系统的源码,并且可以自由地使用和定制。三星、HTC、摩托、索爱等公司都推出了各自系列的Android手机,Android市场上百花齐放。仅仅推出两年后,Android就超过了已经霸占市场逾十年的诺基亚Symbian,成为了优选靠前大智能手机操作系统,并且每天都还会有数百万台新的Android设备被激活。目前Android已经占据了优选智能手机操作系统70%以上的份额。
        说了这些,想必你已经体会到Android系统炙手可热的程度,并且迫不及待地想要加入到Android开发者的行列当中了吧。试想一下,十个人中有七个人的手机都可以运行你编写的应用程序,还有什么能比这个更诱人的呢?那么从今天起,我就作为你Android旅途中的导师,一步步地引导你成为一名出色的Android开发者。
        好了,现在我们就来一起初窥一下Android世界吧。
        经验值:+5   目前经验值:5
        级别:萌级小菜鸟
        捡到宝物:Android前辈遗失的入门级通用修行卡一张。卡略有磨损,但仍可使用。
        1.1  了解全貌,Android王国简介
        Android从面世以来到现在已经发布了近二十个版本了。在这几年的发展过程中,谷歌为Android王国建立了一个完整的生态系统。手机厂商、开发者、用户之间相互依存,共同推进着Android的蓬勃发展。开发者在其中扮演着不可或缺的角色,因为再很好的操作系统没有开发者来制作丰富的应用程序也是难以得到大众用户喜爱的,相信没有多少人能够忍受没有QQ、微信的手机吧?而谷歌推出的Google Play更是给开发者带来了大量的机遇,只要你能制作出很好的产品,在Google Play上获得了用户的认可,你就接近可以得到不错的经济回报,从而成为一名独立开发者,甚至是成功创业!
        那我们现在就以一个开发者的角度,去了解一下这个操作系统吧。纯理论型的东西也比较无聊,怕你看睡着了,因此我只挑重点介绍,这些东西跟你以后的开发工作都是息息相关的。
        1.1.1  Android系统架构
        为了让你能够更好地理解Android系统是怎么工作的,我们先来看一下它的系统架构。Android大致可以分为四层架构,五块区域。
        1. Linux内核层
        Android系统是基于Linux 2.6内核的,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、照相机驱动、蓝牙驱动、Wi-Fi驱动、电源管理等。
        2. 系统运行库层
        这一层通过一些C/C++库来为Android系统提供了主要的特性支持。如SQLite库提供了数据库的支持,OpenGL|ES库提供了3D绘图的支持,Webkit库提供了浏览器内核的支持等。
        同样在这一层还有Android运行时库,它主要提供了一些核心库,能够允许开发者使用Java语言来编写Android应用。另外Android运行时库中还包含了Dalvik虚拟机,它使得每一个Android应用都能运行在独立的进程当中,并且拥有一个自己的Dalvik虚拟机实例。相较于Java虚拟机,Dalvik是专门为移动设备定制的,它针对手机内存、CPU性能有限等情况做了优化处理。
        3. 应用框架层
        这一层主要提供了构建应用程序时可能用到的各种API,Android自带的一些核心应用就是使用这些API完成的,开发者也可以通过使用这些API来构建自己的应用程序。
        4. 应用层
        所有安装在手机上的应用程序都是属于这一层的,比如系统自带的联系人、短信等程序,或者是你从Google Play上下载的小游戏,当然还包括你自己开发的程序。
        结合图1.1你将会理解得更加深刻,图片源自维基百科。
        图  1.1
        1.1.2  Android已发布的版本
        2008年9月,谷歌正式发布了Android 1.0系统,这也是Android系统很早的版本。随后的几年,谷歌以惊人的速度不断地更新Android系统,2.1、2.2、2.3系统的推出使Android占据了大量的市场。2011年2月,谷歌发布了Android 3.0系统,这个系统版本是专门为平板电脑设计的,但也是Android为数不多比较失败的版本,推出之后一直不见什么起色,市场份额也少得可怜。不过很快,在同年的10月,谷歌又发布了Android 4.0系统,这个版本不再对手机和平板进行差异化区分,既可以应用在手机上也可以应用在平板上,除此之外还引入了不少新特性。目前近期新的系统版本已经是4.4 KitKat。
        下表中列出了目前市场上主要的一些Android系统版本及其详细信息。你看到这张表格时,数据很可能已经发生了变化,查看近期新的数据可以访问http://developer.android.com/ about/dashboards/。
        ……

    价格说明

    定价:为出版社全国统一定价;

    文轩价:为商品的销售价,是您最终决定是否购买商品的依据;受系统缓存影响,最终价格以商品放入购物车后显示的价格为准;

    关于新广告法声明

    新广告法规定所有页面不得出现绝对化用词和功能性用词。

    本店非常支持新广告法,但为了不影响消费者正常购买,页面明显区域本店已在排查修改,对于不明显区域也将会逐步排查并修改,我们在此郑重声明:本店所有页面上的绝对化用词与功能性用词在此声明全部失效,不作为赔付理由。因极限用词引起的任何形式的商品赔付,本店不接受且不妥协。希望消费者理解并欢迎联系客服帮助完善,也请职业打假人士高抬贵手。