The digitalization of data collection with mobile applications is becoming mainstream due to its many benefits, such as increased efficiency of the collection process and quality of the collected data.
However, a major concern by many users is the potential loss of valuable data during upload. This might be the result of poor network connectivity, unexpected interruption during data capture or the device battery running out.
Reducing the risk of data loss
Other concerns are that, like any software, the mobile app or overall data collection service may encounter errors. These errors are particularly disrupting when working remotely without a network connection. Therefore the reliability of the software and quick error resolution is of utmost importance.
We have addressed these challenges with several features in Poimapper. This blog is meant to alleviate concerns in transitioning to using mobile data capture. In addition, we give advise how you can yourself reduce the risk of losing data.
- Minimizing data loss during upload caused by poor network connectivity
Since Poimapper Plus mobile application is built to support offline situations, network connectivity is not a challenge during data capture. Problems with connectivity occur mainly during data upload or download whereby data may be partially uploaded or downloaded when the network connection is interrupted.
Ideally, it should be possible for one to resume upload or download from the point of interruption, but in some cases, resume doesn’t always work perfectly especially when the network interruption takes longer periods of time.
Considering this, we changed how upload is implemented in Poimapper. Initially, we had a streaming approach whereby data was uploaded as a stream. If the connection was lost, the stream would continue from where it had stopped.
Sometimes, however, if the upload is disrupted for a long period of time, the data would be partially uploaded resulting in bad customer experience. Therefore we changed the approach to allow uploading one data point at a time.
This results in a clearer outcome from the user’s point of view. If the connection is lost certain data points are completely uploaded and some not at all; only one data point at most may result in partial upload i.e. just the data, but not the images.
Previously images would sometimes be uploaded, but the saving to the database would fail. For this reason, a further confirmation check was introduced, so that when the files are finally stored a confirmation message is sent to the app. In addition, if the app is closed while an upload is going on, the app will remember how far it got and upon restarting the app, it will automatically continue uploading.
As a final precaution, as network connectivity issues can be unpredictable, a continuous log of all upload activities noted by the server is saved for automatic issue reporting if upload failure for whatever reasons is noted.