您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

尝试在Android上启动时启动服务

尝试在Android上启动时启动服务

作为附加信息:BOOT_COMPLETE在挂载外部存储之前发送到应用程序。因此,如果将应用程序安装到外部存储,它将不会收到BOOT_COMPLETE广播消息。

其他答案看起来不错,但我想我会将所有内容都包装成一个完整答案。

您的AndroidManifest.xml文件中需要以下内容

在您的<manifest>元素中:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

在您的<application>元素中(请确保为您使用完全限定的[或相对]类名BroadcastReceiver):

<receiver android:name="com.example.MyBroadcastReceiver">  
    <intent-filter>  
        <action android:name="android.intent.action.BOOT_COMPLETED" />  
    </intent-filter>  
</receiver>

(你不需要的android:enabled,exported等等,属性:Android的认值是正确的)

MyBroadcastReceiver.java

package com.example;

public class MyBroadcastReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        Intent startServiceIntent = new Intent(context, MyService.class);
        context.startService(startServiceIntent);
    }
}

从最初的问题:

其他 2022/1/1 18:16:15 有493人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶