定义一个服务:
package com.example.android_service; import android.app.Service; import android.content.Intent; import android.os.IBinder; import android.util.Log; /** * @desc 自定义Service * @author ljt * @time 2014年8月29日 下午5:25:21 */ public class HelloService extends Service{ @Override public void onCreate() { super.onCreate(); Log.i("HelloService", "HelloService onCreate"); } @Override public void onDestroy() { Log.i("HelloService", "HelloService onDestroy"); super.onDestroy(); } /** * 执行服务的操作 * @param intent * @param flags * @param startId * @return */ @Override public int onStartCommand(Intent intent, int flags, int startId) { Log.i("HelloService", "HelloService onStartCommand"); return super.onStartCommand(intent, flags, startId); } @Override public IBinder onBind(Intent intent) { return null; } }
启动一个服务:
/** * 启动一个服务 * @param view */ public void startService(View view){ Intent intent = new Intent(this,HelloService.class); startService(intent); }
停止一个服务:
/** * 停止一个服务 * @param view */ public void stopService(View view){ Intent intent = new Intent(this,HelloService.class); stopService(intent); }
自身停止服务:
// 自身停止服务 this.stopSelf();
IntentService:异步服务
package com.example.android_service; import android.app.IntentService; import android.content.Intent; import android.os.IBinder; import android.util.Log; /** * @desc 异步处理Service * @author ljt * @time 2014年8月29日 下午6:05:46 */ public class WorldService extends IntentService{ public WorldService() { super("WorldService"); } /** * 该方法会在一个单独的线程中执行 任务执行完后自动停止 */ @Override protected void onHandleIntent(Intent intent) { Log.i("WorldService", "WorldService onHandleIntent"); } @Override public void onDestroy() { Log.i("WorldService", "WorldService onDestroy"); super.onDestroy(); } @Override public void onCreate() { super.onCreate(); Log.i("WorldService", "WorldService onCreate"); } }
/** * 启动一个IntentService * @param view */ public void startIntentService(View view){ Intent intent = new Intent(this,WorldService.class); startService(intent); }
08-29 18:09:24.340: I/WorldService(7005): WorldService onCreate 08-29 18:09:24.340: I/WorldService(7005): WorldService onHandleIntent 08-29 18:09:24.345: I/WorldService(7005): WorldService onDestroy
可以看到执行完Handler就直接destory了。
绑定服务:
package com.example.android_service; import android.app.Service; import android.content.Intent; import android.os.IBinder; import android.util.Log; /** * @desc 绑定服务 * @author ljt * @time 2014年8月29日 下午6:24:08 */ public class BindService extends Service{ @Override public IBinder onBind(Intent intent) { Log.i("BindService", "BindService onBind"); return null; } @Override public boolean onUnbind(Intent intent) { Log.i("BindService", "BindService onUnbind"); return super.onUnbind(intent); } @Override public void onCreate() { super.onCreate(); Log.i("BindService", "BindService onCreate"); } @Override public void onDestroy() { Log.i("BindService", "BindService onDestroy"); super.onDestroy(); } }
private ServiceConnection connection = new ServiceConnection() { @Override public void onServiceDisconnected(ComponentName name) { Log.i("BindService", "BindService onServiceDisconnected"); } @Override public void onServiceConnected(ComponentName name, IBinder service) { // 绑定对象 service 由BindService onBind返回 Log.i("BindService", "BindService onServiceConnected"); } }; /** * 绑定一个服务 * @param view */ public void bindService(View view){ Intent intent = new Intent(this,BindService.class); // 绑定服务标记 绑定自动创建 bindService(intent, connection, BIND_AUTO_CREATE); } /** * 解除绑定一个服务 * @param view */ public void unbindService(View view){ unbindService(connection); }
08-29 18:35:16.840: I/BindService(8648): BindService onCreate 08-29 18:35:16.870: I/BindService(8648): BindService onBind 08-29 18:35:37.550: I/BindService(8648): BindService onUnbind 08-29 18:35:37.550: I/BindService(8648): BindService onDestroy
相关推荐
藏区特产销售平台--论文.zip
文件放服务器下载,请务必到电脑端资源详情查看然后下载
文件太大放服务器下载,请务必到电脑端资源详情查看然后下载
文件太大放服务器下载,请务必到电脑端资源详情查看然后下载
文件太大放服务器下载,请务必到电脑端资源详情查看然后下载
文件放服务器下载,请务必到电脑端资源详情查看然后下载
该单片机项目可作为课程设计和期末大作业或者毕设,项目完整,有原理图和代码,需要的自行下载即可!
文件太大放服务器下载,请务必到电脑端资源详情查看然后下载
文件放服务器下载,请务必到电脑端资源详情查看然后下载
文件太大放服务器下载,请务必到电脑端资源详情查看然后下载
文件太大放服务器下载,请务必到电脑端资源详情查看然后下载
文件太大放服务器下载,请务必到电脑端资源详情查看然后下载
文件放服务器下载,请务必到电脑端资源详情查看然后下载
文件太大放服务器下载,请务必到电脑端资源详情查看然后下载
文件太大放服务器下载,请务必到电脑端资源详情查看然后下载
文件太大放服务器下载,请务必到电脑端资源详情查看然后下载
文件放服务器下载,请务必到电脑端资源详情查看然后下载
文件放服务器下载,请务必到电脑端资源详情查看然后下载
文件放服务器下载,请务必到电脑端资源详情查看然后下载
文件放服务器下载,请务必到电脑端资源详情查看然后下载