Sync and Share app needs to run in background

Hi,


I have an app that really needs to be able to run in the background but it doesn't fall into any of the classes of apps that are allowed to run in the background.


The app is a sync and share app that provides file access to cloud storage with end to end data encryption. There are 2 main reasons why it needs to be able to run in the background:


1) There are times when the user may initiate some action that requires a significant amount of time to complete. For example if they wanted to upload several movies the data would first need to be encrypted and then uploaded. The problem is that after initiating the process the user will often switch to some other app and do something else expecting the process to continue, but because the app cannot run in the background, when they return to my app they find that the upload progress has not advanced. This leads to a very unsatisfying user experience since from the user's perspective it can appear that the upload will take days to complete.


2) Providing a File Provider extension for my app so that users can access the files via the File App is not feasible. Inorder to save files back the File Provider extension would need to pass the file to my app which only works if it is running in the background. The File Provider app cannot do the processing itself because it doesn't have access to metadata needed to perform the encryption.


This is a pity because I think users would be interested in a cloud storage solution that provided end to end encryption.


So my question is: Is it possible to get an exception to the rules regarding background execution that would allow my app to run in the background as if it were playing music for example?


The app's energy usage is negligible when there is nothing for it to do.

Replies

That would allow the upload to be performed in the background but it doesn't get you all the way there because the data encryption and other processing can take a long time also and there is no guarantee it can be done in the grace period granted apps to run in the background before being suspended.


The example I gave with the problem of processing and uploading large files is just one example of the problem of not being able to run n the background, there are others that do not involve uploading large files. The main problem is that the app is really intended to be run as server that provides secure access to a cloud based file system. It works great on other platforms it is just on IOS where it has problems because of the inability to run in the background.

> ...on IOS


As always, feel free to make a feature request via the Bug Reporter link, below right, for things you'd like to see going forward - be sure to add your report # to your thread for reference & good luck.



_____________________________

Tags: Report Bugs

Another approach is to claim to implement (and perhaps even implement) a feature that requires a longer background time even though you may not always use that feature. Play some music while you download - perhaps the theme from Jaws.

As a test I did that and just played a silent music file while in the background to keep the app alive. It works great and allows me to do eerything I need but Apple explicitly states that apps that use features such as that for purposes that they were not intended will not be allowed in the store.


Maybe I can convince them to make an exception.

Why not let the user chose whether they want to hear an alert when the file finishes downloading. Then play a silent music file until complete and, when complete, play the sound-or-nothing based on user selection. Then you need to operate in the background - legitimately, albeit inefficiently.