Bart Calixto
Bart Calixto

Reputation: 19725

How to develop an in-app update for iOS and Android?

How is that supercell's clash royale update it's app (features, content, etc) inside the app itself without going to the app store?

Is it because they are supercell or is it possible to mere mortals to have an awesome in-app update experience like that? Any clue on how to do it?

UPDATE: I know this can be done for javascript-framework apps (react, cordova, etc) I'm asking for non-javascript ones (xamarin, swift, obj-c, c++, native, whatever)

Upvotes: 1

Views: 4914

Answers (2)

Saeid
Saeid

Reputation: 2321

one way is(for android):

  1. when you need update app , notify client for new update(with silent push notification or in app start+web api).
  2. next download new apk to specify location on device.
  3. then with this way : Install Application programmatically on Android , install new downloaded apk for user device.

Edit for IOS:

  1. Since for updated and install ios application , you need to AppStore , so via first step in top steps , notify user device then guide user to application AppStore page for update. but its not automatic and need to user to update application
  2. too , i find this link tutorial-how-to-implement-in-app-update-functionality-in-your-iphoneipad-app that writen in ObjectiveC language , but i not test this way and i'm not sure to properly perform

Upvotes: 1

rckoenes
rckoenes

Reputation: 69479

You are allowed to download data, like Clash of the titans does. They download level data but they do not patch or upgrade there main app. Since all data in main bundle is read only you can not just override it.

Also the App Store Review Guidelines restrict this:

Apps should be self-contained in their bundles, and may not read or write data outside the designated container area, nor may they download, install, or execute code, including other iOS, watchOS, macOS, or tvOS apps

Upvotes: 2

Related Questions