开机自动启动Service,做这个烦恼我好几天了,是因为在服务中加了toast导致自启服务不成功

原创 2014年11月17日 17:02:19

服务的代码

MyService.java

package com.lzy.bootservice;

import android.app.Service;
import android.content.Intent;
import android.os.IBinder;

public class MyService extends Service{

	@Override
	public IBinder onBind(Intent arg0) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public void onCreate() {
		// TODO Auto-generated method stub
		System.out.println("初始化service");
		super.onCreate();
	}

	@Override
	public void onDestroy() {
		// TODO Auto-generated method stub
		System.out.println("service灭亡");
		super.onDestroy();
	}

	@Override
	public void onStart(Intent intent, int startId) {
		// TODO Auto-generated method stub
		System.out.println("service 启动了");
		super.onStart(intent, startId);
	}
	
	
}

注册广播监听

BootBroadcastReceiver.java

package com.lzy.bootservice;

import android.content.BroadcastReceiver;  
import android.content.Context;  
import android.content.Intent;  
  
public class BootBroadcastReceiver extends BroadcastReceiver {  
  
	static final String ACTION = "android.intent.action.BOOT_COMPLETED";  
   
 	@Override  
	 public void onReceive(Context context, Intent intent) {  
	    
		  if (intent.getAction().equals(ACTION)){  
			  Intent i  = new Intent();
				i.setClass(context, MyService.class);
				context.startService(i);
				System.out.println("到这里?");
				
		  }  
	}  
}  

最后最重要的是要在项目清单文件中加入service以及广播注册监听receiver

清单文件

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.lzy.bootservice"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="8" />

    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>
    
    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:label="@string/app_name"
            android:name=".BootServiceActivity" >
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <receiver android:name=".BootBroadcastReceiver">  
		  <intent-filter>  
		    <action android:name="android.intent.action.BOOT_COMPLETED" />  
		   	</intent-filter>  
  		</receiver> 
  		<service android:name=".MyService" android:exported="true"></service>
    </application>

</manifest>


手动添加linux自启服务

nfs挂载后无法写入问题解决方法之一: 在/etc/exp /share 172.24.6.27(rw,sync,no_root_squash)...
  • summerviva
  • summerviva
  • 2014-08-04 22:28:33
  • 1596

CentOS 中设置服务开机自启

当我们刚打开计算机之后,就发现操作系统中已经运行了很多的程序,这些程序中有一些是操作系统的服务程序,有一些是第三方的服务比如,mysql服务,http服务等。如何有效的管理这些自启动服务是我们每一个L...
  • jack_nichao
  • jack_nichao
  • 2017-01-05 15:08:47
  • 5935

将tomcat添加为linux系统服务 开机自启动

将tomcat添加为linux系统服务 (网上找的都不全面,这是结合几个资料整理的,我认为的最简单的将tomcat 添加为系统服务,以及开机自动重启的方法)1. 首先需要将$Tomcat...
  • wangyonglin1123
  • wangyonglin1123
  • 2016-03-28 11:02:09
  • 2903

Ubuntu下设置服务自启动

Ubuntu下设置服务自启动 一般/etc下可能还有/etc/rc.local,/etc/rc.sysinit文件,一般/etc/rc.local默认并不做什么实事,可能是系统留下的一个接口,供用户添...
  • yusiguyuan
  • yusiguyuan
  • 2013-10-30 22:50:55
  • 2805

android应用开机自启动&service开机自启动

android开机应用与service开机自启动配置: 1.在AndroidManifest.xml中添加如下内容: (1)在application中添加receiver: application ...
  • liaokesen168
  • liaokesen168
  • 2016-11-24 10:15:22
  • 7600

ubuntu下管理开机自启动服务

我在ubuntu下面用chkconfig来查看开机的自启动服务,结果提示没有这个命令,然后上网查到ubuntu下可以使用另一个工具,sysv-rc-conf来管理开机的自启动服务,不过这个工具也是需要...
  • MrSiz
  • MrSiz
  • 2015-08-19 17:40:05
  • 2250

CentOS设置开机自启动服务的两种方法

CentOS设置服务开机启动的两种方法 收藏 举报 本文章已收录于: 1、利用 chkconfig 来配置启动级别 在CentOS或者RedHat其他系统下,如果是后面安装的服务...
  • u010250863
  • u010250863
  • 2017-04-08 17:23:42
  • 4892

linux设置开机服务自动启动/关闭自动启动命令 chkconfig

chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。但chkconfig不会立即自动禁止或激活一个服务,需要服务器重启才生效。 语法: chkconfig...
  • jiangguilong2000
  • jiangguilong2000
  • 2012-12-05 13:01:03
  • 21687

Linux中自启动某项服务

Linux自启动某项服务一.踩的坑由于我在电脑上重新安装Linux虚拟机,自信的我以为用了Linux这么久,应该没有什么难度,但是从我开始重新安装Linux系统才知道这么辣鸡的我。这里我就以开启SSH...
  • u014484863
  • u014484863
  • 2017-05-05 12:15:09
  • 2116

windows服务与自启动程序的区别

在客户端服务器项目实践中,作为服务端必须保持程序的24小时不间断运行,需要做一个监控,当监控到该程序已关闭时则重新启动下。      有两种方法可以实现这个功能: 第一是做windows服...
  • u012252959
  • u012252959
  • 2015-09-15 18:22:43
  • 831
收藏助手
不良信息举报
您举报文章:开机自动启动Service,做这个烦恼我好几天了,是因为在服务中加了toast导致自启服务不成功
举报原因:
原因补充:

(最多只允许输入30个字)