展会信息港展会大全

Android开机启动Service
来源:互联网   发布日期:2016-01-13 22:13:24   浏览:1840次  

导读:在做一个软件的流量监测功能时需要开机启动Service,在这里记录一下。步骤:1、Android系统启动完毕后会广播一次android.intent.action.BOOT_COMPLETED动作,所以首先写一个继承BroadcastReceiver的类来接受该广......

在做一个软件的流量监测功能时需要开机启动Service,在这里记录一下。

步骤:

1、Android系统启动完毕后会广播一次android.intent.action.BOOT_COMPLETED动作,所以首先写一个继承BroadcastReceiver的类来接受该广播,并启动我们的Service或者Activity。

1

2

3

4

5

6

7

8

public class StartServiceReceiver extends BroadcastReceiver {

@Override

public void onReceive(Context context, Intent intent) {

Intent serviceIntent = new Intent(context, FlowStateService.class);

serviceIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

context.startService(serviceIntent);

}

}

在Manifest.xml中注册该广播接收器。

1

2

3

4

5

6

7

8

<!-- 注册广播接收器 -->

<receiver android:name=".util.StartServiceReceiver">

<intent-filter>

<action android:name="android.intent.action.BOOT_COMPLETED" />

<category android:name="android.intent.category.HOME" />

</intent-filter>

</receiver>

2、定义自己的Service,编写Service类时和平时一样,但要注意在Manifest.xml注册Service时要加<intent-filter>子标签:

1

2

3

4

5

6

7

<service android:name=".service.FlowStateService" android:label="@string/app_name">

<intent-filter>

<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />

</intent-filter>

</service>

赞助本站

人工智能实验室

相关热词: 开机 启动 Service

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港