How to Read Data from Google Spreadsheet in Android?
Many apps have to display statistical data inside their applications and they stores all their data in the excel file or a spreadsheet. But it is not every time possible to add the whole data in the database to use inside our app. In this article, we will take a look at reading this data from our Excel sheet in Android App in Android Studio.
What we are going to build in this article?
We will be building a simple application in which we will be displaying data from our excel sheet which we have already created and we will read the entries from that excel sheet and display that list of data in our recycler view. A sample video is given below to get an idea about what we are going to do in this article. Note that we are going to implement this project using the Java language.
Step by Step Implementation
Step 1: Create a New Project
To create a new project in Android Studio please refer to How to Create/Start a New Project in Android Studio. Note that select Java as the programming language.
Step 2: Add the below dependency in your build.gradle file
Below is the dependency for Volley which we will be using to get the data from API. For adding this dependency navigate to the app > Gradle Scripts > build.gradle(app) and add the below dependency in the dependencies section.
// below line is use for image loading library
After adding this dependency sync your project and now move towards the AndroidManifest.xml part.
Step 3: Adding internet permissions to the AndroidManifest.xml file
Navigate to the app > AndroidManifest.xml and add the below code to it.
Step 4: Creating a URL for fetching our data from Google Spreadsheet
Create a simple Google Spreadsheet which is shown below. Make sure to use the same headers as shown in the below file.
After you have created our excel file. Now we have to publish this excel file to use it inside our app. For publishing it.
Now we will create a URL in which we will be getting the data in the JSON format. Go to your excel sheet and copy the id of your sheet which is shown in the below screenshot.
https://spreadsheets.google.com/feeds/list/“Enter your ID here”/od6/public/values?alt=json
After copying this id paste the id in the below URL and run the URL in your browser. You will get to see all the excel data in JSON format. Now we will use this data in JSON format inside our app. Make sure that you have published your Excel sheet. Otherwise, this method will not work. Now we will use this URL in our app to get the data in JSON format.
Step 5: Working with the activity_main.xml file
Navigate to the app > res > layout > activity_main.xml and add the below code to that file. Below is the code for the activity_main.xml file.
Step 6: Creating a Modal class for storing our data
For storing our data we have to create a new java class. For creating a new java class, Navigate to the app > java > your app’s package name > Right-click on it > New > Java class and name it as UserModal and add the below code to it.
Step 7: Creating a layout file for each item of our RecyclerView
Navigate to the app > res > layout > Right-click on it > New > layout resource file and give the file name as user_rv_item and add below code to it.
Step 8: Creating an Adapter class for setting data to our RecyclerView item
For creating a new Adapter class. Navigate to the app > java > your app’s package name > Right-click on it > New > Java class and name it as UserRVAdapter and add the below code to it.
Step 9: Working with the MainActivity.java file
Go to the MainActivity.java file and refer to the following code. Below is the code for the MainActivity.java file. Comments are added inside the code to understand the code in more detail.
Now run your app and see the output of the app.
Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course.