How to add update system

I recently saw a lot of posts about ’ how to update app automatically ’ or ’ best method to show new update '.
So I think to create a Guide on this.I do no know whether it is useful or not but I think it is good to share some knowledge.
Components
You will need some components before getting started.I have used:

  • Button
  • Label
  • Notifier
  • Custom Tab
  • Package
  • Firebase Database

Note:- You can also make your app without some of these components but then you have to use your own logic.
How it looks from designer


Now move to blocks.
Blocks
When screen initializes I have set current version to app’s version.
image
Now when check for update button is clicked it checks for a new app version in Firebase Database.
image
When Firebase Database got value it compares value to version.If value is greater than app version than it will show a choose dialog else it will show an alert.

After choosing an option it will check if user clicked on update or cancel.If user clicked on update than it will open the set URL else it will show dialog again and again until user clicks Update.

Also if Firebase Data is updated it will also check that app’s new version is available or not.
image

AIA
Download Link1: App_Update.aia - Google Drive
Download Link2: http://raboninco.com/21784285/app-update-aia

Why Firebase DB?
As we know there is already a component named Firebase Remote Config so your first choice should be that.
But we can not update data of it using an app.We have to open Firebase Console to update data.That’s why I have used Firebase DB to keep it simple and flexible and it can be upated from an app.

Also I want to say thank you to @mahando754 for pointing out that download link is not working.
Hope this helps!:grinning:

18 Likes

I tried his way a while ago

But I am writing the version as text

Check it out from firebase

Keep up the wonderful work

Where should I change the version? in Kodular or Firebase?

From firebase.
Take an example.
Say your one user has version 1.1 but latest version is 1.2 (set in firebase) then it will show a notification that new version/update is available.

Here is a simplest method:

  • upload your app to an android store (say kodular store)
  • make new version of app with new version code and version name
  • update it on store
  • update version in firebase
  • check for update
    Now if user has latest version(installed from store) then it will not show any notification else it will.

Can we achieve this when apk not uploaded to official app stores,suppose if i upload my apk on my host and can i use this to update the app ? If we can achieve what should be the changes i have to make ?

1 Like

Then you have to set custom tab url to your host so that user can download latest app from your server.

just you use inapp update, to use it go to expermental group
Kodular Creator

But what if you have not enough money to buy a Developer Account ?

2 Likes

downloading will take place within the app or will user be required to leave app and go to the url to download it?

It will be within the app by Chrome Custom Tab.
But it can be customized and/or replaced with Download and Web components (if you have a direct download link) or Web Viewer (if you have no direct download link)

It is similar to the idea of the Deep Host

Edit by Mod: If promoting YouTube Videos, then make sure they are in English.

1 Like

Where will i be required to keep new version of app? (Other than Playstore)
In firebase?

You can upload app/apk to any website which provides an link to your app.
I recommend using Kodular Store if you have no Developer Account on PlayStore.

Thanks for this, I have been looking for it. Please you show me how the structure will look in my firebase database.

I have gotten it, this is what I did

3 Likes

I will change the value from 1.0 to 2.0 once i update the app

How did you get “Call firebase_database .get value
tag
value if tag not there” ???

I wrote the tag and value manually in my database

Please guide me how to create?

Use this above block in your app, then go to your database and create Tag and a value, the tag can be any name but let the value be the same with your app version name, eg 1.0,. Like this

1 Like