mobile development w/ mono
DESCRIPTION
Mobile Development w/ MONO . By: Chad W. Stoker (MCTS, MCP, MCAD) President & Chief Technology Officer Bryan E. Paslay ( MCTS, MCP) Senior Consultant. MONO explained What is the CLR? F#, VB.NET, Iron Python, COBOL.NET, C# Android explained OS Default coding language Default IDE - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/1.jpg)
Mobile Development w/ MONO
By: Chad W. Stoker (MCTS, MCP, MCAD)President & Chief Technology Officer
Bryan E. Paslay (MCTS, MCP)Senior Consultant
![Page 2: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/2.jpg)
Intro to Mono for Android
MONO explained◦What is the CLR?◦F#, VB.NET, Iron Python,
COBOL.NET, C#Android explained
◦OS◦Default coding language◦Default IDE
MONO for Android◦Visual Studio◦Emulators◦Deployment
![Page 3: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/3.jpg)
Android Versions
2.3 and Below◦Gingerbread (Phone OS)
3.x◦Homeycomb◦Tablet
4.x ◦Ice Cream Sandwich◦Basically 3.x applied to phones
As of Nov 2011 98% of devices are 2.3 and below◦86% are 2.3 and 2.2
Use API levels 9 and 10 cover Version 2.3
![Page 4: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/4.jpg)
Benefits of Mono for Android
Base Class Library ◦Easy and familiar for .Net developers◦Language features like Lambdas, Events, LINQ,
etc…
VS2010
Not daunting for .Net developers to get started
![Page 5: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/5.jpg)
MONO Solution Structure
Android Manifest Debug settings Folder structures in projects
◦Resources Drawable Layout Values
◦Assets◦Views (code-behind)◦Adding Folders and how they are represented
![Page 6: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/6.jpg)
Activity
What is an Activity◦Basically it is a screen◦It is not an application◦Should do a single function◦Can navigate between activities in the same
app or different apps using Intents
![Page 7: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/7.jpg)
Activity Life Cycle
![Page 8: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/8.jpg)
Hello World (MONO Android style)
Demonstrate Activity1.cs
Show how the entry-point to any App works.
Show how to add ‘View’ controls to an existing view.
Show how to update the Resource.id enumeration list
Discuss the emulator and debugging
![Page 9: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/9.jpg)
Learning about basics in Mono
How to add additional “Views” (Layout.axml)
How to add and navigate to additional Activities◦Actually launching an Intent
Understand how/why Views can be synonymous with the term “Control”.
How to work with application-level constants.
![Page 10: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/10.jpg)
Activities and Intents
What is an Intent◦Way apps leverage other apps functionality◦Pass Intent Filter and Android OS looks for an
intent that meet the need◦Can Pass Extras and Get back data
Launching an “intent” ◦Texting somebody from an app◦Emailing ◦Taking a picture
![Page 11: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/11.jpg)
Android Preferences
What is a Preference?
Preference Types◦ CheckBox◦ Ringtone – build in selector for ease of use◦ EditText◦ List◦ Switch◦ Dialog◦ Category – visual divider◦ Screen
Create a Preference
![Page 12: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/12.jpg)
Android Menus
Types of Menus◦Options◦Context◦Sub
Create a Option Menu
![Page 13: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/13.jpg)
Android Dialogs
Types Of Dialogs◦Alert◦Progress◦Custom◦Data and Time Picker
Create Alert Dialog
![Page 14: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/14.jpg)
Implementing List Views
List views described
List Adapters explained◦Data-binding
![Page 15: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/15.jpg)
SQLite interface
Create SQLite DB
Insert / Query data
Set Up Linq to SQLite
Bind Data From Database
Sqlite-net
![Page 16: Mobile Development w/ MONO](https://reader035.vdocuments.net/reader035/viewer/2022062814/56816857550346895dde7d7d/html5/thumbnails/16.jpg)
Deploying APK’s to phones
Project Properties and MONO tabs
The importance of the “signed” versus “un-signed” APK’s.
Walking through the installation processhttp://xamarin.com/monoforandroid