Add periodic CBF sync in background process

Open
#352 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
30/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
ios, swift
Domain
mobile

Research direction

Start with Apple’s BGProcessingTask documentation and the prerequisite in #351, then verify how public descriptors could permit creating a Wallet while the phone is locked. Done means the app periodically checks compact block filters in a background task under suitable charging and Wi-Fi conditions, with the behavior demonstrated for developers.

Written by the indexing model from the issue text.

Description

enhancement

Most blocks will not be relevant to the user, but all compact block filters need to be checked. To ensure the bandwidth requirement is low when the user opens the app, we will probably want to check these in a background task via BGProcessingTask at good times (i.e. phone is plugged into the charger and on WiFi). If this is done around once per week, the task should have plenty of time to run before getting killed by the OS. Some prerequisites before we'd be able to do this:

  • Access to the public descriptors when the phone is locked, so we may create a Wallet.
  • #351 to help record if the background task is actually running on live devices.

Demonstrating this should be helpful for developers looking to integrate compact block filters, and is just about as "cutting edge" as we can get with the current capabilities of iOS

Dominant language
Swift
Stars
31
Forks
16
Avg merge
3d 18h
Merged PRs (30d)
1

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from bitcoindevkit/BDKSwiftExampleWallet

All issues in bitcoindevkit/BDKSwiftExampleWallet

Similar issues

More Swift issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.