第一行代码 : Android 🔍
郭霖著; 郭霖
北京:人民邮电出版社, Di 1 ban, Beijing, China, 2014
中文 [zh] · PDF · 209.8MB · 2014 · 📗 未知类型的图书 · 🚀/duxiu/upload/zlib · Save
描述
Ben shu gong 15 zhang, Di 1 zhang dai ling ni da jian Android kai fa huan jing, Wan cheng ni de di yi ge Android cheng xu. Di 2 zhi 13 zhang wan zheng di jiang jie le Android kai fa zhong de ge zhong ji ben zhi shi he guan jian ji shu, Bao kuo si da zu jian, UI, Sui pian, Guang bo ji zhi, Shu ju cun chu, Fu wu, Duo mei ti, Wang luo, Ding wei fu wu, Chuan gan qi, Yi ji fen bu shi ban ben kong zhi xi tong Git de shi yong deng deng. Zai bu fen zhang jie hui chuan cha xiang guan ji shu de gao ji shi yong ji qiao. Di 14 zhang he di 15 zhang ze jiang dai ling ni bian xie yi ge wan zheng de xiang mu, Jiao hui ni ru he da bao, Shang jia, Qian ru guang gao bing huo de ying li.
备用文件名
zlib/no-category/郭霖/第一行代码 Android_115052901.pdf
备选标题
The first line of code: Android(Chinese Edition)
备选标题
Di yi xing dai ma --Android
备选作者
Guo lin zhu
备选作者
FreePic2Pdf
备选作者
Lin Guo
备用出版商
The People's Posts and Telecommunications Publishing House
备用出版商
Ren min you dian chu ban she
备用出版商
People Post Press
备用版本
China, People's Republic, China
备用版本
Bei jing, 2014
备用版本
2000
元数据中的注释
producers:
FreePic2Pdf_Lib - v3.04
FreePic2Pdf_Lib - v3.04
元数据中的注释
Tu ling yuan chuang.
元数据中的注释
Bookmarks: p1 (p1): 第1章 开始启程,你的第一行Android代码
p1-1 (p2): 1.1 了解全貌,Android王国简介
p1-1-1 (p2): 1.1.1 Android系统架构
p1-1-2 (p3): 1.1.2 Android已发布的版本
p1-1-3 (p4): 1.1.3 Android应用开发特色
p1-2 (p5): 1.2 手把手带你搭建开发环境
p1-2-1 (p5): 1.2.1 准备所需要的软件
p1-2-2 (p6): 1.2.2 搭建开发环境
p1-3 (p11): 1.3 创建你的第一个Android项目
p1-3-1 (p11): 1.3.1 创建HelloWorld项目
p1-3-2 (p14): 1.3.2 运行HelloWorld
p1-3-3 (p16): 1.3.3 分析你的第一个Android程序
p1-3-4 (p20): 1.3.4 详解项目中的资源
p1-4 (p22): 1.4 前行必备,掌握日志工具的使用
p1-4-1 (p22): 1.4.1 添加LogCat到你的Eclipse
p1-4-2 (p23): 1.4.2 使用Android的日志工具Log
p1-4-3 (p24): 1.4.3 为什么使用Log而不使用System.out
p1-5 (p26): 1.5 小结与点评
p2 (p28): 第2章 先从看得到的入手,探究活动
p2-1 (p28): 2.1 活动是什么
p2-2 (p28): 2.2 活动的基本用法
p2-2-1 (p29): 2.2.1 手动创建活动
p2-2-2 (p30): 2.2.2 创建和加载布局
p2-2-3 (p34): 2.2.3 在AndroidManifest文件中注册
p2-2-4 (p35): 2.2.4 隐藏标题栏
p2-2-5 (p36): 2.2.5 在活动中使用Toast
p2-2-6 (p38): 2.2.6 在活动中使用Menu
p2-2-7 (p41): 2.2.7 销毁一个活动
p2-3 (p41): 2.3 使用Intent在活动之间穿梭
p2-3-1 (p41): 2.3.1 使用显式Intent
p2-3-2 (p44): 2.3.2 使用隐式Intent
p2-3-3 (p46): 2.3.3 更多隐式Intent的用法
p2-3-4 (p51): 2.3.4 向下一个活动传递数据
p2-3-5 (p52): 2.3.5 返回数据给上一个活动
p2-4 (p55): 2.4 活动的生命周期
p2-4-1 (p55): 2.4.1 返回栈
p2-4-2 (p56): 2.4.2 活动状态
p2-4-3 (p56): 2.4.3 活动的生存期
p2-4-4 (p58): 2.4.4 体验活动的生命周期
p2-4-5 (p66): 2.4.5 活动被回收了怎么办
p2-5 (p68): 2.5 活动的启动模式
p2-5-1 (p68): 2.5.1 standard
p2-5-2 (p70): 2.5.2 singleTop
p2-5-3 (p72): 2.5.3 singleTask
p2-5-4 (p74): 2.5.4 singleInstance
p2-6 (p77): 2.6 活动的最佳实践
p2-6-1 (p77): 2.6.1 知晓当前是在哪一个活动
p2-6-2 (p78): 2.6.2 随时随地退出程序
p2-6-3 (p80): 2.6.3 启动活动的最佳写法
p2-7 (p81): 2.7 小结与点评
p3 (p83): 第3章 软件也要拼脸蛋,UI开发的点点滴滴
p3-1 (p83): 3.1 该如何编写程序界面
p3-2 (p84): 3.2 常见控件的使用方法
p3-2-1 (p84): 3.2.1 TextView
p3-2-2 (p88): 3.2.2 Button
p3-2-3 (p90): 3.2.3 EditText
p3-2-4 (p95): 3.2.4 ImageView
p3-2-5 (p97): 3.2.5 ProgressBar
p3-2-6 (p101): 3.2.6 AlertDialog
p3-2-7 (p103): 3.2.7 ProgressDialog
p3-3 (p105): 3.3 详解四种基本布局
p3-3-1 (p105): 3.3.1 LinearLayout
p3-3-2 (p112): 3.3.2 RelativeLayout
p3-3-3 (p116): 3.3.3 FrameLayout
p3-3-4 (p117): 3.3.4 TableLayout
p3-4 (p120): 3.4 系统控件不够用?创建自定义控件
p3-4-1 (p121): 3.4.1 引入布局
p3-4-2 (p124): 3.4.2 创建自定义控件
p3-5 (p127): 3.5 最常用和最难用的控件——ListView
p3-5-1 (p127): 3.5.1 ListView的简单用法
p3-5-2 (p129): 3.5.2 定制ListView的界面
p3-5-3 (p133): 3.5.3 提升ListView的运行效率
p3-5-4 (p135): 3.5.4 ListView的点击事件
p3-6 (p137): 3.6 单位和尺寸
p3-6-1 (p137): 3.6.1 px和pt的窘境
p3-6-2 (p139): 3.6.2 dp和sp来帮忙
p3-7 (p141): 3.7 编写界面的最佳实践
p3-7-1 (p141): 3.7.1 制作Nine-Patch图片
p3-7-2 (p145): 3.7.2 编写精美的聊天界面
p3-8 (p151): 3.8 小结与点评
p4 (p153): 第4章 手机平板要兼顾,探究碎片
p4-1 (p153): 4.1 碎片是什么
p4-2 (p155): 4.2 碎片的使用方式
p4-2-1 (p157): 4.2.1 碎片的简单用法
p4-2-2 (p160): 4.2.2 动态添加碎片
p4-2-3 (p163): 4.2.3 在碎片中模拟返回栈
p4-2-4 (p164): 4.2.4 碎片和活动之间进行通信
p4-3 (p165): 4.3 碎片的生命周期
p4-3-1 (p165): 4.3.1 碎片的状态和回调
p4-3-2 (p168): 4.3.2 体验碎片的生命周期
p4-4 (p171): 4.4 动态加载布局的技巧
p4-4-1 (p171): 4.4.1 使用限定符
p4-4-2 (p174): 4.4.2 使用最小宽度限定符
p4-5 (p175): 4.5 碎片的最佳实践——个简易版的新闻应用
p4-6 (p187): 4.6 小结与点评
p5 (p188): 第5章 全局大喇叭,详解广播机制
p5-1 (p188): 5.1 广播机制简介
p5-2 (p189): 5.2 接收系统广播
p5-2-1 (p190): 5.2.1 动态注册监听网络变化
p5-2-2 (p194): 5.2.2 静态注册实现开机启动
p5-3 (p196): 5.3 发送自定义广播
p5-3-1 (p197): 5.3.1 发送标准广播
p5-3-2 (p199): 5.3.2 发送有序广播
p5-4 (p202): 5.4 使用本地广播
p5-5 (p205): 5.5 广播的最佳实践——实现强制下线功能
p5-6 (p215): 5.6 Git时间,初识版本控制工具
p5-6-1 (p215): 5.6.1 安装Git
p5-6-2 (p216): 5.6.2 创建代码仓库
p5-6-3 (p218): 5.6.3 提交本地代码
p5-7 (p218): 5.7 小结与点评
p6 (p220): 第6章 数据存储全方案,详解持久化技术
p6-1 (p220): 6.1 持久化技术简介
p6-2 (p221): 6.2 文件存储
p6-2-1 (p221): 6.2.1 将数据存储到文件中
p6-2-2 (p225): 6.2.2 从文件中读取数据
p6-3 (p228): 6.3 SharedPreferences存储
p6-3-1 (p229): 6.3.1 将数据存储到SharedPreferences中
p6-3-2 (p232): 6.3.2 从SharedPreferences中读取数据
p6-3-3 (p234): 6.3.3 实现记住密码功能
p6-4 (p238): 6.4 SQLite数据库存储
p6-4-1 (p239): 6.4.1 创建数据库
p6-4-2 (p245): 6.4.2 升级数据库
p6-4-3 (p248): 6.4.3 添加数据
p6-4-4 (p251): 6.4.4 更新数据
p6-4-5 (p254): 6.4.5 删除数据
p6-4-6 (p256): 6.4.6 查询数据
p6-4-7 (p260): 6.4.7 使用SQL操作数据库
p6-5 (p260): 6.5 SQLite数据库的最佳实践
p6-5-1 (p261): 6.5.1 使用事务
p6-5-2 (p263): 6.5.2 升级数据库的最佳写法
p6-6 (p266): 6.6 小结与点评
p7 (p268): 第7章 跨程序共享数据,探究内容提供器
p7-1 (p268): 7.1 内容提供器简介
p7-2 (p269): 7.2 访问其他程序中的数据
p7-2-1 (p269): 7.2.1 ContentResolver的基本用法
p7-2-2 (p271): 7.2.2 读取系统联系人
p7-3 (p275): 7.3 创建自己的内容提供器
p7-3-1 (p276): 7.3.1 创建内容提供器的步骤
p7-3-2 (p281): 7.3.2 实现跨程序数据共享
p7-4 (p292): 7.4 Git时间,版本控制工具进阶
p7-4-1 (p292): 7.4.1 忽略文件
p7-4-2 (p293): 7.4.2 查看修改内容
p7-4-3 (p295): 7.4.3 撤销未提交的修改
p7-4-4 (p296): 7.4.4 查看提交记录
p7-5 (p297): 7.5 小结与点评
p8 (p298): 第8章 丰富你的程序,运用手机多媒体
p8-1 (p298): 8.1 使用通知
p8-1-1 (p298): 8.1.1 通知的基本用法
p8-1-2 (p305): 8.1.2 通知的高级技巧
p8-2 (p307): 8.2 接收和发送短信
p8-2-1 (p308): 8.2.1 接收短信
p8-2-2 (p313): 8.2.2 拦截短信
p8-2-3 (p314): 8.2.3 发送短信
p8-3 (p320): 8.3 调用摄像头和相册
p8-3-1 (p320): 8.3.1 将程序运行到手机上
p8-3-2 (p322): 8.3.2 调用摄像头拍照
p8-3-3 (p327): 8.3.3 从相册中选择照片
p8-4 (p331): 8.4 播放多媒体文件
p8-4-1 (p332): 8.4.1 播放音频
p8-4-2 (p336): 8.4.2 播放视频
p8-5 (p340): 8.5 小结与点评
p9 (p341): 第9章 后台默默的劳动者,探究服务
p9-1 (p341): 9.1 服务是什么
p9-2 (p341): 9.2 Android多线程编程
p9-2-1 (p342): 9.2.1 线程的基本用法
p9-2-2 (p343): 9.2.2 在子线程中更新UI
p9-2-3 (p348): 9.2.3 解析异步消息处理机制
p9-2-4 (p349): 9.2.4 使用AsyncTask
p9-3 (p353): 9.3 服务的基本用法
p9-3-1 (p353): 9.3.1 定义一个服务
p9-3-2 (p355): 9.3.2 启动和停止服务
p9-3-3 (p359): 9.3.3 活动和服务进行通信
p9-4 (p363): 9.4 服务的生命周期
p9-5 (p364): 9.5 服务的更多技巧
p9-5-1 (p364): 9.5.1 使用前台服务
p9-5-2 (p367): 9.5.2 使用IntentService
p9-6 (p371): 9.6 服务的最佳实践——后台执行的定时任务
p9-7 (p376): 9.7 小结与点评
p10 (p377): 第10章 看看精彩的世界,使用网络技术
p10-1 (p377): 10.1 WebView的用法
p10-2 (p380): 10.2 使用HTTP协议访问网络
p10-2-1 (p380): 10.2.1 使用HttpURLConnection
p10-2-2 (p385): 10.2.2 使用HttpClient
p10-3 (p388): 10.3 解析XML格式数据
p10-3-1 (p391): 10.3.1 Pull解析方式
p10-3-2 (p394): 10.3.2 SAX解析方式
p10-4 (p398): 10.4 解析JSON格式数据
p10-4-1 (p399): 10.4.1 使用JSONObject
p10-4-2 (p401): 10.4.2 使用GSON
p10-5 (p404): 10.5 网络编程的最佳实践
p10-6 (p408): 10.6 小结与点评
p11 (p409): 第11章 Android特色开发,基于位置的服务
p11-1 (p409): 11.1 基于位置的服务简介
p11-2 (p409): 11.2 找到自己的位置
p11-2-1 (p410): 11.2.1 LocationManager的基本用法
p11-2-2 (p412): 11.2.2 确定自己位置的经纬度
p11-3 (p415): 11.3 反向地理编码,看得懂的位置信息
p11-3-1 (p416): 11.3.1 GeocodingAPI的用法
p11-3-2 (p417): 11.3.2 对经纬度进行解析
p11-4 (p420): 11.4 使用百度地图
p11-4-1 (p420): 11.4.1 申请API Key
p11-4-2 (p423): 11.4.2 让地图显示出来
p11-4-3 (p427): 11.4.3 定位到我的位置
p11-4-4 (p430): 11.4.4 使用覆盖物来增加更多功能
p11-5 (p434): 11.5 Git时间,版本控制工具的高级用法
p11-5-1 (p434): 11.5.1 分支的用法
p11-5-2 (p437): 11.5.2 与远程版本库协作
p11-6 (p438): 11.6 小结与点评
p12 (p439): 第12章 Android特色开发,使用传感器
p12-1 (p439): 12.1 传感器简介
p12-2 (p439): 12.2 光照传感器
p12-2-1 (p440): 12.2.1 光照传感器的用法
p12-2-2 (p441): 12.2.2 制作简易光照探测器
p12-3 (p443): 12.3 加速度传感器
p12-3-1 (p443): 12.3.1 加速度传感器的用法
p12-3-2 (p444): 12.3.2 模仿微信摇一摇
p12-4 (p446): 12.4 方向传感器
p12-4-1 (p446): 12.4.1 方向传感器的用法
p12-4-2 (p448): 12.4.2 制作简易指南针
p12-5 (p453): 12.5 小结与点评
p13 (p455): 第13章 继续进阶,你还应该掌握的高级技巧
p13-1 (p455): 13.1 全局获取Context的技巧
p13-2 (p459): 13.2 使用Intent传递对象
p13-2-1 (p459): 13.2.1 Serializable方式
p13-2-2 (p461): 13.2.2 Parcelable方式
p13-3 (p462): 13.3 定制自己的日志工具
p13-4 (p464): 13.4 调试Android程序
p13-5 (p468): 13.5 编写测试用例
p13-5-1 (p468): 13.5.1 创建测试工程
p13-5-2 (p471): 13.5.2 进行单元测试
p13-6 (p474): 13.6 总结
p14 (p476): 第14章 进入实战,开发酷欧天气
p14-1 (p476): 14.1 功能需求及技术可行性分析
p14-2 (p478): 14.2 Git时间,将代码托管到GitHub上
p14-3 (p485): 14.3 创建数据库和表
p14-4 (p494): 14.4 遍历全国省市县数据
p14-5 (p507): 14.5 显示天气信息
p14-6 (p518): 14.6 切换城市和手动更新天气
p14-7 (p522): 14.7 后台自动更新天气
p14-8 (p525): 14.8 修改图标和名称
p14-9 (p527): 14.9 你还可以做的事情
p15 (p529): 第15章 最后一步,将应用发布到Google Play
p15-1 (p529): 15.1 生成正式签名的APK文件
p15-2 (p532): 15.2 申请Google Play账号
p15-3 (p533): 15.3 上传和发布应用程序
p15-3-1 (p540): 15.4 嵌入广告进行盈利
p15-3-2 (p541): 15.4.1 注册有米账号和验证身份
p15-3-3 (p543): 15.4.2 下载和接入有米SDK
p15-3-4 (p549): 15.4.3 重新发布应用程序
p15-4 (p552): 15.5 结束语
p1-1 (p2): 1.1 了解全貌,Android王国简介
p1-1-1 (p2): 1.1.1 Android系统架构
p1-1-2 (p3): 1.1.2 Android已发布的版本
p1-1-3 (p4): 1.1.3 Android应用开发特色
p1-2 (p5): 1.2 手把手带你搭建开发环境
p1-2-1 (p5): 1.2.1 准备所需要的软件
p1-2-2 (p6): 1.2.2 搭建开发环境
p1-3 (p11): 1.3 创建你的第一个Android项目
p1-3-1 (p11): 1.3.1 创建HelloWorld项目
p1-3-2 (p14): 1.3.2 运行HelloWorld
p1-3-3 (p16): 1.3.3 分析你的第一个Android程序
p1-3-4 (p20): 1.3.4 详解项目中的资源
p1-4 (p22): 1.4 前行必备,掌握日志工具的使用
p1-4-1 (p22): 1.4.1 添加LogCat到你的Eclipse
p1-4-2 (p23): 1.4.2 使用Android的日志工具Log
p1-4-3 (p24): 1.4.3 为什么使用Log而不使用System.out
p1-5 (p26): 1.5 小结与点评
p2 (p28): 第2章 先从看得到的入手,探究活动
p2-1 (p28): 2.1 活动是什么
p2-2 (p28): 2.2 活动的基本用法
p2-2-1 (p29): 2.2.1 手动创建活动
p2-2-2 (p30): 2.2.2 创建和加载布局
p2-2-3 (p34): 2.2.3 在AndroidManifest文件中注册
p2-2-4 (p35): 2.2.4 隐藏标题栏
p2-2-5 (p36): 2.2.5 在活动中使用Toast
p2-2-6 (p38): 2.2.6 在活动中使用Menu
p2-2-7 (p41): 2.2.7 销毁一个活动
p2-3 (p41): 2.3 使用Intent在活动之间穿梭
p2-3-1 (p41): 2.3.1 使用显式Intent
p2-3-2 (p44): 2.3.2 使用隐式Intent
p2-3-3 (p46): 2.3.3 更多隐式Intent的用法
p2-3-4 (p51): 2.3.4 向下一个活动传递数据
p2-3-5 (p52): 2.3.5 返回数据给上一个活动
p2-4 (p55): 2.4 活动的生命周期
p2-4-1 (p55): 2.4.1 返回栈
p2-4-2 (p56): 2.4.2 活动状态
p2-4-3 (p56): 2.4.3 活动的生存期
p2-4-4 (p58): 2.4.4 体验活动的生命周期
p2-4-5 (p66): 2.4.5 活动被回收了怎么办
p2-5 (p68): 2.5 活动的启动模式
p2-5-1 (p68): 2.5.1 standard
p2-5-2 (p70): 2.5.2 singleTop
p2-5-3 (p72): 2.5.3 singleTask
p2-5-4 (p74): 2.5.4 singleInstance
p2-6 (p77): 2.6 活动的最佳实践
p2-6-1 (p77): 2.6.1 知晓当前是在哪一个活动
p2-6-2 (p78): 2.6.2 随时随地退出程序
p2-6-3 (p80): 2.6.3 启动活动的最佳写法
p2-7 (p81): 2.7 小结与点评
p3 (p83): 第3章 软件也要拼脸蛋,UI开发的点点滴滴
p3-1 (p83): 3.1 该如何编写程序界面
p3-2 (p84): 3.2 常见控件的使用方法
p3-2-1 (p84): 3.2.1 TextView
p3-2-2 (p88): 3.2.2 Button
p3-2-3 (p90): 3.2.3 EditText
p3-2-4 (p95): 3.2.4 ImageView
p3-2-5 (p97): 3.2.5 ProgressBar
p3-2-6 (p101): 3.2.6 AlertDialog
p3-2-7 (p103): 3.2.7 ProgressDialog
p3-3 (p105): 3.3 详解四种基本布局
p3-3-1 (p105): 3.3.1 LinearLayout
p3-3-2 (p112): 3.3.2 RelativeLayout
p3-3-3 (p116): 3.3.3 FrameLayout
p3-3-4 (p117): 3.3.4 TableLayout
p3-4 (p120): 3.4 系统控件不够用?创建自定义控件
p3-4-1 (p121): 3.4.1 引入布局
p3-4-2 (p124): 3.4.2 创建自定义控件
p3-5 (p127): 3.5 最常用和最难用的控件——ListView
p3-5-1 (p127): 3.5.1 ListView的简单用法
p3-5-2 (p129): 3.5.2 定制ListView的界面
p3-5-3 (p133): 3.5.3 提升ListView的运行效率
p3-5-4 (p135): 3.5.4 ListView的点击事件
p3-6 (p137): 3.6 单位和尺寸
p3-6-1 (p137): 3.6.1 px和pt的窘境
p3-6-2 (p139): 3.6.2 dp和sp来帮忙
p3-7 (p141): 3.7 编写界面的最佳实践
p3-7-1 (p141): 3.7.1 制作Nine-Patch图片
p3-7-2 (p145): 3.7.2 编写精美的聊天界面
p3-8 (p151): 3.8 小结与点评
p4 (p153): 第4章 手机平板要兼顾,探究碎片
p4-1 (p153): 4.1 碎片是什么
p4-2 (p155): 4.2 碎片的使用方式
p4-2-1 (p157): 4.2.1 碎片的简单用法
p4-2-2 (p160): 4.2.2 动态添加碎片
p4-2-3 (p163): 4.2.3 在碎片中模拟返回栈
p4-2-4 (p164): 4.2.4 碎片和活动之间进行通信
p4-3 (p165): 4.3 碎片的生命周期
p4-3-1 (p165): 4.3.1 碎片的状态和回调
p4-3-2 (p168): 4.3.2 体验碎片的生命周期
p4-4 (p171): 4.4 动态加载布局的技巧
p4-4-1 (p171): 4.4.1 使用限定符
p4-4-2 (p174): 4.4.2 使用最小宽度限定符
p4-5 (p175): 4.5 碎片的最佳实践——个简易版的新闻应用
p4-6 (p187): 4.6 小结与点评
p5 (p188): 第5章 全局大喇叭,详解广播机制
p5-1 (p188): 5.1 广播机制简介
p5-2 (p189): 5.2 接收系统广播
p5-2-1 (p190): 5.2.1 动态注册监听网络变化
p5-2-2 (p194): 5.2.2 静态注册实现开机启动
p5-3 (p196): 5.3 发送自定义广播
p5-3-1 (p197): 5.3.1 发送标准广播
p5-3-2 (p199): 5.3.2 发送有序广播
p5-4 (p202): 5.4 使用本地广播
p5-5 (p205): 5.5 广播的最佳实践——实现强制下线功能
p5-6 (p215): 5.6 Git时间,初识版本控制工具
p5-6-1 (p215): 5.6.1 安装Git
p5-6-2 (p216): 5.6.2 创建代码仓库
p5-6-3 (p218): 5.6.3 提交本地代码
p5-7 (p218): 5.7 小结与点评
p6 (p220): 第6章 数据存储全方案,详解持久化技术
p6-1 (p220): 6.1 持久化技术简介
p6-2 (p221): 6.2 文件存储
p6-2-1 (p221): 6.2.1 将数据存储到文件中
p6-2-2 (p225): 6.2.2 从文件中读取数据
p6-3 (p228): 6.3 SharedPreferences存储
p6-3-1 (p229): 6.3.1 将数据存储到SharedPreferences中
p6-3-2 (p232): 6.3.2 从SharedPreferences中读取数据
p6-3-3 (p234): 6.3.3 实现记住密码功能
p6-4 (p238): 6.4 SQLite数据库存储
p6-4-1 (p239): 6.4.1 创建数据库
p6-4-2 (p245): 6.4.2 升级数据库
p6-4-3 (p248): 6.4.3 添加数据
p6-4-4 (p251): 6.4.4 更新数据
p6-4-5 (p254): 6.4.5 删除数据
p6-4-6 (p256): 6.4.6 查询数据
p6-4-7 (p260): 6.4.7 使用SQL操作数据库
p6-5 (p260): 6.5 SQLite数据库的最佳实践
p6-5-1 (p261): 6.5.1 使用事务
p6-5-2 (p263): 6.5.2 升级数据库的最佳写法
p6-6 (p266): 6.6 小结与点评
p7 (p268): 第7章 跨程序共享数据,探究内容提供器
p7-1 (p268): 7.1 内容提供器简介
p7-2 (p269): 7.2 访问其他程序中的数据
p7-2-1 (p269): 7.2.1 ContentResolver的基本用法
p7-2-2 (p271): 7.2.2 读取系统联系人
p7-3 (p275): 7.3 创建自己的内容提供器
p7-3-1 (p276): 7.3.1 创建内容提供器的步骤
p7-3-2 (p281): 7.3.2 实现跨程序数据共享
p7-4 (p292): 7.4 Git时间,版本控制工具进阶
p7-4-1 (p292): 7.4.1 忽略文件
p7-4-2 (p293): 7.4.2 查看修改内容
p7-4-3 (p295): 7.4.3 撤销未提交的修改
p7-4-4 (p296): 7.4.4 查看提交记录
p7-5 (p297): 7.5 小结与点评
p8 (p298): 第8章 丰富你的程序,运用手机多媒体
p8-1 (p298): 8.1 使用通知
p8-1-1 (p298): 8.1.1 通知的基本用法
p8-1-2 (p305): 8.1.2 通知的高级技巧
p8-2 (p307): 8.2 接收和发送短信
p8-2-1 (p308): 8.2.1 接收短信
p8-2-2 (p313): 8.2.2 拦截短信
p8-2-3 (p314): 8.2.3 发送短信
p8-3 (p320): 8.3 调用摄像头和相册
p8-3-1 (p320): 8.3.1 将程序运行到手机上
p8-3-2 (p322): 8.3.2 调用摄像头拍照
p8-3-3 (p327): 8.3.3 从相册中选择照片
p8-4 (p331): 8.4 播放多媒体文件
p8-4-1 (p332): 8.4.1 播放音频
p8-4-2 (p336): 8.4.2 播放视频
p8-5 (p340): 8.5 小结与点评
p9 (p341): 第9章 后台默默的劳动者,探究服务
p9-1 (p341): 9.1 服务是什么
p9-2 (p341): 9.2 Android多线程编程
p9-2-1 (p342): 9.2.1 线程的基本用法
p9-2-2 (p343): 9.2.2 在子线程中更新UI
p9-2-3 (p348): 9.2.3 解析异步消息处理机制
p9-2-4 (p349): 9.2.4 使用AsyncTask
p9-3 (p353): 9.3 服务的基本用法
p9-3-1 (p353): 9.3.1 定义一个服务
p9-3-2 (p355): 9.3.2 启动和停止服务
p9-3-3 (p359): 9.3.3 活动和服务进行通信
p9-4 (p363): 9.4 服务的生命周期
p9-5 (p364): 9.5 服务的更多技巧
p9-5-1 (p364): 9.5.1 使用前台服务
p9-5-2 (p367): 9.5.2 使用IntentService
p9-6 (p371): 9.6 服务的最佳实践——后台执行的定时任务
p9-7 (p376): 9.7 小结与点评
p10 (p377): 第10章 看看精彩的世界,使用网络技术
p10-1 (p377): 10.1 WebView的用法
p10-2 (p380): 10.2 使用HTTP协议访问网络
p10-2-1 (p380): 10.2.1 使用HttpURLConnection
p10-2-2 (p385): 10.2.2 使用HttpClient
p10-3 (p388): 10.3 解析XML格式数据
p10-3-1 (p391): 10.3.1 Pull解析方式
p10-3-2 (p394): 10.3.2 SAX解析方式
p10-4 (p398): 10.4 解析JSON格式数据
p10-4-1 (p399): 10.4.1 使用JSONObject
p10-4-2 (p401): 10.4.2 使用GSON
p10-5 (p404): 10.5 网络编程的最佳实践
p10-6 (p408): 10.6 小结与点评
p11 (p409): 第11章 Android特色开发,基于位置的服务
p11-1 (p409): 11.1 基于位置的服务简介
p11-2 (p409): 11.2 找到自己的位置
p11-2-1 (p410): 11.2.1 LocationManager的基本用法
p11-2-2 (p412): 11.2.2 确定自己位置的经纬度
p11-3 (p415): 11.3 反向地理编码,看得懂的位置信息
p11-3-1 (p416): 11.3.1 GeocodingAPI的用法
p11-3-2 (p417): 11.3.2 对经纬度进行解析
p11-4 (p420): 11.4 使用百度地图
p11-4-1 (p420): 11.4.1 申请API Key
p11-4-2 (p423): 11.4.2 让地图显示出来
p11-4-3 (p427): 11.4.3 定位到我的位置
p11-4-4 (p430): 11.4.4 使用覆盖物来增加更多功能
p11-5 (p434): 11.5 Git时间,版本控制工具的高级用法
p11-5-1 (p434): 11.5.1 分支的用法
p11-5-2 (p437): 11.5.2 与远程版本库协作
p11-6 (p438): 11.6 小结与点评
p12 (p439): 第12章 Android特色开发,使用传感器
p12-1 (p439): 12.1 传感器简介
p12-2 (p439): 12.2 光照传感器
p12-2-1 (p440): 12.2.1 光照传感器的用法
p12-2-2 (p441): 12.2.2 制作简易光照探测器
p12-3 (p443): 12.3 加速度传感器
p12-3-1 (p443): 12.3.1 加速度传感器的用法
p12-3-2 (p444): 12.3.2 模仿微信摇一摇
p12-4 (p446): 12.4 方向传感器
p12-4-1 (p446): 12.4.1 方向传感器的用法
p12-4-2 (p448): 12.4.2 制作简易指南针
p12-5 (p453): 12.5 小结与点评
p13 (p455): 第13章 继续进阶,你还应该掌握的高级技巧
p13-1 (p455): 13.1 全局获取Context的技巧
p13-2 (p459): 13.2 使用Intent传递对象
p13-2-1 (p459): 13.2.1 Serializable方式
p13-2-2 (p461): 13.2.2 Parcelable方式
p13-3 (p462): 13.3 定制自己的日志工具
p13-4 (p464): 13.4 调试Android程序
p13-5 (p468): 13.5 编写测试用例
p13-5-1 (p468): 13.5.1 创建测试工程
p13-5-2 (p471): 13.5.2 进行单元测试
p13-6 (p474): 13.6 总结
p14 (p476): 第14章 进入实战,开发酷欧天气
p14-1 (p476): 14.1 功能需求及技术可行性分析
p14-2 (p478): 14.2 Git时间,将代码托管到GitHub上
p14-3 (p485): 14.3 创建数据库和表
p14-4 (p494): 14.4 遍历全国省市县数据
p14-5 (p507): 14.5 显示天气信息
p14-6 (p518): 14.6 切换城市和手动更新天气
p14-7 (p522): 14.7 后台自动更新天气
p14-8 (p525): 14.8 修改图标和名称
p14-9 (p527): 14.9 你还可以做的事情
p15 (p529): 第15章 最后一步,将应用发布到Google Play
p15-1 (p529): 15.1 生成正式签名的APK文件
p15-2 (p532): 15.2 申请Google Play账号
p15-3 (p533): 15.3 上传和发布应用程序
p15-3-1 (p540): 15.4 嵌入广告进行盈利
p15-3-2 (p541): 15.4.1 注册有米账号和验证身份
p15-3-3 (p543): 15.4.2 下载和接入有米SDK
p15-3-4 (p549): 15.4.3 重新发布应用程序
p15-4 (p552): 15.5 结束语
开源日期
2024-06-28
🚀 快速下载
成为会员以支持书籍、论文等的长期保存。为了感谢您对我们的支持,您将获得高速下载权益。❤️
如果您在本月捐款,您将获得双倍的快速下载次数。
🐢 低速下载
由可信的合作方提供。 更多信息请参见常见问题解答。 (可能需要验证浏览器——无限次下载!)
- 低速服务器(合作方提供) #1 (稍快但需要排队)
- 低速服务器(合作方提供) #2 (稍快但需要排队)
- 低速服务器(合作方提供) #3 (稍快但需要排队)
- 低速服务器(合作方提供) #4 (稍快但需要排队)
- 低速服务器(合作方提供) #5 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #6 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #7 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #8 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #9 (无需排队,但可能非常慢)
- 下载后: 在我们的查看器中打开
所有选项下载的文件都相同,应该可以安全使用。即使这样,从互联网下载文件时始终要小心。例如,确保您的设备更新及时。
外部下载
-
对于大文件,我们建议使用下载管理器以防止中断。
推荐的下载管理器:JDownloader -
您将需要一个电子书或 PDF 阅读器来打开文件,具体取决于文件格式。
推荐的电子书阅读器:Anna的档案在线查看器、ReadEra和Calibre -
使用在线工具进行格式转换。
推荐的转换工具:CloudConvert和PrintFriendly -
您可以将 PDF 和 EPUB 文件发送到您的 Kindle 或 Kobo 电子阅读器。
推荐的工具:亚马逊的“发送到 Kindle”和djazz 的“发送到 Kobo/Kindle” -
支持作者和图书馆
✍️ 如果您喜欢这个并且能够负担得起,请考虑购买原版,或直接支持作者。
📚 如果您当地的图书馆有这本书,请考虑在那里免费借阅。
下面的文字仅以英文继续。
总下载量:
“文件的MD5”是根据文件内容计算出的哈希值,并且基于该内容具有相当的唯一性。我们这里索引的所有影子图书馆都主要使用MD5来标识文件。
一个文件可能会出现在多个影子图书馆中。有关我们编译的各种数据集的信息,请参见数据集页面。
有关此文件的详细信息,请查看其JSON 文件。 Live/debug JSON version. Live/debug page.