章节目录
第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软件开发的方方面面。第1章带领你搭建Android开发环境,完成你的第一个Android程序。第2章至第13章完整地讲解了Android开发中的各种基本知识和关键技术,包括四大组件、UI、碎片、广播机制、数据存储、服务、多媒体、网络、定位服务、传感器,以及分布式版本控制系统Git的使用等等。在部分章节会穿插相关技术的高级使用技巧。第14章和第15章则将带领你编写一个完整的项目,教会你如何打包、上架、嵌入广告并获得盈利。《第一行代码——Android》内容通俗易懂,既适合初学者循序渐进地阅读,也可作为一本参考手册,随时查阅。
下载说明
1、第一行代码是作者郭霖创作的原创作品,下载链接均为网友上传的网盘链接!
2、相识电子书提供优质免费的txt、pdf等下载链接,所有电子书均为完整版!
下载链接
热门评论
-
慕课网的评论6.10 猿问讨论:第一行说是Unexpected identifier ,问题代码如下↓真相竟是因为是用的对象字面量方法封装的函数,所以每个函数之间用逗号分隔,而最后一个函数后面不需要逗号,对象字面量封装完数据以后,大括号后面跟分号。还告诉你如何通过obj.removeHandler来调用,学习请进:
-
证明你我存在的岁月的评论真正意义上的第一行代码···明明早就写了无数公式好么
-
图灵教育的评论#新书上市# 《Android编程权威指南(第2版)》美亚最畅销Android图书升级版!与《第一行代码》并称读者第一本和第二本Android书。权威——源自大名鼎鼎的Big Nerd Ranch训练营;全面——涵盖Android开发必备知识;实用——8个Android应用开发实战项目;易懂——精心编排章节。【购买】
-
大衛發條陳的评论为伟大的开源事业贡献的第一行代码,给UE4了,,,,
-
张凯-i春秋的评论三生万物,三年前的今天写下了第一行e春秋的代码,三年后结出了i 春秋、e春秋和竞赛服务三个硕果,这是一个小结,更是新的开始!补发昨天的发布会
-
YccccccccycycYCCC的评论读过《第一行代码》 ★★★★★ “好书!初学入门力荐!唯独不满意的是出版社在文中掺杂了所谓‘打怪升级加经验’增加读书乐趣的元素,纯粹凑页数。然并卵!但重点是也无法影响我对作者通俗、幽默风趣的文..” 网页链接
-
蟪蛄蛄的春秋的评论使用Python敲下我迈向程序猿的第一行代码“hello world”[doge]
-
ice_Lollipop的评论不知不觉,第一行代码要出第二版了,而且eclipse换成了androidstudio。然而我赶不上了,毕设已经到了最后了。[泪流满面][泪流满面]以后再买来看了。。。(讲道理其实我不怎么喜欢安卓开发。。
-
东湖畔新家的评论【游戏编程十年总结(上) - 深圳-宝爷】【摘要】自敲第一行代码起,已经十年多了,今天既不是十年整的日子,也不是一个有特定意义的日子,本来像这种大总结的文章,当择良辰吉日,斋戒沐浴三日,方可动笔。一开始计划是写一篇五年总结的,但各种原因… 网页链接
-
EDNChina的评论我在#EDN 电子技术论坛#看到帖子【游戏编程十年经验总结:回顾校园时光(上篇)】网页链接:自敲第一行代码起,已经十年多了,今天既不是十年整的日子,也不是一个有特定意义的日子,本来像这种大总结的文章,当择良辰吉日,斋戒沐浴三日,方可动笔...
-
codingmakesyoufat的评论一年前的今天我在家里写下了datatrust的第一行代码。经过这365天高强度的努力工作,这套接近发布的云端电气设计系统已超出了我们一年前出发时的期望,成为业内最先进的自动化电气设计软件,在大幅度提高设计质量的同时,较传统设计软件节省设计成本50%以上。对它接下来的表现充满期待...
-
Archer--L的评论8个小时整 憋出3行代码 结果第一行就出错 我也觉得这样很不好………
-
剪瞳1372的评论生妈妈的气[怒] 不过eclipse还有JDK还有虚拟机终于装好了,好开心,接下来就是好好看第一行代码了,加油加油!还有算法和概率论还有电分,[拳头][拳头]
-
小影子的开挂人参的评论刚刚想反正没多久就睡觉了,就再看一个小问题:怎么退出ubuntu12.04的桌面,然后退出了,然后填了login和password进入了系统,然后写了我的第一行代码logout。噗,啊哈哈哈。。。我能说我觉得很开心么[笑cry]
-
breakthen的评论读过《第一行代码》 我的评分:★★★★★ 太适合入门了 网页链接 来自@豆瓣App
-
稀土掘金的评论网页链接 从 0 开始学习 GitHub 系列之「向 GitHub 提交代码」 - 今天我就来介绍下如何跟远程仓库一起协作,教你们向 GitHub 上提交你们的第一行代码!分享by@SegmentFault 详戳→网页链接
-
BearyChat的评论倍洽更新 | BearyChat 高级版正式上线,同时我们上线了一些新功能。我们回顾过许多次 BearyChat,从 2014 年写下的第一行代码,到 2015 年的正式开放注册,到今天,BearyChat 终于又将开始一段新的里程。同时,我们还上线了表情回应,引用跳转等功能。[心] 倍洽更新 | Bea...
-
想和VV谈恋爱的评论敲第一行代码,溜不溜!! (^▽^) 哈哈哈哈,少年,我看你骨骼惊奇,跟我一起学做菜吧!
-
马智子的评论“我的第一行代码…”我的秒拍作品,一起来看~秒拍视频(使用#秒拍#录制)
-
Feelings__的评论代码风格不一样……… 居然是前花括号后紧跟第一行代码。 能不能空一行再开始[白眼]