Refine Interactive | Mobile App Development | Mobile App Design
Mobile App Development
-
Upload
sasa-kovacevic -
Category
Documents
-
view
20 -
download
0
Transcript of Mobile App Development
MOBILEAPPDEVELOPMENT
MOBILE
MOBILEAPP
MOBILEAPPDEVELOPMENT
INMINUTES
INMINUTESOR LESS
ANDA FEW SLIDES
Note: Some slides were removed as this presentation was initially made for internal use and more info was shared.
MICROSOFT
MICROSOFTGOOGLE
MICROSOFTGOOGLEAPPLE
RECOMMENDWEB TECHNOLOGIESAND CUSTOM UI/UX
IN FACTTOP APPS IN 2014SELECTED BY APPLE
ALL FOLLOW THISRECOMMENDATION
ALL FOLLOW THISRECOMMENDATION
ALL FOLLOW THISRECOMMENDATION
ALL FOLLOW THISRECOMMENDATION
ALL FOLLOW THISRECOMMENDATION
SOHTML, CSS, JS & C#IS WHAT WE USED
MAKINGOUR CODESIMPLE
MAKINGOUR CODEREUSABLE
MAKINGOUR CODEFUTURE PROOF
CONSIDER ATYPICAL APPWE MADE
VISUAL STUDIOSOLUTION(USING XAMARIN)CONSISTS OF…
Note: Some info censored from the screenshots as this presentation was initially made for internal use and more info was shared.
AN ANDROIDPROJECTHAVING ONLYANDROID SPECIFICCODE
AN iOSPROJECTHAVING ONLYiOS CODE
UNIVERSALLY SHAREDPROJECTWITH THE CODE SHAREDBETWEENANDROIDAND iOS APPS
WEB SERVICEPROJECTWITH THEAPICODE CALLED FROMTHE MOBILE APPS
DB ACCESS PROJECTUSINGENTITY FRAMEWORKTO ACCESSTHE DATABASEUSED BY THEWEB SERVICE
SHARED MODELSPROJECTWITH ONLY THEPOCO MODELSUSED BY BOTH THE WEB SERVICE ANDTHE MOBILE APPS
LINES OF C# CODENOT REUSABLEBETWEEN MOBILE APPS
ALL C# CODE(EXCEPT 460 LINES)IS THE SAME
ALL JS CODEIS THE SAME
ALL CSS SCRIPTSARE THE SAME
ALL IMAGESARE THE SAME
SO WHAT ARETHE DIFFERENCES
IMPORTING LIBRARIES
IMPORTING LIBRARIESINITIALIZING VIEWS
IMPORTING LIBRARIESINITIALIZING VIEWS
PREFERENCES / STATE
IMPORTING LIBRARIESINITIALIZING VIEWSLOCALIZATION
PREFERENCES / STATE
IMPORTING LIBRARIESINITIALIZING VIEWSLOCALIZATION
WEB SERVICE ACCESS
PREFERENCES / STATE
IMPORTING LIBRARIESINITIALIZING VIEWSLOCALIZATION
WEB SERVICE ACCESS
PREFERENCES / STATE
LOCATION
protected override voidOnCreate (…)
// set view from the "main“ layout resource
// use sub classed WebViewClient tointercept hybrid native calls
// read preferences// localization// detect the language on the phone
// render the view
// load the rendered HTMLinto the view with a baseURL that points to the rootof the bundled Assets folder
private static LocalizationModelGetLocalizedStrings(...Resources r)
// read strings
// accessing services
private static ……() {}
public class HybridWebViewClient :WebViewClient{ public override void OnPageFinished (WebView view, String url) {} public override bool ShouldOverrideUrlLoading (WebView webView, string url) {
// if the URL is not our own custom scheme, just let the webView load the URL as usual
// this handler will treat everything between the protocol and "?" as the method name. the query string has all of the parameters.
// save state}
// INFO simply read these two variableswhen you need them
static string latitude = "0";static string longitude = "0";
protected override void OnPause() {// stop sending location updates whenthe application goes into the background}
// OnResume gets called every time theactivity starts, so we'll put ourRequestLocationUpdates code here
protected override void OnResume() {// initialize location manager// this will determine the best providerat application launch.// once the provide has been set itwill stay the same until the next timethis method is called}
// from ILocationListenerpublic void OnLocationChanged(Location location) {}
public void OnProviderDisabled(string provider) {// INFO location disabled by the user}
public void OnProviderEnabled(string provider) {// INFO location enabled by the user}
public void OnStatusChanged(string provider, Availability status,Bundle extras) {// INFO location availability changed}
public override void OnBackPressed() {}
// handle specific hardware navigation
HARDWARE& SOFTWARE
VISUAL STUDIOXAMARIN
ANDROID & iOS DEVICESPHONES AND TABLETS
WINDOWS PCSMACS
ANDROID EMULATORSiOS EMULATOR
THANK YOU!
THANK YOU!ANY QUESTIONS?