OpenHarmony开源社区
直播中

石玉兰

7年用户 1440经验值
私信 关注
[问答]

请问鸿蒙智能穿戴设备如何保持后台任务定时获取网络数据?

当前代码状态:
参照官方ServiceDemo,使用后台ServiceAbility,赋予以下模式:
"backgroundModes": [
  "location",
  "dataTransfer",
  "wifiInteraction"
]
并开放权限:
"reqPermissions": [
  {
    "name": "ohos.permission.LOCATION"
  },
  {
    "name": "ohos.permission.LOCATION_IN_BACKGROUND"
  },
  {
    "name": "ohos.permission.KEEP_BACKGROUND_RUNNING"
  },
  {
    "name": "ohos.permission.GET_NETWORK_INFO"
  },
  {
    "name": "ohos.permission.INTERNET"
  },
  {
    "name": "ohos.permission.SET_NETWORK_INFO"
  },
  {
    "name": "ohos.permission.MANAGE_WIFI_CONNECTION"
  },
  {
    "name": "ohos.permission.SET_WIFI_INFO"
  },
  {
    "name": "ohos.permission.GET_WIFI_INFO"
  }]
无法满足业务
业务要求:应用退后台后,间隔30秒获取一次网络数据。(app属于应用工具类,展示服务器的数据。)
当前状态:应用退后台后,定时器大概10秒后就无法继续执行,应该是鸿蒙系统将该应用挂起。我又不可能像demo那样一直播放个音乐或是一直进行网络传输,
来触发系统不执行挂起,因为这样做大概率无法通过上架审核。
我应该采用什么的方式来实现这样的业务要求,并满足审核要求?或者是否鸿蒙不支持这样的业务?先谢谢了!

回帖(1)

李艳

2022-4-25 10:20:06
可以用定位(startLocating) + 前台服务的设置(keepBackgroundRunning(NOTIFICATION_ID, request))试试。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分