Skip to main content

How to save data to local storage in Sketchware

At some point you might want your users to be able to save or store data for later use. This might be when a game is paused or when recording information. 

There are two ways to save data in an app. One is using the Shared preferences component which saves data in the user's device storage or using online storage such as Firebase database or Firebase storage

1. Shared Preferences

This saves data on the user's device or phone memory and thus it is also referred to as 'saving to local storage.' This means that when the User deletes the App, then that data is also lost.

2. Firebase Database/Storage

This saves the User data on a central database managed by Google but under your control. Just like your email. This data remains in your database when a user deletes the App. It is also the platform from which messages are stored and received when chatting. 

Tutorial

For today's tutorial we will save data to Shared Preferences

Step 1


Add an *edittext* widget to your app.  Change the *hint* to 'enter username' so that the user knows what to do. This is where your user will enter data such as a username.



Ps. You can enter as many edittexts as you want. In my example I have added 2 edittext fields.

Step 2


Add a *button* and change the button text to "Save" so that when a user clicks the button our data is saved to their phone's memory. 

Step 3


Go to *onButtonClick* Event and create a *shared preference* component. Give it a name and specify the filename. My component is "userdata" and the file path is "userdata" as well. NB~This will be a directory to where your data is saved. Meaning if you want to retrieve that data in another event, you simply create the same component and give it the same name.






Step 4


We then place a our 'set data' shared preferences blocks to save the data. When saving data, you should give it a key to identify it. So in my example, my keys are "username" and "city". I have included a toast/show message saying "Your data has been saved"



At this point if we run the App it will save the data to our phone's memory... but we also want to retrieve it right? So we'll get into part 2 shortly.

How to retrieve data from Shared Preferences in Sketchware

After we have saved data, we want to be able to retrieve it. This can be when the app starts or when a certain event is triggered e.g. a button click. In my example, I want the user to be able to close the app and find the same data when the app starts. So I will place my logic onStart. I will use a *setText* block to display the data from shared preferences using the same key that was used to save it.

This is how it will look

You can now run your app. Whatever you type in your edittext will be saved when you click the save button. This data will also be displayed in the edittexts when the app is opened. 

I hope you found this helpful. Can't wait to check out your new app

Comments

Melodyikpa said…
I need help my name is Elijah and here is my WhatsApp number 07012526580

Popular posts from this blog

Hip hop and RnB songs to apologize to your partner

Love is a beautiful thing, but it often goes wrong. This often leads to pain, suffering and sorrow.  Being imperfect beings, hearts tend to get broken all the time regardless how hard we may try to avoid it.  The heartbreak is often inadvertent but at times we find ourselves in the wrong. An oversight, a word unsaid or even a lapse in our judgement can cause our loved ones harm. This doesn't always have to be the end though. Oftentimes, relationships can be mended by simply uttering three simple words: "I AM SORRY". This article is a collection of some of my favourite 'I'm sorry' songs. I hope you'll enjoy these apology songs, but more importantly, I hope you will get a few quotables and some wisdom nuggets from them.  The best apology however, is to change behaviour (got that from a Jay Z interview) so as you apologize, please remember that it was your actions that hurt them. The best apology is one which involves you not repeating those same mistakes aga

How to easily create background notifications in Sketchware(original)

One of the keys to building a successful app is to find mechanisms that will keep your users engaged. You can do this by using background notifications. This tutorial will show you how to do that in Sketchware. We will cover: 1. How to create notifications in Sketchware 2. How to show these notifications even when the app is closed. We will start by creating a new project. If you do not know how to create a new project please check out this article here. Once we have created our project, let us create a more block to place our code. Navigate to the events menu and then to the moreblock section as shown in the image above. Create a moreBlock. I have created a moreblock with the name "BackgroundActivity" with a boolean variable named "run." See the image below for how to add the boolean variable. Place the following block in the moreBlock Background activity code: moveTaskToBack(_run); That will move our task to the background.  Please note, that at this point we have

Php date: How to get the first and last day of the week

In this tutorial, I'll show you how to get the first and last day of the week in php. By default, in PHP the week runs from Monday to Sunday. However we'll cover two methods to get the first and last day for both those who consider Sunday or Monday as their first day of the week. We will be using 2 functions to achieve this: date() strtotime() We will use a combination of these two functions and store the result in a variable.  How to get the first day of the week If you want to get Sunday, use this method: $firstday = date('l Y-m-d', strtotime("sunday -1 week")); echo $firstday; If you want to get the date for Monday, this current week, use this method: $monday = date('l Y-m-d', strtotime("monday -1 week ")); echo $monday; How to get the last day of the week The following code will give you Saturday as the last day of the current week. $lastday = date('l Y-m-d', strtotime("saturday 0 week")); echo $last