Implement native iOS code to fetch data from blob service and keyserver code to upload notification payload if it exceeds APNs limits
Summary:
This differential implements native iOS code in Objective-C that can fetch data (any data - not
necessarily notif payload) from blob service. Additionally it implements first usage of this code in
NotificationService where large notification payload is downloaded from blob service, AES decrypted and
persisted in flat file and redux (if app is in the background). Finally the keyserver code that upload large notification payload to the blob service is implemented.
Test Plan:
- Build iOS app.
- Background or kill the app.
- Send large notifications to the app. I used 16000 character notifications for testing.
- Ensure notification is displayed shortly after it was sent.
- Kill your local keyserver
- Open the app. Ensure that (entire!!!) message content is available in the thread.
Reviewers: tomek, bartek
Reviewed By: tomek, bartek
Subscribers: atul, michal, ashoat
Differential Revision: https://phab.comm.dev/D8665