Android上的机会数据包发送

Android上的机会数据包发送,android,sockets,networking,battery-saver,Android,Sockets,Networking,Battery Saver,假设我有一个应用程序需要不时向服务器发送一些小数据包,没有特定的间隔(可能是最大间隔)。既然人们不想在每次发送数据包时唤醒CPU+无线电+其他SoC垃圾(电池电量不足!),那么有没有可能(也就是有API)将数据包发送到队列,以便在下次无线电唤醒时尽快发送数据包呢 我知道这很复杂,但想想看,像ping(以前的WhatsApp版本每30秒或60秒ping一次服务器)或类似的keepalive包这样的消息会从中受益匪浅 如果有一个事件表明收音机什么时候“醒来”,你可以直接挂上它。我会检查autosta

假设我有一个应用程序需要不时向服务器发送一些小数据包,没有特定的间隔(可能是最大间隔)。既然人们不想在每次发送数据包时唤醒CPU+无线电+其他SoC垃圾(电池电量不足!),那么有没有可能(也就是有API)将数据包发送到队列,以便在下次无线电唤醒时尽快发送数据包呢


我知道这很复杂,但想想看,像ping(以前的WhatsApp版本每30秒或60秒ping一次服务器)或类似的keepalive包这样的消息会从中受益匪浅

如果有一个事件表明收音机什么时候“醒来”,你可以直接挂上它。我会检查autostart的应用程序。有一个“用户在场”事件,只有当用户解锁键盘时才会激活。我能找到的最近的。哈!这已经很接近了。不过,我的主要演唱会是在用户不使用手机的情况下发送软件包,这样我就不会消耗太多电池电量。当然,当用户处于活动状态时,我们可以“安全地”假设发送数据包不会消耗太多的电池电量(可能收音机已经打开,CPU没有休眠)。如果您有根手机,请安装“AutoStart”。它允许您控制允许哪些应用程序连接到特定事件,从而为您提供可用事件的概述。文档中可能有列出所有事件的API。