gpt4 book ai didi

安卓服务没有启动

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:50:58 25 4
gpt4 key购买 nike

我尝试向我的 Android 应用程序添加服务,但该服务根本无法启动。我将它添加到我的 android list 中,以便它在自己的进程中启动并创建一个 broadcastreceiver,它应该在 BOOT_COMPLETED 之后启动服务。

这是我的 list 的一部分

    <service android:process=":attachServiceBackground"
android:name=".AttachService"
android:icon="@drawable/camera"
android:label="@string/attachServiceName" />

<receiver android:name="AttachmentStartupReceiver"
android:process=":attachServiceBackground">
<intent-filter >
<action android:name="android.intent.action.BOOT_COMPLETED"></action>
</intent-filter>

</receiver>

我的服务...刚刚添加了日志记录

public class AttachService extends Service {
private static final String TAG = AttachService.class.getSimpleName();


@Override
public IBinder onBind(Intent intent) {
return null;
}

@Override
public void onCreate() {
super.onCreate();
Log.d(TAG, "onCreate service");

}

@Override
public void onDestroy() {
super.onDestroy();
Log.d(TAG, "onDestroy");
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
Log.d(TAG, "onStartCommand");
return super.onStartCommand(intent, flags, startId);
}
}

还有我的 BroadCastReceiver

public class AttachmentStartupReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {
Intent attachSvc = new Intent(context, AttachService.class);
context.startService(attachSvc);
}
}

我看不到服务在启动设备后启动,日志中没有“oncreate 服务”,我还查看了“设置”->“应用程序”->“正在运行的服务”。有人知道我做错了什么吗?

谢谢

最佳答案

您需要在 list 文件中添加以下权限

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

BOOT_COMPLETED 默认不发送广播。

关于安卓服务没有启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13629893/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com