application development for mobile and ubiquitous ...ts2/admuc/seminar1314/final/gro… · seminar...

16
Department of Computer Science Institute for System Architecture, Chair for Computer Networks GroupNo. 9 Team: Beatrycze Kmiec, Joachim Fritzsch Application Development for Mobile and Ubiquitous Computing Seminar Task Final Presentation

Upload: others

Post on 25-Jun-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Department of Computer Science Institute for System Architecture, Chair for Computer Networks

GroupNo. 9 Team: Beatrycze Kmiec, Joachim Fritzsch

Application Development for Mobile and Ubiquitous Computing

Seminar Task

Final Presentation

Page 2: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Campus Navigator - Agenda

1.  Recap: CampusNavigator

2.  Architecture & Technologies

3.  Pitfall: Google Maps API & Navigation

4.  Mobile Computing Challenges

5.  Adaptation & Context

6.  Extensibility

7.  Lessons Learned

2 Application Development - Second Seminar Presentation

Page 3: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Recap: CampusNavigator

Campus Navigator

§  Help visitors/freshmen/rookies to find their way on large campuses

§  Define Campus in XML to make the application extensible to any campus

§  Users shall be able to search for buildings by name, address or shortcut and see it on a map

§  Show navigation route between current position and destination

§  Let users download Campuses from a web source within the application

3 Application Development - Second Seminar Presentation

Page 4: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Recap: CampusNavigator

Use case diagram

4 Application Development - Second Seminar Presentation

-> all implemented

Page 5: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Architecture and Technologies

5 Application Development - Second Seminar Presentation

Page 6: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Pitfall: Google Maps API & Navigation

Google Maps API

§  Initial design planned navigation controllable within the app. Google Maps was to be embedded.

§  Pitfall: Google Map API does not expose navigation functionality!

§  Solution: Redirecting user to Google Maps, using an Android Intent including the users selected data:

•  // start google maps •  final Intent intent = new Intent(Intent.ACTION_VIEW, •  Uri.parse("http://maps.google.com/maps?" + "saddr=" •  + latitudeCurr + "," + longitudeCurr + "&daddr=" •  + latitudeTar + "," + longitudeTar)); •  intent.setClassName("com.google.android.apps.maps", •  "com.google.android.maps.MapsActivity"); •  startActivity(intent);

6 Application Development - Second Seminar Presentation

Page 7: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Pitfall: Google Maps API & Navigation

7 Application Development - Second Seminar Presentation

CampusNavigator Google Maps

(data pre-populated)

Page 8: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Mobile Computing Challanges

8 Application Development - Second Seminar Presentation

1.  Heterogeneity of resources •  support devices with and without GPS •  Google Location Service API aggregates sources (cell tower, Wi-

Fi and GPS triangulation)

2.  Limitation of device resources •  only locate while app in focus, saves power

3.  Heterogeneity of software •  compatible for Android 2.3 and all higher

Page 9: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Mobile Computing Challanges

9 Application Development - Second Seminar Presentation

4. Limitation of input devices •  select from list rather than type

Page 10: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Mobile Computing Challanges

10 Application Development - Second Seminar Presentation

5. Heterogeneity of output devices •  Optimize layout for different screen sizes

Small Screen:

i.e. Smartphone

Selection as pop-up Dialog over Map-Fragment

User can show map (closing the Dialog) or navigate (forward to Google Maps)

Page 11: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Mobile Computing Challanges

11 Application Development - Second Seminar Presentation

5. Heterogeneity of output devices •  Optimize layout for different screen sizes

Large Screen:

i.e. Tablet

Selection- and Map-Fragments next to each other

Button to hide Selection Fragment

Map listens to changes in Selection and adapts automatically

Page 12: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Mobile Computing Challanges

12 Application Development - Second Seminar Presentation

6. Change of screen orientation •  Offer optimized layouts for portrait and landscape mode

portrait

landscape

Page 13: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Adaption & Context

13 Application Development - Second Seminar Presentation

Pre-select closest campus, -> context aware •  Could be further improved, by pre-selecting closest building

Closest campus: TU Dresden

Page 14: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Extensibility

14 Application Development - Second Seminar Presentation

Download campus from web source •  Any organization can make use of CampusNavigator

Download of example AUDI campus

Page 15: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Lessons Learned

1.   Optimizing layouts is tedious!

2.   Last 10% take 90% of the development time!

15 Application Development - Second Seminar Presentation

Page 16: Application Development for Mobile and Ubiquitous ...ts2/admuc/seminar1314/final/gro… · Seminar Task Final Presentation . Campus Navigator - Agenda 1. Recap: CampusNavigator 2

Thank you!

You can download CampusNavigator…

16 Application Development - Second Seminar Presentation

http://fridgelike.com/admuc/CampusNavigator.apk