SlideShare a Scribd company logo
1 of 33
Angelo Coccettini – September 2013
The Ostia Antica Park is one of the largest and most important archaeological
sites of ancient Rome. With its fifty hectares, its buildings and its streets, it
testifies the development of a large urban and commercial center during the
imperial age. Ostia was the most important port of the antiquity, the gate of
Rome on the Mediterranean sea.
This document describes the development of an archeological guide for Android
devices.
At the time of the writing these Apps are the only digital guides of Ostia Antica
for Android devices.
An Archaeological Guide for Android devices
Angelo Coccettini – September 2013
An Archaeological Guide for Android devices
The main menu of the app for Android smartphone and tablets
Angelo Coccettini – September 2013
Specifications
• 3 Languages: english, french and italian selectable within the App
• 4 layouts with different color scheme selectable withing the App
• Listview architecture for small smartphone
• Master detail architecture for large smartphone and tablets
• Unified application for Android marketplace
• Content in HTML
• Picture Gallery
• Suggestion of three different itineraries
• Monuments geolocalization
• Custom Artwork
• Zoom full screen for images
• Rotation support
Angelo Coccettini – September 2013
Application Architecture
The app uses a unified interface that adapts to screen resolution. This has been
implemented using Android Configuration Qualifiers
Angelo Coccettini – September 2013
Application Architecture for Tablets
For large Smartphones or Tablet the application uses the Landscape mode in
Master/Detail configuration. On the left side of the screen a Listview displays the
items, while the detail of the selected item is displayed on the Right side of the
screen.
Angelo Coccettini – September 2013
Layouts
The application offers 4 different layouts for a optimal contrast in darkness or
strong lightning. The layouts can be switched directly from the interface.
Black Elegance Modern Touch Pompei Style Roman Era
Angelo Coccettini – September 2013
Layout Implementation
Layout have been implemented using the Android Theme functionality. The
Theme allows developers to customize any elements of the interface and even to
change the Theme runtime. The theme definition is stored in the file theme.xml
located in the values folder.
Each theme define, for a given
property name (e.g. textColor) a
different value stored in the
styles.xml file. So, if the
Theme.Black_Elegance is
selected, the textColor point to
the value defined in
textColor_be stored in the file
styles.xml
Angelo Coccettini – September 2013
Layout Implementation
Angelo Coccettini – September 2013
Custom HTML Tags
The app uses standard HTML to display content. Nevertheless, we want to
intercept the click event to allow zooming images in a different Activity. This can
be done by enabling the JavaScript execution for the webview.
The jsInterface is an instance of JavaScriptInterface, a custom class that can be
used to define the methods that can be called via javascript.
Angelo Coccettini – September 2013
Custom HTML Tags
In this class we find the method showImage that take a String argument as
parameter.
Angelo Coccettini – September 2013
Custom HTML Tags
In the HTML we can now define a Javascript function as follow. When the
webview encountrer a javascript call to JSIntefacte, Android will dispatch the
request to the Java method showImage of the class JavaScriptInterface.
<script type="text/javascript">
function showImage(image) {
JSInterface.showImage(image);
}
</script>
Angelo Coccettini – September 2013
Custom Image Tag
This snipplet displays a img tag using a call to the Javascript linked to the class
JavaScriptInterface. This tag display an image in the HTML code. When the user
click on the image, the event is intercepted by the Javascript function
showImage that in turn calls JSInterface.showImage(image), passing the control
to the java method showImage(String image) in the class JavaScriptInterface.
<img align='right' onClick="showImage(‘overview_from_necropolis_h.jpg')"
class='imgright' src=‘overview_from_necropolis_l.jpg'/>
Angelo Coccettini – September 2013
Languages
The application offers the possibility to switch instantly between English, French
and Italian. The language switching impacts the contents as well every element
of the application interface.
Angelo Coccettini – September 2013
Itineraries
The TabBar at the botton of the Site Listview can be used to switch between
three suggested itineraries. The first item of the list describes the itinerary, while
the second item will show a map with the monuments that you select. It is
possible to zoom the map for a better viewing.
Angelo Coccettini – September 2013
Navigation
Disclosure indicator.
When this element is
present, users know they
can tap anywhere in the
row to see the next level
in the hierarchy or the
choices associated with
the list item.
Detail disclosure button.
Users tap this element to
see detailed information
about the list item.
Angelo Coccettini – September 2013
Menu Ostia Antica
It describes the Archaeological Park of Ostia Antica, the ancient harbour of Rome
Angelo Coccettini – September 2013
Menu Information
It gives access a submenu with useful information about the Archaeological Park
Angelo Coccettini – September 2013
Menu History
It describes the history of Ostia, from the origins till IX century A.D.
Angelo Coccettini – September 2013
Menu ‘The Site’
It gives access to the description and images of the monuments of the site. It can
be used also to select the monument based on the 3 itineraries. Each monument
has 3 submenus to display text, images and geographic location.
Angelo Coccettini – September 2013
Menu ‘The Site’
The view Pictures lists all the Computer Graphics Reconstruction of the
monument.
Angelo Coccettini – September 2013
Menu ‘The Site’
Google Map is used to display the geographic location of the monument of
interest.
Angelo Coccettini – September 2013
Menu Gallery
This view offers a categorized list of all Computer Graphic Reconstructions of the
town of Ostia
Angelo Coccettini – September 2013
Menu Options
It is used to select the layout type and the language of the application.
Angelo Coccettini – September 2013
Menu Acknowledgements
Display info on the team that has worked for this version of the application
Angelo Coccettini – September 2013
Options
The language selection is indipendent from the device settings. It is possible to
switch between English, French and Italian at runtime. The content and the
interface switch instantly.
Angelo Coccettini – September 2013
Expansion Files
The size of an application for Google Play is 50 MB. After that limits an
application must use Extension Packages to store artwork and resources. Ostia
Antica uses one Expansion Package to store the high resolution version of all
images. HTML and low resolution images are stored in the asset folder.
Angelo Coccettini – September 2013
Virtual Devices
The virtual devices installed with the SDK are too slow. Even when they use the
hardware accelerator , they are quite slow and difficult to manage. In addition,
on these virtual devices, it is not possible to use the Google services hence the
Mapview is not working. In orde to debug Google Maps on virtual devices it is
possible to use Genymotion suite that implements fully functional virtual devices
based on Oracle VM Virtualbox.
http://www.genymotion.com/
Angelo Coccettini – September 2013
Artwork
I have produces all the Artwork of the application. Here some example of
artwork for both applications.
Map tags
Map Pins
Angelo Coccettini – September 2013
Artwork
Interface
Angelo Coccettini – September 2013
Computer Reconstructions
I have reconstructed the whole town with Computer Graphics software:
• LightWave from Newtek
• CityEngine from ESRI
• Poser from SmithMicro
Angelo Coccettini – September 2013
Workflow
HUB
Export Wavefront
OBJ, MTL
PoserFusion
Layout Modeler
Angelo Coccettini – September 2013
Reconstructions
I have modeled the whole town with a uniform level of details. This mean that it
is possible to move the digital camera in any place and to produce high detailed
images. The polygon count of the whole scene (building, actors, props and
stage) is around 15.000.000 of polygons.
Angelo Coccettini – September 2013
Google Play
The Apps are published and available on Google Play
https://play.google.com/store/apps/details?id=com.betasoft.ostia.main&hl=en
angelo.coccettini@gmail.com

More Related Content

Similar to Archeological guide for Android devices

Similar to Archeological guide for Android devices (20)

Portfolio - Lee, Kyungchan / Interaction Architect
Portfolio - Lee, Kyungchan / Interaction ArchitectPortfolio - Lee, Kyungchan / Interaction Architect
Portfolio - Lee, Kyungchan / Interaction Architect
 
CityTimes
CityTimesCityTimes
CityTimes
 
Augmented Reality Application Tutorial for Education 1
Augmented  Reality Application Tutorial for Education 1Augmented  Reality Application Tutorial for Education 1
Augmented Reality Application Tutorial for Education 1
 
Augmented reality
Augmented realityAugmented reality
Augmented reality
 
Nippon lugano multitouch
Nippon lugano multitouchNippon lugano multitouch
Nippon lugano multitouch
 
Material design for android
Material design for androidMaterial design for android
Material design for android
 
Introduction to Material Design
Introduction to Material DesignIntroduction to Material Design
Introduction to Material Design
 
Ball Collecting game report
Ball Collecting game report Ball Collecting game report
Ball Collecting game report
 
2012-09-13_Multiconsult and WSP European Task Force_BIM in infrastructure
2012-09-13_Multiconsult and WSP European Task Force_BIM in infrastructure2012-09-13_Multiconsult and WSP European Task Force_BIM in infrastructure
2012-09-13_Multiconsult and WSP European Task Force_BIM in infrastructure
 
3D-ICONS- D3 1: Interim Report on Data Acquisition
3D-ICONS- D3 1: Interim Report  on Data Acquisition3D-ICONS- D3 1: Interim Report  on Data Acquisition
3D-ICONS- D3 1: Interim Report on Data Acquisition
 
Walking the Edit Presentation 2013
Walking the Edit Presentation 2013Walking the Edit Presentation 2013
Walking the Edit Presentation 2013
 
Baparekraf Digital Talent Day: Monitoring dan Coaching Penerima Fasilitasi BD...
Baparekraf Digital Talent Day: Monitoring dan Coaching Penerima Fasilitasi BD...Baparekraf Digital Talent Day: Monitoring dan Coaching Penerima Fasilitasi BD...
Baparekraf Digital Talent Day: Monitoring dan Coaching Penerima Fasilitasi BD...
 
User Interface Design COMP 1650
User Interface Design COMP 1650User Interface Design COMP 1650
User Interface Design COMP 1650
 
Tech Trans as Learning
Tech Trans as LearningTech Trans as Learning
Tech Trans as Learning
 
C space-flyer
C space-flyerC space-flyer
C space-flyer
 
DECORATOR PATTERN IN WEB APPLICATION
DECORATOR PATTERN IN WEB APPLICATIONDECORATOR PATTERN IN WEB APPLICATION
DECORATOR PATTERN IN WEB APPLICATION
 
Multiscreen UX Design - Developing for a multitude of devices
Multiscreen UX Design - Developing for a multitude of devices Multiscreen UX Design - Developing for a multitude of devices
Multiscreen UX Design - Developing for a multitude of devices
 
A graphic library and an application for simple curve manipolation
A graphic library and an application for simple curve manipolationA graphic library and an application for simple curve manipolation
A graphic library and an application for simple curve manipolation
 
Wearable Technology for Museums
Wearable Technology for MuseumsWearable Technology for Museums
Wearable Technology for Museums
 
3d from images
3d from images3d from images
3d from images
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Recently uploaded (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 

Archeological guide for Android devices

  • 1. Angelo Coccettini – September 2013 The Ostia Antica Park is one of the largest and most important archaeological sites of ancient Rome. With its fifty hectares, its buildings and its streets, it testifies the development of a large urban and commercial center during the imperial age. Ostia was the most important port of the antiquity, the gate of Rome on the Mediterranean sea. This document describes the development of an archeological guide for Android devices. At the time of the writing these Apps are the only digital guides of Ostia Antica for Android devices. An Archaeological Guide for Android devices
  • 2. Angelo Coccettini – September 2013 An Archaeological Guide for Android devices The main menu of the app for Android smartphone and tablets
  • 3. Angelo Coccettini – September 2013 Specifications • 3 Languages: english, french and italian selectable within the App • 4 layouts with different color scheme selectable withing the App • Listview architecture for small smartphone • Master detail architecture for large smartphone and tablets • Unified application for Android marketplace • Content in HTML • Picture Gallery • Suggestion of three different itineraries • Monuments geolocalization • Custom Artwork • Zoom full screen for images • Rotation support
  • 4. Angelo Coccettini – September 2013 Application Architecture The app uses a unified interface that adapts to screen resolution. This has been implemented using Android Configuration Qualifiers
  • 5. Angelo Coccettini – September 2013 Application Architecture for Tablets For large Smartphones or Tablet the application uses the Landscape mode in Master/Detail configuration. On the left side of the screen a Listview displays the items, while the detail of the selected item is displayed on the Right side of the screen.
  • 6. Angelo Coccettini – September 2013 Layouts The application offers 4 different layouts for a optimal contrast in darkness or strong lightning. The layouts can be switched directly from the interface. Black Elegance Modern Touch Pompei Style Roman Era
  • 7. Angelo Coccettini – September 2013 Layout Implementation Layout have been implemented using the Android Theme functionality. The Theme allows developers to customize any elements of the interface and even to change the Theme runtime. The theme definition is stored in the file theme.xml located in the values folder. Each theme define, for a given property name (e.g. textColor) a different value stored in the styles.xml file. So, if the Theme.Black_Elegance is selected, the textColor point to the value defined in textColor_be stored in the file styles.xml
  • 8. Angelo Coccettini – September 2013 Layout Implementation
  • 9. Angelo Coccettini – September 2013 Custom HTML Tags The app uses standard HTML to display content. Nevertheless, we want to intercept the click event to allow zooming images in a different Activity. This can be done by enabling the JavaScript execution for the webview. The jsInterface is an instance of JavaScriptInterface, a custom class that can be used to define the methods that can be called via javascript.
  • 10. Angelo Coccettini – September 2013 Custom HTML Tags In this class we find the method showImage that take a String argument as parameter.
  • 11. Angelo Coccettini – September 2013 Custom HTML Tags In the HTML we can now define a Javascript function as follow. When the webview encountrer a javascript call to JSIntefacte, Android will dispatch the request to the Java method showImage of the class JavaScriptInterface. <script type="text/javascript"> function showImage(image) { JSInterface.showImage(image); } </script>
  • 12. Angelo Coccettini – September 2013 Custom Image Tag This snipplet displays a img tag using a call to the Javascript linked to the class JavaScriptInterface. This tag display an image in the HTML code. When the user click on the image, the event is intercepted by the Javascript function showImage that in turn calls JSInterface.showImage(image), passing the control to the java method showImage(String image) in the class JavaScriptInterface. <img align='right' onClick="showImage(‘overview_from_necropolis_h.jpg')" class='imgright' src=‘overview_from_necropolis_l.jpg'/>
  • 13. Angelo Coccettini – September 2013 Languages The application offers the possibility to switch instantly between English, French and Italian. The language switching impacts the contents as well every element of the application interface.
  • 14. Angelo Coccettini – September 2013 Itineraries The TabBar at the botton of the Site Listview can be used to switch between three suggested itineraries. The first item of the list describes the itinerary, while the second item will show a map with the monuments that you select. It is possible to zoom the map for a better viewing.
  • 15. Angelo Coccettini – September 2013 Navigation Disclosure indicator. When this element is present, users know they can tap anywhere in the row to see the next level in the hierarchy or the choices associated with the list item. Detail disclosure button. Users tap this element to see detailed information about the list item.
  • 16. Angelo Coccettini – September 2013 Menu Ostia Antica It describes the Archaeological Park of Ostia Antica, the ancient harbour of Rome
  • 17. Angelo Coccettini – September 2013 Menu Information It gives access a submenu with useful information about the Archaeological Park
  • 18. Angelo Coccettini – September 2013 Menu History It describes the history of Ostia, from the origins till IX century A.D.
  • 19. Angelo Coccettini – September 2013 Menu ‘The Site’ It gives access to the description and images of the monuments of the site. It can be used also to select the monument based on the 3 itineraries. Each monument has 3 submenus to display text, images and geographic location.
  • 20. Angelo Coccettini – September 2013 Menu ‘The Site’ The view Pictures lists all the Computer Graphics Reconstruction of the monument.
  • 21. Angelo Coccettini – September 2013 Menu ‘The Site’ Google Map is used to display the geographic location of the monument of interest.
  • 22. Angelo Coccettini – September 2013 Menu Gallery This view offers a categorized list of all Computer Graphic Reconstructions of the town of Ostia
  • 23. Angelo Coccettini – September 2013 Menu Options It is used to select the layout type and the language of the application.
  • 24. Angelo Coccettini – September 2013 Menu Acknowledgements Display info on the team that has worked for this version of the application
  • 25. Angelo Coccettini – September 2013 Options The language selection is indipendent from the device settings. It is possible to switch between English, French and Italian at runtime. The content and the interface switch instantly.
  • 26. Angelo Coccettini – September 2013 Expansion Files The size of an application for Google Play is 50 MB. After that limits an application must use Extension Packages to store artwork and resources. Ostia Antica uses one Expansion Package to store the high resolution version of all images. HTML and low resolution images are stored in the asset folder.
  • 27. Angelo Coccettini – September 2013 Virtual Devices The virtual devices installed with the SDK are too slow. Even when they use the hardware accelerator , they are quite slow and difficult to manage. In addition, on these virtual devices, it is not possible to use the Google services hence the Mapview is not working. In orde to debug Google Maps on virtual devices it is possible to use Genymotion suite that implements fully functional virtual devices based on Oracle VM Virtualbox. http://www.genymotion.com/
  • 28. Angelo Coccettini – September 2013 Artwork I have produces all the Artwork of the application. Here some example of artwork for both applications. Map tags Map Pins
  • 29. Angelo Coccettini – September 2013 Artwork Interface
  • 30. Angelo Coccettini – September 2013 Computer Reconstructions I have reconstructed the whole town with Computer Graphics software: • LightWave from Newtek • CityEngine from ESRI • Poser from SmithMicro
  • 31. Angelo Coccettini – September 2013 Workflow HUB Export Wavefront OBJ, MTL PoserFusion Layout Modeler
  • 32. Angelo Coccettini – September 2013 Reconstructions I have modeled the whole town with a uniform level of details. This mean that it is possible to move the digital camera in any place and to produce high detailed images. The polygon count of the whole scene (building, actors, props and stage) is around 15.000.000 of polygons.
  • 33. Angelo Coccettini – September 2013 Google Play The Apps are published and available on Google Play https://play.google.com/store/apps/details?id=com.betasoft.ostia.main&hl=en angelo.coccettini@gmail.com