标签分类
当前位置:首页 > 移动开发电子书 > Android电子书网盘下载
Android开发基础教程 Android开发基础教程
niehanmin

niehanmin 提供上传

资源
13
粉丝
37
喜欢
126
评论
17

    Android开发基础教程 PDF 高清版

    Android电子书
    • 发布时间:

    给大家带来的一篇关于Android相关的电子书资源,介绍了关于Android开发、Android教程方面的内容,本书是由人民邮电出版社出版,格式为PDF,资源大小62.9 MB,邓文渊编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:8.9,更多相关的学习资源可以参阅 移动开发电子书android视频、等栏目。

  • Android开发基础教程 PDF 下载
  • 下载地址:https://pan.baidu.com/s/1O5BcW9mG9z3d4rs5rbYE4g
  • 分享码:3iw2
  • Android开发基础教程 PDF

    android开发基础教程》全面介绍了android开发的核心技术,并用实例贯穿所讲的知识点,主要内容包括:android基本界面组件、消息显示相关组件、下拉列表、图片相关界面组件、listview界面组件、功能表菜单组件、intent的使用、activity的生命周期、数据的保存、sqlite数据库、时间服务的相关组件、播放音频和视频、google地图应用等技术,并通过大量实例的演示,力争让读者达到学以致用的目的。

    《android开发基础教程》适合android初学者、开发工程师,以及大中专院校相关专业的师生用书和培训机构的教材。

    目录

    • 第1章 敲开Android的开发大门 1
    • 1.1 Android是什么 1
    • 1.1.1 Android简介 1
    • 1.1.2 Android历史 2
    • 1.1.3 Android特点 2
    • 1.1.4 Android4.0新功能 4
    • 1.2 搭建Android开发环境 4
    • 1.2.1 准备工作 4
    • 1.2.2 Android开发工具包安装步骤 5
    • 1.3 安装Java开发工具包 5
    • 1.4 配置Eclipse集成开发环境 7
    • 1.4.1 下载Eclipse 7
    • 1.4.2 创建Eclipse桌面快捷方式 8
    • 1.4.3 第一次执行Eclipse 9
    • 1.5 安装Eclipse的Android开发工具插件 10
    • 1.6 安装Android软件开发工具包 12
    • 1.7 Android模拟器简介 15
    • 1.7.1 认识Android模拟器 15
    • 1.7.2 创建Android模拟器 16
    • 1.7.3 启动Android模拟器 17
    • 1.7.4 设置模拟器语言及时区 18
    • 1.7.5 模拟器解锁 20
    • 1.7.6 切换模拟器屏幕方向 20
    • 扩展练习 21
    • 第2章 Android,我来了 22
    • 2.1 从无到有新建项目 22
    • 2.1.1 新建项目 22
    • 2.1.2 启动已存在项目 24
    • 2.1.3 启动示例作为项目 26
    • 2.1.4 项目编译版本及属性 27
    • 2.1.5 在模拟器中执行程序 28
    • 2.1.6 在不同模拟器中执行程序 29
    • 2.2 Android项目的文件夹结构 31
    • 2.2.1 项目文件夹概述 31
    • 2.2.2 src文件夹 31
    • 2.2.3 Android SDK文件夹 32
    • 2.2.4 res/drawable文件夹 32
    • 2.2.5 res/layout文件夹 33
    • 2.2.6 res/values文件夹 33
    • 2.2.7 assets文件夹 34
    • 2.2.8 gen文件夹 34
    • 2.2.9 AndroidManifest.xml及其他文件 37
    • 2.3 main.xml布局配置文件 37
    • 2.3.1 LinearLayout布局标签 38
    • 2.3.2 TextView组件 39
    • 2.4 启动程序文件 39
    • 2.4.1 Activity简介 39
    • 2.4.2 启动程序文件内容 40
    • 扩展练习 41
    • 第3章 认识基本的界面组件 43
    • 3.1 TextView界面组件 43
    • 3.1.1 新建示例项目 43
    • 3.1.2 TextView的语法与常用属性 44
    • 3.1.3 在Graphical Layout编辑区新增TextView 45
    • 3.1.4 使用xml语法新增TextView 47
    • 3.2 EditText界面组件 48
    • 3.2.1 EditText的语法与常用属性 48
    • 3.2.2 新增EditText组件 50
    • 3.3 Button界面组件 51
    • 3.3.1 Button的语法 51
    • 3.3.2 新增Button组件 51
    • 3.4 使用Button组件执行程序 52
    • 3.4.1 组件的身份证:资源类文件 53
    • 3.4.2 Button组件触发事件的程序 54
    • 3.4.3 加入Button执行程序代码 55
    • 3.5 综合演练:计算美国职棒大联盟投手的球速 57
    • 3.5.1 新建项目并完成布局 57
    • 3.5.2 加入Button执行程序代码 58
    • 3.6 多按钮共享事件 59
    • 3.6.1 建立共享的listener事件 59
    • 3.6.2 示例:多按钮共享事件 60
    • 扩展练习 62
    • 第4章 消息显示相关组件 63
    • 4.1 TableLayout 63
    • 4.1.1 TableLayout的语法 63
    • 4.1.2 示例:按钮式键盘布局配置 64
    • 4.2 Toast弹出消息 66
    • 4.2.1 Toast基本语法 67
    • 4.2.2 示例:加入显示消息的按钮式键盘 67
    • 4.2.3 重构Toast语法 69
    • 4.2.4 控制显示消息显示的位置 70
    • 4.3 AlertDialog对话框 72
    • 4.3.1 AlertDialog基本样式 73
    • 4.3.2 示例:创建AlertDialog 74
    • 4.3.3 AlertDialog交互按钮 75
    • 4.3.4 示例:加入交互按钮的AlertDialog 76
    • 4.4 Eclipse集成开发环境的自动完成功能 77
    • 4.4.1 自动引入包 77
    • 4.4.2 自动声明变量 78
    • 4.4.3 自动输入方法或属性 79
    • 4.4.4 自动完成内建类的必要方法 79
    • 扩展练习 80
    •  
    • 第5章 单选、复选和下拉列表 82
    • 5.1 CheckBox界面组件——复选列表 82
    • 5.1.1 CheckBox的语法示例 82
    • 5.1.2 新增CheckBox组件 82
    • 5.1.3 创建CheckBox组件复选的触发事件 83
    • 5.1.4 嵌套LinearLayout 86
    • 5.2 RadioGroup、RadioButton组件——单选列表 89
    • 5.2.1 RadioGroup和RadioButton的语法 89
    • 5.2.2 新增RadioGroup、RadioButton组件 90
    • 5.2.3 创建RadioButton组件选中的触发事件 91
    • 5.2.4 复制为嵌套布局配置项目 93
    • 5.3 Spinner界面组件——下拉式列表 95
    • 5.3.1 Spinner的语法示例 95
    • 5.3.2 新增Spinner组件 95
    • 5.3.3 创建Spinner选项的步骤 96
    • 5.3.4 利用数组声明加入Spinner选项列表 96
    • 5.3.5 创建Spinner组件的触发事件 97
    • 5.3.6 利用string.xml文件加入Spinner选项列表 99
    • 扩展练习 101
    •  
    • 第6章 图片相关界面组件 102
    • 6.1 ImageView界面组件——显示图像 102
    • 6.1.1 ImageView的语法与常用属性 102
    • 6.1.2 示例:图像浏览器 103
    • 6.2 Gallery界面组件——画廊展示 106
    • 6.2.1 Gallery语法示例与常用的属性 106
    • 6.2.2 Gallery程序执行的流程 106
    • 6.2.3 继承BaseAdapter 107
    • 6.2.4 示例:使用Gallery组件显示图片行 107
    • 6.2.5 示例:图片循环播放的Gallery组件 110
    • 6.3 GridView界面组件——表格展示 111
    • 6.3.1 GridView语法示例与常用的属性 111
    • 6.3.2 GridView程序执行的流程 111
    • 6.3.3 继承BaseAdapter 112
    • 6.3.4 示例:GridView显示图片行 112
    • 扩展练习 115
    • 第7章 ListView界面组件 116
    • 7.1 ListView界面组件——选项列表 116
    • 7.1.1 ListView的语法示例 116
    • 7.1.2 新增ListView组件 116
    • 7.1.3 创建ListView的选项步骤 117
    • 7.1.4 设置ListView的选项列表 117
    • 7.1.5 创建ListView组件的触发事件 118
    • 7.2 改变ListView属性及选项过滤 120
    • 7.3 设置多选的ListView组件 122
    • 7.3.1 ListView组件多选语法示例 122
    • 7.3.2 示例:设置ListView组件为多选 122
    • 7.4 自定义ListView列表项目 124
    • 7.4.1 定义自定义的布局配置文件 125
    • 7.4.2 继承BaseAdapter 126
    • 7.4.3 示例:自定义ListView列表项目 126
    • 扩展练习 130
    •  
    • 第8章 菜单组件 131
    • 8.1 菜单——OptionMenu 131
    • 8.1.1 加入菜单项 131
    • 8.1.2 菜单项的处理 132
    • 8.1.3 示例:自定义菜单选项 133
    • 8.2 快捷菜单——ContextMenu 135
    • 8.2.1 加入快捷菜单的选项 135
    • 8.2.2 快捷菜单注册 136
    • 8.2.3 快捷菜单选项的处理 136
    • 8.2.4 示例:自定义快捷菜单选项 137
    • 扩展练习 139
    •  
    • 第9章 Intent的使用 140
    • 9.1 认识Android Manifest.xml 140
    • 9.2 认识Intent 142
    • 9.2.1 使用Intent执行浏览网站的动作 142
    • 9.2.2 使用Intent调用拨号按钮与拨打电话 143
    • 9.2.3 执行Activity 143
    • 9.2.4 示例:浏览网站、调用拨号按钮、拨打电话按钮 144
    • 9.3 执行自定义的Activity 146
    • 9.3.1 Intent执行自定义Activity的方法 146
    • 9.3.2 示例:利用Intent切换自定义Activity 146
    • 9.4 附带数据的Intent 150
    • 9.4.1 使用Intent传递数据 150
    • 9.4.2 取出Intent的数据 151
    • 9.4.3 示例:利用Intent传递数据 152
    • 9.5 从被调用的Intent传回数据 155
    • 9.5.1 主程序传递数据 155
    • 9.5.2 被调用的程序取出Intent的数据 155
    • 9.5.3 被调用的程序传回Intent的数据 156
    • 9.5.4 主程序接收传回的数据 156
    • 9.5.5 示例:利用Intent接收回传数据 157
    • 扩展练习 161
    •  
    • 第10章 Activity的生命周期 162
    • 10.1 Activity的生命周期 162
    • 10.1.1 什么是Activity生命周期 162
    • 10.1.2 系统内存不足时的处理 163
    • 10.2 Activity运行流程 163
    • 10.2.1 启动Activity 164
    • 10.2.2 结束一个Activity 164
    • 10.2.3 调用内建的Activity 165
    • 10.2.4 由内建的Activity返回原来的Activity 165
    • 10.2.5 调用自定义的Activity 165
    • 10.2.6 结束自定义的Activity返回原来的Activity 165
    • 10.2.7 点击POWER键锁定屏幕/解除锁定 165
    • 10.2.8 点击HOME键 166
    • 10.2.9 重新执行原来的程序 166
    • 10.2.10 由系统强制回收后再启动 166
    • 10.3 观察Activity生命周期 166
    • 10.3.1 示例:Activity的生命周期观察 166
    • 10.3.2 示例:Activity的生命周期应用示例 171
    • 扩展练习 173
    •  
    • 第11章 程序调试及代码段 174
    • 11.1 程序错误的种类 174
    • 11.2 try...catch...finally错误处理 175
    • 11.2.1 try…catch…finally语法格式 175
    • 11.2.2 示例:try…catch…finally错误处理 176
    • 11.3 Log——日志文件的使用 179
    • 11.3.1 加入日志文件的程序 179
    • 11.3.2 查看Log日志 181
    • 11.4 断点 183
    • 11.4.1 认识断点 183
    • 11.4.2 示例:以调试模式查看变量 183
    • 11.5 程序代码段 185
    • 11.5.1 快速创建代码段 186
    • 11.5.2 在Snippets面板创建代码段 188
    • 11.5.3 使用代码段 189
    • 11.5.4 维护代码段 191
    • 11.5.5 代码段的导入导出 191
    • 扩展练习 193
    • 第12章 数据的保存 194
    • 12.1 File Explorer——文件浏览器 194
    • 12.1.1 使用File Explorer查看文件结构 194
    • 12.1.2 File Explorer文件操作 196
    • 12.2 SharedPreferences数据处理 199
    • 12.2.1 SharedPreferences保存数据 200
    • 12.2.2 写入SharedPreference对象的内容 200
    • 12.2.3 SharedPreferences读取及删除数据 201
    • 12.2.4 示例:智能欢迎页面 202
    • 12.2.5 SharedPreferences实际文件 204
    • 12.3 使用文件保存数据 205
    • 12.3.1 写入文件数据 205
    • 12.3.2 读取文件数据 206
    • 12.3.3 示例:创建登录数据文件 207
    • 12.3.4 文件数据保存位置 209
    • 12.3.5 示例:登录页面——利用文件数据比对 210
    • 扩展练习 213
    • 第13章 SQLite数据库 215
    • 13.1 认识SQLite数据库 215
    • 13.2 SQLiteDatabase类 216
    • 13.2.1 使用execSQL()方法执行SQL命令 216
    • 13.2.2 示例:使用execSQL()方法执行SQL命令 217
    • 13.2.3 rawQuery()数据查询 219
    • 13.2.4 query()数据查询 220
    • 13.2.5 insert()数据新增 220
    • 13.2.6 delete()数据删除 221
    • 13.2.7 update()修改数据 221

    13.3 使用ListView显示SQLite数据 221

    13.3.1 SimpleCursorAdapter类 221

    13.3.2 将SQLite数据显示在ListView上 222

    13.4 创建自己的数据库类 226

    13.4.1 创建自定义数据库类:MyDB 226

    13.4.2 加入使用自定义类的执行程序代码 229

    扩展练习 233

    第14章 时间服务的相关组件 234

    14.1 AnalogClock及DigitalClock组件 234

    14.2 Chronometer组件——定时器 235

    14.2.1 Chronometer的语法 235

    14.2.2 示例:Chronometer时钟及秒表 236

    14.2.3 示例:Chronometer幻灯图片播放 237

    14.3 Timer类 239

    14.3.1 Timer类的语法 239

    14.3.2 示例:Timer秒表 241

    14.4 Thread类 243

    14.4.1 线程 243

    14.4.2 示例:Thread双秒表 244

    14.4.3 Thread传送消息 247

    扩展练习 248

     

    第15章 播放音频视频与录音 249

    15.1 播放音频 249

    15.1.1 MediaPlayer组件 249

    15.1.2 模拟器SD卡保存文件 250

    15.1.3 播放SD卡音频 251

    15.1.4 示例:SD卡音频播放器 252

    15.1.5 播放资源文件音频 255

    15.1.6 示例:资源文件音频播放器 256

    15.2 播放视频 257

    15.2.1 VideoView视频播放器 257

    15.2.2 示例:VideoView视频播放器 258

    15.2.3 SurfaceView组件语法 259

    15.2.4 MediaPlayer与SurfaceView结合 260

    15.2.5 示例:自定义格式视频播放器 260

    15.3 录制音频 262

    15.3.1 MediaRecorder组件语法 262

    15.3.2 示例:MediaRecorder录音机 263

    扩展练习 267

    第16章 发布应用程序 268

    16.1 支持多语言及屏幕模式 268

    16.1.1 抽取字符串到XML文件 268

    16.1.2 示例:计算大联盟球速抽取字符串 271

    16.1.3 开发多语言应用程序 272

    16.1.4 示例:计算大联盟球速多语言版 274

    16.1.5 支持各种屏幕分辨率 275

    16.2 将应用发布到Google Play商店 276

    16.2.1 安装应用程序到实体机 276

    16.2.2 应用程序产生私人密钥 278

    16.2.3 发布应用程序到Google Play商店 281

    扩展练习 281

     

    第17章 Google地图应用程序 282

    17.1 Google地图应用程序准备工作 282

    17.1.1 安装Google APIs 282

    17.1.2 创建Google APIs应用程序的模拟器 283

    17.1.3 创建Google APIs应用程序 284

    17.1.4 查询经纬度 284

    17.1.5 申请本机执行Google地图的API Key 285

    17.2 创建Google地图应用程序 287

    17.2.1 创建Google地图应用程序的步骤 287

    17.2.2 示例:新建Google地图应用程序 288

    17.3 加入Google地图控制功能 290

    17.3.1 地图的查看模式 290

    17.3.2 地图的放大、缩小和拖曳 291

    17.3.3 示例:设置Google地图的缩放、拖曳和查看模式 291

    17.4 获取当前位置的相关信息 293

    17.4.1 Android设备定位的方法 294

    17.4.2 使用LocationManager对象定位 294

    17.4.3 示例:使用LocationManager对象获取当前的位置 296

    17.4.4 进行模拟定位 298

    17.4.5 使用MyLocationOverlay对象定位 299

    17.4.6 示例:使用LocationOverlay对象获取当前定位 301

    17.5 在Google地图上加标记 302

    17.5.1 创建继承ItemizedOverlay类的标记图层类 302

    17.5.2 创建标记图层对象 304

    17.5.3 示例:为地图显示标记 305

    17.6 发布能在实体机执行的Google地图应用程序 309

    17.6.1 申请实体机执行的API Key 309

    17.6.2 使用实体机的API Key发布apk文件 311

    17.6.3 Google地图应用程序发布错误时的处理 311

    扩展练习 312"

    上一篇:人工智能时代  下一篇:IOS 8开发指南

    展开 +

    收起 -

    Android相关电子书
    学习笔记
    网友NO.790298

    Eclipse运行android项目报错Unable to build: the file dx.jar was not loaded from the SDK folder的解决办法

    由于最近通过 SDK-Manager 更新了 build-tools ,当要用到 dx.jar 这个包时,自动调用最新 build-tools 中 dx.jar ,但是运行 Android 项目时 Console 却提示: Failed to load C:\Program Files (x86)\android\android-sdk\build-tools\26.0.0-preview\lib\dx.jar Unable to build: the file dx.jar was not loaded from the SDK folder 解决步骤: (1)找到你 Android 的 SDK 安装目录C:\Program Files (x86)\Android\android-sdk,进入 build-tools 文件夹 (2)发现还有很多其他版本的 build-tools ,而且版本都是顺序排列的,我们就任意选择一个(只要不是最新版的就行),打开进入 lib 文件夹 (3)发现里面有 dx.jar 包,复制粘贴到最新版 build-tools 存放 dx.jar 包的目录下,替换掉原来的 dx.jar 包(C:\Program Files (x86)\Android\android-sdk\build-tools\26.0.0-preview\lib\dx.jar) (4)完成,再次启动 Android 项目,问题解决! 总结 以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对码农之家的支持。如果你想了解更多相关内容请查看下面相关链接 ……

    网友NO.594302

    微信小程序开发之IOS和Android兼容的问题

    微信小程序开发之IOS和Android兼容的问题 一、时间转换问题: 这不只是小程序上面的问题是ios系统 都有这个问题 就是new Date("2017-06-16") 在IOS会出现NAN的情况所以对于时间转换需要另行封装,解决方案如下 1.替换”-“为”/“ 2.删除”.“后面的字符串(带毫秒也会有问题) 代码如下: /** * 字符串转换为时间 * @param {String} src 字符串 */ strToDate(dateObj){ dateObj = dateObj.replace(/T/g, ' ').replace(/\.[\d]{3}Z/, '').replace(/(-)/g, '/') dateObj = dateObj.slice(0, dateObj.indexOf(".")) return new Date(dateObj) } 二、fixed定位问题 整个页面的fixed定位,在ios下下拉会触发下拉事件,但是没有动画效果。Android就能正常运行 flex中使用 绝对定位,ios出现严重错位,导致父级元素也会变成绝对定位,Android能达到理想效果 总而言之 尽量不用fixed 三、absolute定位问题 1.使用absolute定位,并且宽带设置了100% 并且设置了padding就会导致屏幕宽度溢出,出现页面左右可以移动的bug,模拟器上是没有问题,但是真机上是有这个问题的。这个问题让我调试并痛苦了许久 2.使用absolute并且当前元素是flex容器这种情况在Ios下面布局不会起到左右,会出现所有元素转换成了absloute并且文字错位 3.总而言之 尽量不用 absolute 四、 word-spacing在button中的问题 有时候在使用大按钮的时候两个字中间希望有……

    网友NO.306570

    Android Studio中ButterKnife插件的安装与使用详解

    1》Android Studio 安装ButterKnife插件 同安装其他插件类似,如下: 1.1》打开Plugins界面 按照上图中1,2,3指示操作(注意:这里我的Android Studio中已经安装了该插件,所以显示的内容不太一样)。然后重启Android Studio。 2》在项目上使用该开源项目(以Android Studio 为例) 2.1》在bulid.gradle中添加依赖 重新编译一下该项目,通过后继续操作。 2.2》在代码中就可以使用注解的方式了 2.2.1》示例布局文件如下: LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" TextView android:id="@+id/text_veiw_tv1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TextView 1" / Button android:id="@+id/button_bt1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Button1" / TextView android:id="@+id/text_veiw_tv2" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TextView 2" / Button android:id="@+id/button_bt2" android:layout_width="match_parent" android:l……

    网友NO.253039

    jquery判断iPhone、Android设备类型

    最近做了一版微信宣传页,通过JQ来判断设备,并进行下载 微信内置浏览器对下载链接进行了屏蔽,所以先进行判断,如果是微信内置浏览器,则跳转应用宝链接,如果不是,则判断是iPhone/Adroid/PC 并进行跳转 代码如下: function downloadApp(){ var u = navigator.userAgent; var ua = navigator.userAgent.toLowerCase(); var isAndroid = u.indexOf('Android') -1 || u.indexOf('Adr') -1; //android终端 var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端 if(ua.match(/MicroMessenger/i)=="micromessenger") { //微信内置浏览器 $(".download a").click(function(){ window.location.href='http://a.app.qq.com/o/simple.jsp?pkgname=应用名 ' }); }else{ if(isiOS){ $(".download a").click(function(){ window.location.href='https://itunes.apple.com/cn/app/应用名' }); }else if(isAndroid){ $(".download a").click(function(){ window.location.href='http://a.app.qq.com/o/simple.jsp?pkgname=应用名' }); }else{ $(".download a").click(function(){ window.location.href='应用链接' }); } } } 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。 ……

    Copyright 2018-2019 xz577.com 码农之家

    版权责任说明