Using Open APIs In Mobile Apps Activity

From Foss2Serve
Revision as of 16:21, 28 May 2015 by Relkharboutly (Talk | contribs)
Jump to: navigation, search
Title Using Open APIs in Mobile Application Development
Overview In this activity students will learn about Open APIs, how does it relate to open source and how to use in building a mobile application.
Prerequisite Knowledge CS2 using Java and basics of Android development
Learning Objectives
  • To understand what an Open API is.
  • To understand how open APIs relate to open source.
  • To be able to use open APIs in mobile application development
  • To specifically use the wheelsmap API to build a simple Android accessibility application.

Background:

This activity is meant to educate students about open APIs and how to use them in android app development. The activity is targeted for accessibility APIs to emphasize the humanitarian aspect of HFOSS.

Directions:

Part 1

  1. What is What is an Open API? What is REST? How and why is it open ?

http://searchcloudapplications.techtarget.com/definition/open-API

  1. What is the difference between open source and open API?

http://toni.org/2007/01/30/open-source-vs-open-apis/

Write a one page summery compiling your understanding of these readings.

Part 2

We limit our discussion here to accessibility APIs. Examples of these are the wheelmap APIs (http://wheelmap.org/) and . The wheelmap API provides locations of wheel chairs in a given area (represented as longitude and latitude). The following is sample query that retrieves wheelchair for the location at (13.341,52.505) longitude and (13.434,52.523) latitude.

http://wheelmap.org/api/categories/1/nodes?api_key=5cqRDhErg1vvnciMhTk5&bbox=13.341,52.505,13.434,52.523&per_page=10&wheelchair=yes

Run the http request on your browser and copy the result in your report.

This output is in JSON format. To learn more about JSON read : . To be able to read the output check :

Read the API docs

Deliverable:

What will the student hand in?

Assessment:

How will the activity be graded?

How will learning will be measured?

Include sample assessment questions/rubrics.

Comments:

What should the instructor know before using this activity?

What are some likely difficulties that an instructor may encounter using this activity?

Additional Information:

Knowledge Area/Knowledge Unit What ACM Computing Curricula 2013 https://www.acm.org/education/CS2013-final-report.pdf knowledge area and units does this activity cover?
Topic What specific topics are addressed? The Computing Curriucula 2013 provides a list of topics - https://www.acm.org/education/CS2013-final-report.pdf
Level of Difficulty Is this activity easy, medium or challenging?
Estimated Time to Completion How long should it take for the student to complete the activity?
Materials/Environment What does the student need? Internet access, IRC client, Git Hub account, LINUX machine, etc.?
Author Who wrote this activity?
Source Is there another activity on which this activity is based? If so, please provide a link to the original resource.
License Under which license is this material made available? (http://creativecommons.org/licenses/)


Suggestions for the Open Source Project:

Suggestions for an open source community member who is working in conjunction with the instructor.



This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License

CC license.png

Personal tools
Namespaces
Variants
Actions
Events
Learning Resources
HFOSS Projects
Evaluation
Navigation
Toolbox