首页

android接受开机广播事件

java

2020-6-27

package com.yin.servicetest;
import com.yin.service.MyService;

import android.app.ActivityManager;
import android.app.ActivityManager.RunningServiceInfo;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;


public class MyReceiver extends BroadcastReceiver {
	
	private final String TAG = MyReceiver.class.getSimpleName();
	public MyReceiver() {
		
	}

	@Override
	public void onReceive(Context context, Intent intent) {
		
		if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)) {
			Log.i(TAG, "监听到开机启动getAction");
		}else if(intent.getAction().equals(Intent.ACTION_TIME_TICK)){
			Log.i(TAG, "监听到TIME_TICK");
			
			boolean isServiceRunning = false; 
			ActivityManager manager = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE); 
			for (RunningServiceInfo service :manager.getRunningServices(Integer.MAX_VALUE)) { 
			if("com.yin.service.MyService".equals(service.service.getClassName())) 
				       //Service的类名 
				{ 
					isServiceRunning = true; 
					Log.i(TAG, "已经启动");
				} 
			  
			} 
			if (!isServiceRunning) { 
				Intent i = new Intent(context, MyService.class); 
				context.startService(i); 
				Log.i(TAG, "没有启动,现在启动");
			}
			
		}else {
			Log.i(TAG, "监听到其他");
		}
	}

}

资源下载此资源下载价格为3D币(VIP免费),请先
资源文件列表
no.txt , 36
没有账号? 忘记密码?

社交账号快速登录