mService1.java
上传用户:vip_99
上传日期:2021-03-27
资源大小:61159k
文件大小:2k
源码类别:

android开发

开发平台:

Java

  1. package irdc.ex06_15;
  2. import android.app.Service;
  3. import android.content.Intent;
  4. import android.os.Handler;
  5. import android.os.IBinder;
  6. import android.util.Log;
  7. public class mService1 extends Service
  8. {
  9.   /* 创建Handler对象 */
  10.   private Handler objHandler = new Handler();
  11.   
  12.   /* 服务里的递增整数counter */
  13.   private int intCounter=0;
  14.   
  15.   /* 自定义要过滤的广播信息(DavidLanz) */
  16.   public static final String HIPPO_SERVICE_IDENTIFIER="DavidLanz";
  17.   
  18.   /* 运行线程Tasks每1秒运行一次 */
  19.   private Runnable mTasks = new Runnable() 
  20.   { 
  21.     public void run() 
  22.     { 
  23.       intCounter++;
  24.       
  25.       /* 当背景Service运行5秒后,送出自定义的广播信息 */
  26.       if(intCounter==5)
  27.       {
  28.         /* DavidLanz */
  29.         Intent i = new Intent(HIPPO_SERVICE_IDENTIFIER);
  30.         
  31.         /* 通过putExtra方法封装参数返回Activity */
  32.         i.putExtra
  33.         (
  34.           "STR_PARAM1",
  35.           getResources().getText
  36.           (R.string.str_message_from_service).toString()
  37.         );
  38.         sendBroadcast(i);
  39.       }
  40.       
  41.       /* 以Log于console里输出作为追踪服务之用 */
  42.       Log.i("HIPPO", "Service Running Counter:"+
  43.       Integer.toString(intCounter));
  44.       
  45.       objHandler.postDelayed(mTasks, 1000); 
  46.     } 
  47.   };
  48.   
  49.   @Override
  50.   public void onStart(Intent intent, int startId)
  51.   {
  52.     // TODO Auto-generated method stub
  53.     
  54.     /* 服务开始运行,启用运行线程 */
  55.     objHandler.postDelayed(mTasks, 1000);
  56.     super.onStart(intent, startId);
  57.   }
  58.   @Override
  59.   public void onCreate()
  60.   {
  61.     // TODO Auto-generated method stub
  62.     super.onCreate();
  63.   }
  64.   
  65.   @Override
  66.   public IBinder onBind(Intent intent)
  67.   {
  68.     // TODO Auto-generated method stub
  69.     return null;
  70.   }
  71.   @Override
  72.   public void onDestroy()
  73.   {
  74.     // TODO Auto-generated method stub
  75.     
  76.     /* 关闭服务时,关闭运行线程 */
  77.     objHandler.removeCallbacks(mTasks);
  78.     super.onDestroy();
  79.   }
  80. }