当应用程序在没有充电器的情况下处于后台时,是否可以在 Android 上下载文件?

Is downloading files on Android possible when the app is in background without a charger?

我正在开发一个应用程序,我需要从网上下载一个 200-300 MB 的文件。今天我注意到一个奇怪的行为。

在 IntelliJ 中,我总是通过 Android 显示器 运行 使用电缆将我的 phone 插入 PC。一切都 运行 很好,即使我在过程中间单击 'home' 按钮时文件也在下载,我总是在菜单中收到下载已完成的通知 - 真的,完全完成。

今天我从 pc/cable 上拔下 phone 的插头并打开应用程序。下载过程开始了,但是当我单击 'home' 并且应用程序进入后台时,它不会完成,甚至不会继续。它会冻结网络线程或与之相关的东西。

我看了一些,我记得一些流行的应用程序,例如 'Hearthstone' 游戏也有同样的问题。如果您转到菜单,下载将停止。

我发现这是充电器的问题。如果下载文件时phone正在充电,则一切正常。

我的问题是。

Is there any Android permission that will allow me to do this?

我听说可以在设备的设置上更改它,但这是一个糟糕的解决方案。

Is there any possibility to download files in background, without a charger and without user's interaction with the settings?

我还要补充一点,我正在使用 LibGDX 引擎,但没关系,我可以使用 Android 的所有功能。

我发现有两个方面可以限制网络:

  • 限制后台数据 - 您可以在每个应用程序的数据使用设置中设置一个选项
  • 自动限制网络等的省电选项。

额外:当设备连接到充电器时,默认情况下禁用省电 - 这就是它工作的原因。