android开发之service详解】的更多相关文章

service作为android的四大组件之一,其重要性可想而知,在开发中,我们经常把一些不需要与用户进行交互的工作放在service中来完成,service运行在后台,这样有些人可能会产生错觉,以为service是运行在新线程中,其实不然,service也运行在主线程中,因此不能在service中进行耗时操作,否则会报ANR异常,但是我们可以在service中新开线程来进行耗时操作,比如下载等等. 先来说说service的两种绑定方式,一种是通过Context.startService()来启…
Android开发之MdiaPlayer详解 MediaPlayer类可用于控制音频/视频文件或流的播放,我曾在<Android开发之基于Service的音乐播放器>一文中介绍过它的使用.下面让我们看一下MediaPlayer类的详细介绍. 一.类结构: java.lang.Object    ? android.media.MediaPlayer 二.构造方法和公有方法 构造方法: Public Constructors   MediaPlayer() 默认构造方法. 公有方法: Publi…
Android开发之InstanceState详解   本文介绍Android中关于Activity的两个神秘方法:onSaveInstanceState() 和 onRestoreInstanceState(),并且在介绍这两个方法之后,再分别来实现使用InstanceState保存和恢复数据功能.Android实现屏幕旋转异步下载效果这样两个示例. 首先来介绍onSaveInstanceState() 和 onRestoreInstanceState() .关于这两个方法,一些朋友可能在An…
Android开发之InstanceState详解   本文介绍Android中关于Activity的两个神秘方法:onSaveInstanceState() 和 onRestoreInstanceState(),并且在介绍这两个方法之后,再分别来实现使用InstanceState保存和恢复数据功能.Android实现屏幕旋转异步下载效果这样两个示例. 首先来介绍onSaveInstanceState() 和 onRestoreInstanceState() .关于这两个方法,一些朋友可能在An…
AlarmManager实质是一个全局的定时器,是Android中常用的一种系统级别的提示服务,在指定时间或周期性启动其它组件(包括Activity,Service,BroadcastReceiver). 概述: 该类提供一种访问系统闹钟服务的方式,允许你去设置在将来的某个时间点去执行你的应用程序.当你的闹钟响起(时间到)时,在它上面注册的一个意图(Intent)将会被系统以广播发出,然后自动启动目标程序,如果它没有正在运行.注册的闹钟会被保留即使设备处于休眠中(如果闹钟在给定时间响起可以选择是…
本文来自:http://www.cnblogs.com/hanyonglu/archive/2012/03/28/2420515.html 本文介绍Android中关于Activity的两个神秘方法:onSaveInstanceState() 和 onRestoreInstanceState(),并且在介绍这两个方法之后,再分别来实现使用InstanceState保存和恢复数据功能. Android实现屏幕旋转异步下载效果这样两个示例. 首先来介绍onSaveInstanceState() 和…
很多时候,使用shape能够实现的效果,你用一张图片也能够实现,但问题是一张图片无论你怎么压缩,它都不可能比一个xml文件小,因此,为了获得一个高性能的手机App,我们在开发中应该遵循这样一个原则:能够用shape实现的效果尽量不使用图片来实现. 今天我们就一起来看看shape的使用. 首先,使用shape画的图形,这个xml文件的根节点是shape,如下: <shape xmlns:android="http://schemas.android.com/apk/res/android&q…
SharedPreferences简介:   做软件开发应该都知道,很多软件会有配置文件,里面存放这程序运行当中的各个属性值,由于其配置信息并不多,如果采用数据库来存放并不划算,因为数据库连接跟操作等耗时大大影响了程序的效率,因此我们使用键值这种一一对应的关系来存放这些配置信息.SharedPreferences正是Android中用于实现这中存储方式的技术. SharedPreferences的使用非常简单,能够轻松的存放数据和读取数据.SharedPreferences只能保存简单类型的数据…
SQLite简介 Google为Andriod的较大的数据处理提供了SQLite,他在数据存储.管理.维护等各方面都相当出色,功能也非常的强大.SQLite具备下列特点: 1.轻量级 使用 SQLite 只需要带一个动态库,就可以享受它的全部功能,而且那个动态库的尺寸想当小. 2.独立性 SQLite 数据库的核心引擎不需要依赖第三方软件,也不需要所谓的“安装”. 3.隔离性 SQLite 数据库中所有的信息(比如表.视图.触发器等)都包含在一个文件夹内,方便管理和维护. 4.跨平台 SQLit…
来源 http://jinyudong.com/2014/11/13/Introduce-RecyclerView-%E4%B8%80/ 编辑推荐:稀土掘金,这是一个针对技术开发者的一个应用,你可以在掘金上获取最新最优质的技术干货,不仅仅是Android知识.前端.后端以至于产品和设计都有涉猎,想成为全栈工程师的朋友不要错过! 这篇文章是根据官网的一篇文章(这里)写的,不过作者增加了一些自己的理解,我十分推崇这种方式,而不是死板的翻译官网的文档,国内技术文章翻译的最差的地方在于:翻译出来的句子还…
ListView列表视图 最常用的控件之一,使用场景例如:微信,手机QQ等等. android:divider:每个item之间的分割线,可以使用图片或者色值. android:dividerHeight:高度 使用方式,等同于Spinner:ArrayAdapter,SimpleAdapter,BaseAdapter. BaseAdapter: 特点:高度自定义item布局,同时逻辑操作更加丰富. getCount():item的数量 getItem():获取item中的数据 getItemI…
本文转自:http://www.cnblogs.com/Excellent/archive/2011/11/19/2254888.html…
为了实现像qq或者微信输入框的效果,当在 EditText输入字符串时发送按钮显示,当输入框字符消除掉时按钮改变.所以这时候我就要用到addTextChangedListener 用它来监听用户输入状态.可以在监听中改变用户输入的内容或者提示用户输入内容不合法等等 EditText editText = (EditText)findViewById(R.id.monitor_edit_text0); editText.addTextChangedListener(new TextWatcher(…
Intent是一种运行时绑定(run-time binding)机制,它能在程序运行过程中连接两个不同的组件.通过Intent,你的程序可以向Android表达某种请求或者意愿,Android会根据意愿的内容选择适当的组件来完成请求.比如,有一个Activity希望打开网页浏览器查看某一网页的内容,那么这个Activity只需要发出WEB_SEARCH_ACTION给Android,Android就会根据Intent的请求内容,查询各组件注册时声明的IntentFilter,找到网页浏览器的Ac…
今天我们就来介绍一下Android中的四大组件中的服务Service,说到Service, 它分为本地服务和远程服务:区分这两种服务就是看客户端和服务端是否在同一个进程中,本地服务是在同一进程中的,远程服务是不在同一个进程中的. 开启服务也有两种方式,一种是startService(),他对应的结束服务的方法是stopService(),另一种是bindService(),结束服务的是unBindService(),这两种方式的区别就是:当客户端Client使用startService方法开启服…
UINavigationController是IOS编程中比较常用的一种容器view controller,很多系统的控件(如UIImagePickerViewController)以及很多有名的APP中(如qq,系统相册等)都有用到.说是使用详解,其实我只会介绍几个自认为比较重要或者容易放错的地方进行讲解,下面让我们挨个探探究竟: 首先上一张图(来自苹果官方文档): UINavigationController view层级 1.navigationItem 我们都知道navigationIt…
NSObject是大部分Objective-C类继承体系的根类.这个类遵循NSObject协议,提供了一些通用的方法,对象通过继承NSObject,可以从其中继承访问运行时的接口,并让对象具备Objective-C对象的基本能力.下面我们就详细的介绍NSObject. 一.使用详解 1.加载及初始化类 /** 运行时加载类或分类调用该方法, 每个类只会调用一次 */ + (void)load { } /** 类实例化使用前需要先初始化, 一个类调用一次, 如果子类没有实现该方法则会调用父类方法…
ListView的使用方法  ListView是Android软件开发中非常重要组件之一,基本上是个软件基本都会使用ListView ,今天我通过一个demo来教大家怎么样使用ListView组件 绘制出漂亮的列表,说道ListView就不得不说Adapter适配器,因为只有通过Adapter才可以把列表中的数据映射到ListView中.在android的开发中最Adapter 一共可以分为ArrayAdapter<T>,BaseAdapter, CursorAdapter,HeaderVie…
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xys289187120.blog.51cto.com/3361352/657171 ListView的使用方法  ListView是Android软件开发中非常重要组件之一,基本上是个软件基本都会使用ListView ,今天我通过一个demo来教大家怎么样使用ListView组件 绘制出漂亮的列表,说道ListView就不得不说Adapter适配器,因为只有通过Adapter才…
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xys289187120.blog.51cto.com/3361352/657189 EditText在API中的结构 java.lang.Object android.view.View android.widget.TextView  android.widget.EditText已知直接子类: AutoCompleteTextView, ExtractEditText已知间…
EditText在API中的结构 java.lang.Objectandroid.view.Viewandroid.widget.TextView        android.widget.EditText 已知直接子类:AutoCompleteTextView, ExtractEditText 已知间接子类:MultiAutoCompleteTextView EditText是TextView的直接子类 所以EditText会继承父类TextView的一些方法.下面我用自己写的一个Demo…
什么是Service? Android中的服务与Activity不同,他是不能与用户进行交互,自己也不能启动在后台运行的程序,当我们退出应用时,Service应用并没有结束,它仍然在后台运行. 例子: 我们播放音乐,此时又要去干别的事的时候.如果没有Services退出播放音乐的应用我们就听不到歌. 如何获取启动Service实例? 可以使用bindService()实现. 初步了解Services的用法: 代码: package com.example.hxdn.servicetest; im…
Service的总结: 1.按运行地点分类: 类别 区别  优点 缺点   应用 本地服务(Local) 该服务依附在主进程上,  服务依附在主进程上而不是独立的进程,这样在一定程度上节约了资源,另外Local服务因为是在同一进程因此不需要IPC,也不需要AIDL.相应bindService会方便很多.  主进程被Kill后,服务便会终止.  非常常见的应用如:HTC的音乐播放服务,天天动听音乐播放服务. 远程服务(Remote) 该服务是独立的进程,  服务为独立的进程,对应进程名格式为所在包…
在Andorid平台中,各个组件运行在自己的进程中,他们之间是不能相互访问的,但是在程序之间是不可避免的要传递一些对象,在进程之间相互通信.为了实现进程之间的相互通信,Andorid采用了一种轻量级的实现方式RPC(Remote Procedure Call 远程进程调用)来完成进程之间的通信,并且Android通过接口定义语言(Andorid Interface Definition Language ,AIDL)来生成两个进程之间相互访问的代码,例如,你在Activity里的代码需要访问Se…
app中,一个activity通常是指的一个单独的屏幕,相当于网站里面的一个网页,它是对用户可见的,它上面可以显示一些控件,并且可以监听处理用户的时间做出响应. 那么activity之间如何进行通信呢?他们是通过intent进行通信以及切换.Intent有两个重要部分(动作传递,数据传递): Ø神马是Activity? activity是四大组件,代表者用户可操作界面,可与用户进行交互.比如,拍照,登陆注册等交互界面.一个应用程序通常由多个activity松耦合(低耦合)组成,当用户打开app见…
介绍 github地址: https://github.com/rs/SDWebImage 简介 一个异步图片下载及缓存的库 特性: 一个扩展UIImageView分类的库,支持加载网络图片并缓存图片 异步图片下载器 异步图片缓存和自动图片有效期管理 支持GIF动态图片 支持WebP 背景图片减压 保证同一个URL不会再次下载 保证无效的URL不会重新加载 保证主线程不会死锁 性能优越 使用GCD和ARC 支持ARM64位处理器 其他 3.0后不再支持5.1.1 支持Cocoapods 用法不说…
http://www.360doc.com/content/13/0606/10/1317564_290865866.shtml http://blog.csdn.net/hrbeuwhw/article/details/8135112 http://blog.csdn.net/hrbeuwhw/article/details/8135109 http://zhangjunhd.blog.51cto.com/113473/25481/ https://github.com/Jhuster/And…
1. 什么是Quartz2D? Quartz 2D是一个二维绘图引擎,同时支持iOS和Mac系统 Quartz 2D能完成的工作 绘制图形 : 线条\三角形\矩形\圆\弧等 绘制文字 绘制\生成图片(图像) 读取\生成PDF 截图\裁剪图片 自定义UI控件 ………. 2. Quartz 2D应用示例 裁剪图片 涂鸦/画板 手势解锁 报表 屏幕截图 3. 图形上下文(Graphics Context) 因为很多计算机的概念和术语,都是从外文翻译而来.所以有些的术语比较难以理解,看其名,不知其意.…
本来很早就想写关于CCTableView的文章,但是在基本功能实现之后呢,项目需求增加导致对这个控件的研究必须更加深入一点. 好的,现在开始介绍一下这个控件,在Cocos2d—X引擎中,这是一个仿制iOS里面的NSTableView的一个控件. S1,使用这个控件需要首先引入扩展库文件 #include "cocos-ext.h" S2,然后使类继承CCTableView的2个代理, class ServerPrizeList :public CCLayer,public CCTabl…
1)什么是 Runloop ? 1.字面上是运行循环,内部就是 do-while 循环,在这个循环内不断地处理各种任务. 2.一个线程对应一个 Runloop ,主线程的 RunLoop 默认是开启的.子线程的 RunLoop 需手动开启. 3.RunLoop 只能对应选择一个 Model 启动,如果当期的 Model 中没有任何 Source(Sources0,Sources1).Timmer,那么就直接退出 RunLoop. 4.基本作用就是保持程序的持续运行,处理 APP 中的各种事件.通…