`
raymond.chen
  • 浏览: 1426301 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

开机自启动Android Service,并在前台运行

 
阅读更多

1、创建Service类

public class SeasyService extends Service{
	@Override
	public void onCreate() {
		super.onCreate();
		
		//前台Service
        NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
        Notification notification = builder.build();
        startForeground(999, notification);
	}
	
	@Override
	public IBinder onBind(Intent arg0) {
		return null;
	}
	
	@Override
	public void onDestroy() {
		super.onDestroy();
		
		//停止前台Service
		stopForeground(true);
	}
}

 

2、创建广播接收器类

public class BootBroadcastReceiver extends BroadcastReceiver {
	@Override
	public void onReceive(Context context, Intent intent) {
		String action = intent.getAction();
		
		if("android.intent.action.BOOT_COMPLETED".equals(action)){
			Intent service = new Intent(context, SeasyService.class);
			context.startService(service);
		}
	}
}

 

 

3、AndroidManifest.xml配置文件

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

    <uses-sdk
        android:minSdkVersion="18"
        android:targetSdkVersion="18" />
    
	<!-- Permission -->
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.service.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        
		<!-- Service -->
        <service 
            android:name="com.example.service.SeasyService"
            android:enabled="true" 
            android:exported="true"
            android:process=":remote">
            <intent-filter>
                <action android:name="com.example.action.SeasyService" />
            </intent-filter>
        </service>
        
		<!-- BroadcastReceiver -->
        <receiver android:name="com.example.service.BootBroadcastReceiver">
            <intent-filter>
             	<action android:name="android.intent.action.BOOT_COMPLETED"/>                 
        	</intent-filter>
        </receiver>
    </application>
</manifest>

 

分享到:
评论

相关推荐

    【Android】开机自启动Service

    在Android系统中,Service是一种可以在后台长时间运行的组件,它不提供...以上就是关于Android开机自启动Service的实现细节,理解并掌握这些知识点对于开发者来说至关重要,特别是在设计需要在后台持续运行的应用时。

    Android应用开机自动启动

    `START_STICKY`确保服务被系统杀死后会重新启动,而`ForegroundService`则可以保持服务在前台运行,避免被系统优化掉。 ```java public class YourService extends Service { @Override public int ...

    Android service开机自动启动

    本项目"Android service开机自动启动"提供了一个示例,演示了如何创建这样的服务,并确保其在Android 4.0(Ice Cream Sandwich)及更高版本上完美运行。 一、服务基础 1. 创建服务:首先,你需要创建一个继承自`...

    Android后台保持运行,开机后自动启动设定好的APK的DEMO.zip

    这个DEMO应该包含了创建服务、广播接收器、权限配置以及相应的代码逻辑,学习并理解这个DEMO可以帮助你掌握如何在Android上实现后台运行和开机启动。在实际开发中,确保你的应用符合用户隐私和性能的最佳实践,提供...

    Android应用开机自启动

    在Android平台上,应用的开机自启动功能是许多服务和后台程序所必需的,这使得它们能够在用户打开设备后立即开始工作。实现这一功能涉及到对Android系统的一些核心组件和权限的理解。下面将详细介绍如何在Android...

    Android 开机自动启动一个Service

    Google在更新Android8.0后对Service的...导致目前想要启动服务必需实现服务的前台化,打开应用才能顺利启动service,否则在服务启动5秒后,系统将自动报错,会弹出一个提示窗口。实际测试得系统的app才能启动service。

    根据包名检测APP运行状态 开机自动检测

    "根据包名检测APP运行状态 开机自动检测"这个话题涉及到的关键技术包括Android服务(Service)、开机自启动(BootReceiver)以及对应用运行状态的监控。 首先,Android服务是用于在后台执行长时间任务的组件,它不...

    android动态设置开机自动启动程序

    在Android系统中,实现动态设置开机自动启动程序是一项常见的需求,尤其对于开发者和系统优化者来说,这有助于确保某些服务或应用在设备启动时能够自动运行。本文将深入探讨如何在Android平台上实现实现这一功能。 ...

    Android应用开机时自动启动

    本篇将深入讲解如何实现Android应用的开机自启动,并提供一个名为BootupDemo的示例代码作为参考。 首先,理解Android系统的启动流程是关键。当设备开机或恢复到激活状态时,系统会执行一系列初始化操作,其中包括...

    【Android studio】service在app直接退出下,整体输出情况,实现开机自启动,一直后台运行

    本话题将深入探讨如何在Android Studio中创建和管理Service,使其在应用退出后仍能继续运行,并实现开机自启动,以保持应用的后台存活。 一、Service基础 1. 创建Service: 在Android Studio中,可以通过右键项目 -...

    解析Android中如何做到Service被关闭后又自动启动的实现方法

    我们在使用某些Android应用的时候,可能会发现安装了某应用以后,会有一些服务也会随之运行。而且,这些服务每次都会随着手机开机而启动。有的服务做的更绝,当用户在运行的服务中手动停止该服务以后,过了一段时间...

    安卓开发之实现service开机自启动

    要实现开机自启动Service,我们需要进行以下几个步骤: 1. **创建Service**: 首先,我们需要创建一个继承自`android.app.Service`的类,并重写必要的生命周期方法,如`onCreate()`和`onStartCommand()`。`...

    安卓Android源码——后台保持运行,开机后自动启动设定好的APK的DEMO.zip

    在安卓系统中,后台保持应用运行以及实现开机自动启动是许多开发者关注的焦点,尤其是在开发服务型或工具型应用时。这份"安卓Android源码——后台保持运行,开机后自动启动设定好的APK的DEMO.zip"正是为了解决这些...

    Android代码-后台保持运行开机后自动启动设定好的APK的DEMO.zip

    在Android开发中,有时我们需要实现应用在用户开机后自动启动并保持后台运行的功能,这通常涉及到服务(Service)和BroadcastReceiver(广播接收器)的概念。本DEMO将演示如何实现这一功能,通过分析提供的文件我们...

    制作android安卓开机自启动的app.zip

    综上所述,制作一个Android开机自启动应用涉及的主要知识点包括BroadcastReceiver的使用、ACTION_BOOT_COMPLETED广播的监听、权限的申请、服务的启动以及针对不同Android版本的适配。通过以上步骤,你可以创建一个在...

    安卓开机自启动程序

    在安卓系统中,自启动程序是指那些在手机开机或重启后...总的来说,理解并管理安卓开机自启动程序是优化设备性能和保护隐私的重要步骤。通过合理控制自启动应用,用户可以平衡便捷性和效率,获得更好的手机使用体验。

    android自启动代码

    在Android系统中,实现应用自启动通常涉及到广播接收器(BroadcastReceiver)和权限设置。这里我们将深入探讨如何通过代码实现开机启动程序,并了解相关的Android机制。 首先,我们需要创建一个广播接收器来监听...

    Android应用源码之后台保持运行,开机后自动启动设定好的APK的DEMO.rar

    总之,这个DEMO项目涉及到了Android服务、开机启动、权限管理等多个关键知识点,对于希望学习如何使应用在后台持续运行并开机自动启动的开发者来说,是一个宝贵的教育资源。通过深入研究这个DEMO,可以更好地理解...

    android开机启动程序源码

    在Android系统中,开机启动程序源码涉及...通过理解这些知识点,开发者可以更好地掌握Android系统的启动机制,以及如何实现开机自启动的应用程序。然而,要注意的是,应谨慎处理开机启动,以免影响用户体验和系统性能。

Global site tag (gtag.js) - Google Analytics