认认真真写安卓,服务篇,组件(Service)
来源:互联网 发布:我的世界手机版月球js 编辑:程序博客网 时间:2024/05/29 16:17
服务的作用:运行一些耗时操作,接收服务端消息之后进行处理,并发的执行一些动作。
服务基础: 创建服务;启动服务;销毁服务。
public class MyService extends Service {
public static final String TAG = "MyService";
//
@Override
public IBinder onBind(Intent intent) {
return null;
}
//服务第一次创建调用该方法
@Override
public void onCreate() {
super.onCreate();
Log.w(TAG, "in onCreate");
}
//开始服务时
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
Log.w(TAG, "in onStartCommand");
return START_STICKY;
}
@Override
public void onDestroy() {
super.onDestroy();
Log.w(TAG, "in onDestroy");
}
}
这里的onBind是Service基类的抽象类,下面再说,其它三个方法就是服务的三个步骤。
1.上面是第一步 定义一个自己的服务类
2.所有安卓组件都必须在Manifest.xml中注册 服务也不例外
<service android:enabled="true" android:name=".MyService" />
3.启动与停止服务
startService(serviceIntent); stopService(serviceIntent);
当运行startService(serviceIntent) 之后就会依次调用上面提到的三个方法,然而当按Home键,华为Pad会关闭当前程序时,后台是没有服务的,小米的不会关闭,但如果按菜单键,上划关闭应用,则不会调用Service的onDestroy()方法。而一直点返回是不会关闭应用程序的,程序会在后台运行。
(其实这里很容易让人懵逼,都说服务是放在后台运行的,可为什么应用程序被杀掉之后,服务也停止了呢?
服务有没有停止是通过android手机的设置界面——>更多应用——>找到相应的app名称,你会发现微信和QQ的都有两个进程和服务,但是它们的软件通过上述方法被关闭之后,进程和服务都是存活的,然后我们自己的程序和服务却被关闭了,网上有很多帖子,讲的一个思路,却没有可行的方法与代码做参考,很心累!!!!导致我不想继续写服务相关的知识)
- 认认真真写安卓,服务篇,组件(Service)
- 玩转Android---组件篇---Service(服务)
- 玩转Android---组件篇---Service(服务)
- 玩转Android---组件篇---Service(服务)
- Android四大组件之一Service(服务)
- android四大组件之服务(Service)
- 四大组件之(四)-->Service服务
- Android四大组件之一:Service(服务)
- Android四大组件之服务(service)
- 四大组件之服务(Service)
- 四大组件之一服务(service)
- Android四大组件服务(Service)
- 四大组件之服务Service
- Android组件之服务---Service
- Service服务---四大组件之一
- Android 四大组件 Service 服务
- Android四大组件Service 服务
- android组件之Service(服务)
- Android 不要错过的 7 个完整项目学习
- Android 恢复Activity现场
- caffe 制作lmdb数据集
- Ajax详解
- 001 tic-tac-toe game
- 认认真真写安卓,服务篇,组件(Service)
- 抽象类与接口的区别
- android学习笔记
- 项目架构开发:服务层
- (1)ARM40-A5板应用程序——hello world
- 数据结构之队列
- 103:Fraction to Recurring Decimal
- strncmp函数
- 论文排版:Word加入脚注后,分栏的正文就跑到下一页上去了的解决方案