在BOOT_COMPLETED上启动Flutter应用程序自动启动时,在后台执行Dart功能吗?

时间:2019-04-07 18:43:26

标签: java android kotlin dart flutter

在Flutter应用程序中,而不是在屏幕上加载整个应用程序,我希望在应用程序收到BOOT_COMPLETED消息时自动在后台执行一个小的Dart函数。

当用户从启动器启动应用程序时,该应用程序应正常加载,但是当该应用程序收到BOOT_COMPLETED消息时自动启动时,它应仅在后台运行一个小飞镖功能,而无需在屏幕上实际加载该应用程序。

到目前为止,我已经使用了以下git >> https://github.com/oatpano/flutter_boot_startup

中的代码

但是此代码将在屏幕上运行整个应用程序。

我不是Android开发人员,所以在确定清单文件中到底发生了什么时遇到了问题。

因此在下面的示例中,我只想在应用程序收到BOOT_COMPLETED消息时自动执行backgroundfunction()

import 'package:flutter/material.dart';

void main() {
   runApp(new MyApp());
}

void backgroundfunction(){
    print("Hello world");
}

1 个答案:

答案 0 :(得分:1)

您可以使用background_fetch plugin并确保:

  1. 您遵循headless mode documentation
  2. 通过during configuration of the service启用startOnBoot: true,在Android <21上将use a BOOT_COMPLETED receiver或在Android> = 21上将persisted JobService启用