<第一行代码——Android> 基本信息 作者: 郭霖 丛书名: 图灵原创 出版社:人民邮电出版社 ISBN:9787115362865 上架时间:2014-7-14 出版日期:2014 年7月 开本:16开 页码:553 版次:1-1 所属分类:计算机 > 软件与程序设计 > 移动开发 > Android 更多关于>>> <第一行代码——Android>   编辑推荐 CSDN超人气博主.CSDN 2013年度十大博客之星.资深Android…
前言 事实上我当初决定開始写博客的想法挺简单的,认为自己搞技术这么多年了,总应该要留下点什么.既然没能写出什么出色的应用,那至少也要留下点文字分享给大家,以指引在我后面的开发人员们,毕竟我也从前辈们的博客那里受惠了非常多. 受邀 下定决心之后我就開始了我的博客之旅,令我没想到的是,我写的文章居然非常受大家的欢迎,短时间内就聚集了大量的人气.更令我没想到的事,在我開始写博客不久之后,人民邮电出版社图灵公司的副总编辑陈冰先生就联系上了我,希望我能够写一本关于Android开发技术的书籍! 陈冰,第一…
学号 2018-2019-1 <第一行代码Android>第一章学习总结 教材学习内容总结 - Android系统架构: 1.Linux内核层 Android系统是基于Linux内核的,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动,音频驱动,照相机驱动,蓝牙驱动,Wi-Fi驱动,电源管理等. 2.系统运行底层 - 通过一些C/C++库来为Android系统提供了主要的特性支持 库名 功能 SQLite库 提供数据库的支持 OpenGL/ES库 提供3D绘图支持 Webkit…
学号 2017-2018-2 <第一行代码Android>第二章学习总结 教材学习内容总结 - 活动是什么: 活动(Activity)是最容易吸引用户的地方,它是一种可以包含用户界面的组件,主要用于和用户进行交互.一个应用程序可以包含零个或多个活动,但不包含任何活动的应用程序很少见. - 活动的基本用法: 1.创建活动: 在Android Studio 中只能打开一个项目,所以我们首先要将原来项目关闭,在导航栏File--Close Project. 新建一个项目,但在Add an Activ…
第一行代码 Android  思维导图…
版权声明:本文出自郭霖的博客,转载必须注明出处. https://blog.csdn.net/sinyu890807/article/details/28863515 (已结束) 我的著作<第一行代码--Android>已经预售几天了,这段时间也有不少朋友早早地就订购了这本书,感谢大家对我一如既往的支持,在离发货还有十几天的时候就预订了这本书. 为了特别感谢在预售期就这么支持我的朋友们.如今图灵公司大力支持下举办一个晒订单赢图灵图书的活动.欢迎已经订购和准备订购的朋友们积极參与进来.假设你还没…
2020年人民邮电出版社出版的图书 <第一行代码Android(第3版)>是2020年4月人民邮电出版社出版的图书,作者是郭霖. 封面: 内容简介: <第一行代码 Android 第3版>被Android开发者誉为"Android学习第一书".全书系统全面.循序渐进地介绍了Android软件开发的必备知识.经验和技巧. <第一行代码 Android 第3版>基于Android 10.0对第2版进行了全面更新,不仅将所有知识点都在Android 10.…
今日android第一行代码[第二版]已到,收获的季节到了 先看一下封面 书签: 以后就把空闲时间送给它吧 先来看一下本书的目录: 第1章 开始启程--你的第1行Android代码 第2章 先从看得到的入手--探究活动 第3章 软件也要拼脸蛋--UI开发的点点滴滴 第4章 手机平板要兼顾--探究碎片 第5章 全局大喇叭--详解广播机制 第6章 数据存储全方案--详解持久化技术 第7章 跨程序共享数据--探究内容提供器 第8章 丰富你的程序--运用手机多媒体 第9章 看看精彩的世界--使用网络技术…
1.Intent中只能指定一个action,但却能指定多个category. 2.使用隐式Intent,不仅可以启动自己程序内的活动,还可以启动其他程序的活动,使得Android应用程序之间 的功能共享成为了可能.eg.应用程序中需要展示网页,没必要自己去实现个浏览器,也基本不可能,只需要 调用系统的浏览器打开该网页就可以. Intent intent = new Intent(Intent.ACTION_VIEW); intent.setData(Uri.parse("http://www.b…
1.升级数据库 为了避免手工清空数据(或卸载重装APP),重写SQLiteOpenHelper里面的onUpgrade()方法   引用自http://blog.csdn.net/longvslove/article/details/7079954,作者longvslove Andoird的SQLiteOpenHelper类中有一个onUpgrade方法.帮助文档中只是说当数据库升级时该方法被触发.经过实践,解决了我一连串的疑问: 1. 帮助文档里说的“数据库升级”是指什么? 你开发了一个程序,…
广播接收器 1.注册方式 动态注册:在程序中注册,如在Activity里的onCreate()方法中注册 静态注册:在AndroidManifest.xml中注册   2.可接收哪些广播 接收系统消息:如网络状态变化.系统完成启动.电量状态 接收应用消息:如短信来电通知   3.使用注意 不允许在onReceive方法中执行耗时操作,不允许启动新线程 一般用于启动其他组件,如Service, 状态栏通知   发送广播 1.广播类型 按接收方式:标准广播(默认).有序广播 按广播范围:全局广播(默…
1.单位dp.dip.sp.pt.px.in.mm 这里引用StackOverFlow上的一个解答: px is one pixel. sp is scale-independent pixels. dip is Density-independent pixels.( dip == dp is ture)   Here is the difference dp Density-independent Pixels - an abstract unit that is based on the…
1.BaseActivity里面可以干什么 定义一个Context定义一个TAG 记录当前的Activity名字getClass().getSimpleName(); 2.Activity里面的几个重载方法 //完整生存周期 onCreate() 首次创建Activity时 onDestroy() 在Activity销毁之前 //可见生存周期 onStart() 在Activity由不可见变为可见时 onStop() 在Activiy由可见变为完全不可见时(如被一个新的Activity完全覆盖)…
1.3 创建你的第一个Android项目 1.3.1 创建HelloWorld项目 1.Application Name代表应用名称,手机上显示的就是它: 2.Project Name代表项目名称,其显示在Eclipse中: 3.Minimum Required SDK是指程序最低兼容版本,Compile With是指程序编译版本: 1.3.3 分析你的第一个Android程序 1.src 是放置我们所有Java代码的地方: 2.gen这个目录里的内容是自动生成的,主要有一个R.java文件,你…
1. 2003.10,Andy Rubin创办Android公司.2005.8,Google收购之,并于2008年推出Android系统第一个版本. 2. ①Linux Kernel:基于Linux 2.6. Display Driver:基于Linux的帧缓冲(Frame Buffer)驱动. Camera Driver:常用的基于Linux的v412(Video for Linux)的驱动.   Bluetooth Driver:基于IEEE 802.15.1标准的无线传输技术. Flash…
1.四大组件:活动(Activity),服务(Service),广播接收器(Broadcast Receiver),内容提供器(Content Provider). Activity:应用中看得到的东西,都是放在活动中的. Service:无法看见,一直在后台默默地运行,即使退出应用,仍然可以继续运行. Broadcast Receiver:允许应用接收来自各处的广播消息,如电话或短信等,应用本身也可以向外发出广播消息. Content Provider:方便应用程序间共享数据. 2.Andro…
在android开发中找出当前界面对应的Activity,步骤如下: 新建一个BaseActivity继承自Activity,然后在BaseActivity中重写onCreate()方法,通过getClass().getSimpleName()获取当前实例的类名,并通过Log打印出来.代码如下: public class BaseActivity extends Activity { protected void onCreate(Bundle savedInstanceState){ supe…
https://github.com/guolindev/booksource 第1章 开始启程----你的第一行Android代码 (已看) 第2章 先从看得到的入手----探究活动 (已看) 第3章 软件也要拼脸蛋----UI开发的点点滴滴 (已看) 第4章 手机平板要兼顾----探究碎片 第5章 全局大喇叭----详解广播机制 第6章 数据存储全方案----详解持久化技术 第7章 跨程序共享数据----探究内容提供器 第8章 丰富你的程序----运用手机多媒体 第9章 看看精彩的世界---…
1.希望服务一旦启动就立刻去执行某个动作,可以将逻辑写在onStartCommand()方法里. 2.onCreate()和onStartCommand()的区别:onCreate()方法是在服务第一次创建时调用的,而onStartCommand()方 法在每次启动服务时都会调用. 3.调用bindService()方法将MainActivity和MyService进行绑定,bindService()方法接收三个参数,第一个是刚刚创建的 Intent对象:第二个是前面创建出的ServiceCon…
1.为了更加方便在子线程中对UI操作,借助Android中提供的AsyncTask,十分简单地从子线程到主线程的. 2.一个最简单的自定义AsyncTask写成如下方式: class DownloadTask extends AsyncTask<Void, Integer, Boolean> { } AsyncTask的第一个泛型参数指定为Void,表示在执行AsyncTask的时候不需要传入参数给后台任务:第二个 泛型参数指定为Integer,表示使用整型数据来作为进度显示单位:第三个泛型参…
1.Android的UI线程不安全,想要更新应用程序里的UI元素,则须在主线程中进行,否则会出现异常. 2.Android不允许在子线程里进行UI操作,对于该情况,Android提供了一套异步消息处理机制,完美解决在子线程中进行UI操作. 3.解析异步消息处理机制: Android中的异步消息处理有四部分,Message, Handler, MessageQueue和Looper. (1)Message:线程之间传递的消息,在内部携带少量的信息,用在不同线程间交换数据. (2)Handler:处…
1."如何在自己的程序中访问其他应用程序的数据",思路->获取到该应用程序的内容URI,再借助ContentResolver进行CRUD操作. 2.要实现跨程序共享数据->官方推荐:使用内容提供器,通过新建一个类去继承ContentProvider的方式来创建一个自己的内容提供器. 3.使用通配符的方式分别匹配两种格式的内容URI,规则:(1)*:匹配任意长度的任意字符:(2)#:匹配任意长度的数字. eg:一个能够匹配任意表的内容URI格式: content://com.…
1.网络通信原理,在一个IP网络范围内最大的IP地址是被保留作为广播地址来使用的.某个网络的IP 范围是192.168.0.XXX, 子网掩码是255.255.255.0,则该网络的广播地址是192.168.0.255.广播数据包会被发送到同一网络上的所有端口,这样在 该网络中的每台主机都会收到这条广播. 2.Android提供了一套完整的API,允许应用程序自由地发送和接收广播.(1)发送广播借助Intent.(2)接收广播需要广播 接收器. 3.Android中的广播分标准广播和有序广播.…
1.EditText:程序和用户进行交互的重要控件,允许用户在控件里输入和编辑内容,并可以在程序中对这些内容进行处理. 2.Android控件使用的一般规律:给控件定义一个id->指定下控件的宽度和高度-> 再适当加入些控件的特有的属性. 3.ImageView:用于在界面上展示图片的一个控件:ProgressBar:用于在界面上显示一个进度条,表示程序在加载一些数据. AlertDialog:在当前的一个界面弹出一个对话框,该对话框是置顶于所有界面元素之上的,能够屏蔽其他控件的交互能力, 常…
1.android:theme,是用于给当前活动指定主题的,Android系统内置很多主题可以选择,@android:style/Theme.Dialog则是 让DialogActivity使用对话框式的主题. 2.onSaveInstanceState()回调方法,该方法会保证一定在活动被回收之前调用,故我们可以通过该方法解决活动被回收时临时 数据得不到保存的问题.onSaveInstanceState()方法会携带一个Bundle类型的参数,Bundle提供了一系列的方法用于保存数据, 比如…
1.活动-一种可以包含用户界面的组件,用于和用户进行交互. <Button android:id="@+id/button_1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Button 1" /> (1)android:id:给当前的元素定义一个唯一标识符.引用一个id,@id/id_…
1.Android中定时任务一般有两种实现方式:(1)使用Java API里提供的Timer类:(2)使用Android的Alarm机制. 但是,Timer类有个明显的短板,不太适用于那些需要长期在后台运行的定时任务. 2.为了让电池更加耐用,每种手机都有自己的休眠政策,Android手机会在长时间不操作的情况下自动让CPU进入到 睡眠状态,可能导致Timer类中的定时任务无法正常运行:而Alarm机制具有唤醒CPU功能,可以保证每次需要执行 定时任务时CPU都能正常工作. 3.获取个Alarm…
1.服务是Android中实现程序后台运行的解决方案,适用于执行不需要和用户交互而且要长期运行的任务. 2.服务的运行不依赖于任何用户界面,或切到后台,或用户打开了另外一个应用程序,服务能够保持正常运行. 3.服务不是运行在一个独立的进程中,是依赖于创建服务时所在的应用程序进程,进程被杀掉,依赖于该进程的服务会停止运行. 4.服务并不会自动开启线程,代码默认运行在主线程中.也即需要在服务的内部手动创建子线程,在这里执行具体任务,否则有 可能出现主线程被阻塞. 5.多线程例子:需要执行一些耗时操作…
1.内容提供器:用于在不同的应用程序之间实现数据共享的功能,提供了一套完整的机制,允许一个程序访问另一个程序中的数据,同时还能保证被访问 数据的安全性.使用内容提供器是Android实现跨程序共享数据的标准方式. 2.内容提供器的用法:(1)使用现有的内容提供器来读取和操作相应程序中的数据:(2)创建自己的内容提供器给我们程序的数据提供外部访问接口. 3.对于每一个应用程序,想要访问内容提供器中共享的数据,就一定借助ContentResolve类,通过Context中的getContentRes…
1.解决广播的安全性问题,Android引入了一套本地广播机制,使用该机制发出的广播只能够在应用程序内部进行传递,并且广播接收器只能 接收来自本应用程序发出的广播. 2.本地广播无法通过静态注册来接收,因为静态注册就是为了让程序在未完全启动的情况下也能收到广播,而发送本地广播时,程序肯定已经 启动了,因此也完全不需要使用静态注册功能. 3.本地广播优势: (1)可以明确知道正在发送的广播不会离开程序,不需要担心机密数据泄漏. (2)其他程序无法将广播发送到程序内部,不需要担心会有安全漏洞的隐患.…