This course will be retired on July 14, 2025.
Heads up! To view this whole video, sign in with your Courses account or enroll in your free 7-day trial. Sign In Enroll
Well done!
You have completed Android Lists and Adapters!
You have completed Android Lists and Adapters!
Preview
Let's look at how to convert our data from JSONArray to be used in a Java Array.
- The GSON library from Google
- FasterXML's Jackson Project
- JSON simple
- Oracle's JSONP
Related Discussions
Have questions about this video? Start a discussion with the community and Treehouse staff.
Sign upRelated Discussions
Have questions about this video? Start a discussion with the community and Treehouse staff.
Sign up
Welcome back, how did you do?
0:00
Hopefully this is just review for you.
0:02
We start off here creating
a new array of hour objects.
0:05
So Hour array.
0:12
We'll call it hours, so new_Hour array,
0:15
Data.length.
0:22
We can then loop through all
the items in the JSON array,
0:28
get the data we want from each one, and
set a new Hour object in the hours array.
0:31
I'll do it in a for loop.
0:37
Scroll up here a little bit,
give ourselves some room.
0:40
So for.
0:45
So as long as i is less than
the length of our data.
0:51
Our incrementor.
0:57
One thing to note here is that
length is a method, not a property.
1:00
With a normal array,
like our array of hours,
1:06
we get the length via a property
called length, not a method.
1:10
It's easy to confuse the two, but
that's why we have auto-complete.
1:15
Back to our loop.
1:20
Our first step is to create a new JSON
object for the item at position i.
1:21
So JSONObject, we'll call it
1:26
jsonHour, we want data,
1:31
getJSONObject at position i.
1:35
Now we create an hour object,
1:42
And set our values from the JSON.
1:50
So setSummary(jsonHour).
1:54
GetString, and it was called summary.
2:01
We'll set our icon.
2:08
Again, that was a string.
2:14
We'll set our temperature,
which is a double.
2:21
Called temperature.
2:32
We'll set our time, Which was a long,
2:35
Called "time".
2:47
And we'll set our timezone.
2:50
We'll pass in timezone.
2:55
And now we can return hours.
3:05
All right, let's verify this is
working by using the debugger.
3:11
We can set a break point here
where we're defining hour.
3:15
Set a break point, and
we run our app with the debugger.
3:19
There's our hour.
3:44
And we see it starts populating.
3:49
Very nice.
3:52
And our data is coming through.
3:52
Terrific, let's not forget to remove
this break point before we move on.
3:54
Fantastic work.
4:05
We've updated our data model to handle
this more complex set of data, and
4:07
then we saw how to use the JSON array
class to work with arrays of JSON objects.
4:11
With this skill set, you are pretty much
a master of working with JSON in Android.
4:16
It can get a little tedious though.
4:21
In true Android and open source fashion,
there are some excellent
4:23
third party libraries available that
make working with json data even easier.
4:27
If you're interested, check out
the links in the teacher's notes.
4:32
You need to sign up for Treehouse in order to download course files.
Sign upYou need to sign up for Treehouse in order to set up Workspace
Sign up