Closed mstange closed 4 years ago
Device transfer currently uses Apple's Multipeer Connectivity framework to transfer data. A limitation with this framework is it only works correctly while the app is foreground:
If the app moves into the background, the framework stops advertising and browsing and disconnects any open sessions.
Because of this restriction, device transfer currently requires that the app remains foreground until it completes.
Bug description
When transferring message history data to a new iPhone, it is easy to interrupt the transfer. This causes grief because restarting the transfer is expensive: the transfer takes a long time, and it requires an activation SMS on the new iPhone every time, and that SMS is rate limited.
For example, the following actions on the "source" iPhone irrevocably abort the transfer:
It would be great if the transfer could continue after these actions.
Device info
Device: iPhone 6S
iOS version: 13.5.1
Signal version: 3.14.2.2