安装后,我想在后台运行我的android应用程序。我尝试仅在后台运行该应用程序。但重启设备后,我必须自己启动该应用程序。 我需要做的是像FACEBOOK一样工作我的应用程序。据我所知,它们永远在后台运行,并且不需要在每次重新启动后手动重新启动。有人帮我吗?
答案 0 :(得分:1)
在AndroidManifest.xml
<receiver android:name=".BootUpReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
创建以BootUpReceiver命名的Java文件
public class BootUpReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)) {
//Do your coding here...
}
}
}
答案 1 :(得分:0)
您可以使用FirebaseMessagingService类,并使用它来执行您想在其内部执行的任务,它还可以用于执行其他操作,而不是创建推送通知,因为它在后台运行,您始终可以在服务器上配置代码最后要做几个任务我已经使用FirebaseMessaging服务类来完成应用程序的各种后台任务 并且一旦启动,它就始终保留在后台,因为它可以发送推送通知,并且可以随时显示。
您只需要从Firebase服务器发送参数,并根据类中onMessageReceived方法中接收到的参数编写代码
public class NotificationService extends FirebaseMessagingService {
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
super.onMessageReceived(remoteMessage);
int userCount=remoteMessage.getData("count");
//do anything using the parameters which are in remote message
}
}
您需要向Firebase URL发出发布请求,然后将Json Object中的数据与以下数据一起发送到哪里,其中to是访问令牌
https://fcm.googleapis.com/fcm/send
Content-Type:application/json
Authorization:key=AIzaSyZ-1u...0GBYzPu7Udno5aA
{ "data": {
"count": 5
},
"to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1..."
}