Software Engineering
design mobile settings
Updated Wed, 24 Aug 2022 01:06:17 GMT

Best practices for remotely resetting a mobile app's content/settings


What would be the best approach to resetting a mobile app's content/settings?

Let's say the app is cross platform: iOS/android using javascript/phonegap. The current way this is designed is to have an admin area that can see mobile devices (users which have logged in). The admin has the ability to flag a device for reset.

The app regularly polls the server to see if it should be reset. Resetting will be rare, but the polling is not. The polling doesn't cause any performance issues but it seems off to constantly be asking the server whether or not to blow up the app.

A push rather than a pull method would be nice but I'm not sure what this would look like.

Does anyone have any alternative design suggestions? Are there any drawbacks to the current design?




Solution

Both Android and iOS support some form of push notifications. You should absolutely take advantage of those to deliver your reset messages rather than polling. Running radios unnecessarily can be a huge battery drain, and shifting the responsibility for delivering the reset message to the operating system will be a significant improvement.

If you aren't able or don't want to set up the necessary server side of the push notification equation, there are third parties like Urban Airship and OpenMarket that will be happy to do it for you (for a fee, naturally).