- 博客(18)
- 资源 (85)
- 收藏
- 关注
原创 Android开发笔记(五十四)数据共享接口ContentProvider
ContentProvider前面几节介绍了进程间通信的几种方式,包括消息包级别的Messenger、接口调用级别的AIDL、启动页面/服务级别的Notification,还有就是本节这个数据库级别的ContentProvider。ContentProvider为存取数据提供统一的接口,它让不同APP之间得以共享数据。ContentProvider类本身是个服务端的数据存取接口,主要操作类
2016-01-20 17:21:54 2882
原创 Android开发笔记(五十三)远程接口调用AIDL
AIDL概述AIDL全称是“Android Interface Definition Language”,即Android的接口定义语言。AIDL用来协助开发者来处理进程间通信,在之前的博文《Android开发笔记(五十一)通过Messenger实现进程间通信》中,我们知道可以使用Messenger完成进程间通信。但是Messenger每次调用都只能传递一个消息包,不能很好的完成一些复杂的调用
2016-01-19 16:32:10 1982
原创 Android开发笔记(五十二)通知推送Notification
PendingIntent准备工作复习一下PendingIntent,前面的博文《Android开发笔记(五十)定时器AlarmManager》已经提到了它。PendingIntent意即延迟的Intent,主要用于非立即响应的通信场合。上回的博文,博主介绍了PendingIntent的用法,下面再列出有用到它的场合:1、用于定时器AlarmManager,处理时刻到达后的提醒动作2、
2016-01-19 10:32:43 2555
原创 Android开发笔记(五十一)通过Messenger实现进程间通信
进程间通信IPCIPC是“Inter-Process Communication”的缩写,即进程间通信。Android为APP提供了多进程工作模式,这是因为多线程存在若干局限:1、多线程共存于一个进程中,而该进程可用的内存容量是固定的,多线程不会拓展app可用的内存大小。所以如果app的性能瓶颈在内存,那么多线程并不能提高处理速度。2、app在响应用户操作之外,还想完成某些系统管理的任
2016-01-18 14:45:58 2312
原创 Android开发笔记(五十)定时器AlarmManager
Timer和TimerTaskJava中的定时器机制有现成的方案,就是Timer+TimerTask。其中TimerTask用来描述时刻到达后的事务处理,而Timer用来调度定时任务,如何时启动、间隔多久再次运行等等。Timer的调度方法是schedule,主要有三个参数。第一个参数表示用来调度的定时任务,第二个参数表示延迟多久首次启动任务,第三个参数表示间隔多久再次启动任务。
2016-01-15 17:36:39 4426
原创 Android开发笔记(四十九)异步任务处理AsyncTask
AsyncTask异步任务Thread+Handler方式虽然能够实现多线程的通信处理,但是写起代码来颇为繁琐,所以Android提供了AsyncTask这样一个轻量级的异步任务类,其内部封装好Thread+Handler,方便了码农的工作。AsyncTask适用于HTTP通信,包括下载、http调用等等。AsyncTask是个模板类(AsyncTask),继承它的新类需要指定模板
2016-01-15 11:11:48 2418
原创 Android开发笔记(四十八)Thread类实现多线程
Thread概述Thread类是真正的线程,查看源码可见Thread也实现了Runnable接口,但它内部有创建新的工作线程,所以Thread对象运行在与主线程不一样的分线程上。因为Thread对象运行在另外的线程,所以它与Runnable实例有如下主要区别:1、Thread对象可进行网络通信,而非Thread方式的Runnable实例不可进行网络通信。因为Android要求U
2016-01-14 15:20:22 2742
原创 Android开发笔记(四十七)Runnable接口实现多线程
Runnable概述Runnable接口可声明一连串的事务,常用于多线程处理。但是实现Runnable接口并不意味着开启了一个新线程,只是定义了接下来要做的事情,至于说这些事情要在主线程处理,还是在分线程处理,那得看我们在哪里运行Runnable实例。如果在Handler或者View中启动Runnable,那么Runnable事务便运行于UI线程;如果在Thread中启动Runnable,那么
2016-01-14 10:35:02 3855
原创 Android开发笔记(四十六)手机相关事件
手机定位有一类事件必须依赖于手机信号方能触发,如果把设备中的sim卡拔出,或者该设备本身不支持sim卡(如ipad),那么这类事件将永远不会被触发。在Android中,这类事件包括定位事件和手机信号事件。与定位有关的类主要有:1、定位条件器Criteria : 该类用于设置定位的前提条件,比如精度、速度、海拔、方位等等信息。2、定位管理器LocationManager : 该类用于
2016-01-13 16:17:53 5171 2
原创 Android开发笔记(四十五)手势事件
手势事件的流程基本手势事件基本的手势事件主要有如下三个方法:dispatchTouchEvent : 判断该事件是否需要下发。返回true表示需要下发给下级视图,返回false表示不需要下发(交给自身的onTouchEvent处理)。但是否最终下发,还需根据onInterceptTouchEvent的拦截结果。onInterceptTouchEvent : 判断当前容器是否需要拦截
2016-01-12 15:58:32 3600
原创 Android开发笔记(四十四)动态UI事件
常用的几个事件动画事件动画事件主要用于Animation控件,可监控动画开始、结束、重播等行为。相关类名与方法说明如下:监听器类名 : AnimationListener设置监听器的方法 : setAnimationListener监听器需要重写的方法 : onAnimationStart : 动画开始播放时调用。onAnimationEnd : 动画结束播放时调用,该
2016-01-11 15:24:22 2193
原创 Android开发笔记(四十三)点击事件
按钮点击常用按钮点击1、单击事件,主要用于Button和ImageButton控件,布局视图与TextView、ImageView控件用的也比较多。相关类名与方法说明如下:监听器类名 : View.OnClickListener设置监听器的方法 : setOnClickListener监听器需要重写的点击方法 : onClick2、长按事件,较少使用,一般长按要么弹
2016-01-08 17:15:37 2576 3
原创 Android开发笔记(四十二)Broadcast的生命周期
Broadcast是什么广播的特性广播(Broadcast)用于Android组件之间的灵活通信,它与Activity和Service的区别在于:1、Activity和Service都只能一对一地通信,而Broadcast可以一对多,一人发送广播,多人接收处理;2、对于发送者来说,广播不需要考虑接收者有没有在工作,接收者有在工作则接收广播,不在工作则丢弃广播;3、对于接收者来说
2016-01-08 11:25:00 3347 4
原创 Android开发笔记(四十一)Service的生命周期
与生命周期有关的方法onCreate : 创建服务onStart : 开始服务,Android2.0以下版本使用onStartCommand : 开始服务,Android2.0及以上版本使用。该函数返回值为整型,一般取值START_STICKY,具体说明如下:1、START_STICKY:粘性的服务。如果服务进程被杀掉,保留服务的状态为开始状态,但不保留传送的Intent对象。随后
2016-01-07 13:01:25 2817
原创 Android开发笔记(四十)组件通讯工具Intent
Intent的用途与组成Intent用于处理Android各组件之间的通讯。Intent完成的工作主要有三部分:1、Intent需标明本次通讯请求是从哪里来,到哪里去,要怎么走;2、发起方携带上本次通讯需要的数据内容,接收方则对收到的Intent数据进行解包;3、如发起方要求判断接收方的处理结果,Intent还需负责传回应答的数据内容;Intent由以下部分组成:C
2016-01-06 11:08:21 2436
原创 Android开发笔记(三十九)Activity的生命周期
与生命周期有关的方法下面是Activity类与生命周期有关的方法:onCreate : 创建页面onStart : 开始页面onStop : 停止页面onResume : 恢复页面onPause : 暂停页面onDestroy : 销毁页面onRestart : 重启页面onNewIntent : 重用栈中已存在的实例onSaveInstanceState
2016-01-05 09:32:31 2447 2
原创 Android开发笔记(三十八)列表类视图
AdapterViewAdapterView顾名思义是适配器视图,Spinner、ListView和GridView都间接继承自AdapterView,这三个视图都存在多个元素并排展示的情况,所以需要引入适配器模式。适配器视图的特点有:1、定义了适配器的设置方法setAdapter,以及获取方法getAdapter。适配器用于传入视图展示需要的相关数据。2、定义了一个数据观察者Ad
2016-01-04 16:30:57 3615 1
原创 Android开发笔记(三十七)按钮类控件
Button与ImageButtonButton是文本按钮(继承自TextView),而ImageButton是图像按钮(继承自ImageView)。两者之间的区别在于:1、Button即可显示文本也可显示图形(通过设置背景图),而ImageButton只能显示图形不能显示文本;2、Button可在文本周围区域显示小图,而ImageButton无法在某个区域显示小图;3、Image
2016-01-04 09:14:18 4393 2
Android使用更多更好看图像控件的代码例子
2016-09-06
Android使用列表弹窗的代码例子
2016-09-05
Android操作工具栏Toolbar的代码例子
2016-09-05
Android对图片进行特效处理的代码例子
2016-09-01
Android自定义Drawable的代码例子
2016-08-31
Android对多语言支持的代码例子
2016-08-30
Android兼容5.0水波动画的代码例子
2016-08-30
Android对屏幕规格适配的代码例子
2016-08-30
Android对资源和权限进行校验的代码例子
2016-08-29
Android上传文件的代码例子
2016-08-29
Android对运行时状态检查的代码例子
2016-08-29
Android使用任务调度JobScheduler的代码例子
2017-05-11
Android浏览书籍的层叠翻页动画效果
2017-05-04
Android读取ppt和pdf文件的代码例子
2017-04-16
Android读取并显示word文件的代码例子
2017-04-09
Android实现可定制可滑动的标签栏的代码例子
2017-04-09
Android使用截图和录屏功能的代码例子
2017-03-24
Android使用文本输入布局TextInputLayout的代码例子
2017-03-15
Android自定义行为Behavior的代码例子
2017-03-08
Android使用协调布局CoordinatorLayout的代码例子
2017-02-27
Android使用可折叠工具栏布局CollapsingToolbarLayout的代码例子
2017-02-24
Android使用应用栏布局AppBarLayout的代码例子
2017-02-24
Android使用导航视图NavigationView的代码例子
2017-02-24
Android使用水波图形和矢量图形的代码例子
2017-02-09
Android使用提示窗Snackbar的代码例子
2017-02-09
Android校验手机制式适配的代码例子
2017-02-09
Android使用变换图形的代码例子
2017-02-09
Android自定义音乐播放器的代码例子
2016-09-20
Android自定义视频播放器的代码例子
2016-09-12
Android自带的循环器视图RecyclerView的代码例子
2016-09-02
Android自带的两个侧滑布局的代码例子
2016-09-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人