Skip to main content

Check for latest app version using Firebase in Sketchware

You can store the latest version of your app in Firebase realtime database, and then check and compare it with the actual version of installed app. Follow the instructions below to know how to do this.

1. In your Firebase app in sketchware, in library manager, make sure you have entered correct App ID and project ID, and that Firebase switch is on.

2. Make sure the rules in your Firebase database are read and write true.

3. On the MainActivity or the Activity in which you want to check for the latest app version, add a new FirebaseDB component called Ver:version.

4. Create three new String variables, package_nameyour_version and latest_version, and a new Map variable map.

5. In onCreate event, set the string package_name to package name of your app.

6. Next in onCreate, use an add source directly block and put codes for getting the version of presently installed app.
try {
android.content.pm.PackageInfo pinfo = getPackageManager().getPackageInfo( package_name, android.content.pm.PackageManager.GET_ACTIVITIES);
your_version = pinfo.versionName; }
catch (Exception e){ showMessage(e.toString()); }

This code sets the string your_version to version of the installed app.

7. Next in onCreate use add source directly block and put following code.
DatabaseReference rootRef = _firebase.getReference(); rootRef.child("version").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
if (snapshot.exists()) { } else {

This code checks if the FirebaseDB component version exists in the database. If it doesn't exist then push the version of installed app to the database. Use following blocks next.
After this complete the code for ValueEventListener by putting following code in another add source directly block.
} }
@Override
public void onCancelled(DatabaseError _error) { } });

The onCreate event should look as in image below.
8. Add a new Map List map1.

9. Add event FirebaseDB:Ver onChildAdded.
* In this event, get children from firebase database to Map List.
* Then set the string latest_version to key v at position 0 of the Map List.
* Then if latest_version is greater than your_version, toast a message that update is required. You can also display a dialog instead of toast and prompt user to update the app. Or you can use intent to directly lead the user to update url.
* Else if your_version is greater than latest_version, update the version in database using following code:
Ver.child("app").child("v").setValue(your_version);

To accomplish this in FirebaseDB:Ver onChildAdded use blocks as shown in image below.

10. Save and run the project. Your app will show you if any new version is available, and your database will update automatically if someone installs a newer version of the app.

Comments

Popular posts from this blog

Create Music Player app in Sketchware

To create a Music Player app in sketchware, follow the steps given below. 1. Create a new project in Sketchware. 2. In VIEW area on main.xml, add a ListView  listview1  with height wrap_content, and weight 1. Add a SeekBar  seekbar1 , an ImageView  imageview1 , and three TextViews  textview1 ,  textview2 , and  textview3 , as shown in the image below. 3. Create a CustomView  mycustom.xml  and add a TextView  textview1 , and an ImageView  imageview1  in it. For listview1 select mycustom.xml as it's customView. 4. Add a MediaPlayer component  mp , a Shared Preferences component  sp:sp  and a Timer component  timer . 5. Create six More Blocks  MPcreate(pos), MPstart , and  MPpause  for the MediaPlayer and  searchFolders ,  getFileList in [filePath]  and  extra . 6. Add three number variables  n, r  and  songPosition , and five String variables  currentfile ,  songMinutes ,  songSeconds ,  folder ,  folderName . Also add a List String  folderList,  List String  fileList  and a List Map

Admob rewarded video Ads in Sketchware

To integrate Admob Rewarded Video Ads to a Sketchware project, follow the steps given below. Prerequisites An Android project (Sketchware project) Account in Admob Always place the test ad unit ID before placing your ad unit ID. App ID and ad unit ID can be obtained by registering the app on Admob. But for using test ads no registration is required. Do not click on your own Ads. 1. Create an android project in Sketchware. 2. Add the app to your Admob account. For your app, generate an ad unit ID for Rewarded Video Ads. 3. In Sketchware project, navigate to  Library Manager  and open Admob settings. i. Click on Add manually and add the ad unit ID generated on Admob website, or use test ad unit ID ca-app-pub-3940256099942544/5224354917. ii. If you are not using any banner or interstitial ad units, select the same ad unit ID for both banner and interstitial ads. iii. Add Test Device automatically shown by Sketchware. iv. Save it. v. Switch ON Admob and AppCompat and design. 4. In this exa

Firebase auth in Sketchware for Login Activity

To create a login activity using Firebase Auth in Sketchware, follow the steps given below. This method uses Firebase authentication service for creating login. 1. In your Firebase account, go to Firebase authentication. 2. In Firebase authentication web set-up, go to SIGN-IN method, and enable Email/password and Anonymous. 3. Go to Project settings in your Firebase project and copy the Web API Key, Project ID, and App ID. 4. Paste the Project ID, App ID, and Web API Key in your project in Sketchware, in the Firebase settings. 5. On the  MainActivity  page add a File Shared preferences component  user:user  and an Intent  i . Also add a Timer  t  and a Firebase Auth  testlogin . 6. Create a new page  login.xml  with Activity called  LoginActivity . 7. In  onCreate  event of MainActivity use blocks as shown in image below. It identifies main page with  File user key page . It also checks if user is logged in to  FirebaseAuth . If user is logged in then other blocks are executed. If user