Mobile Web Development with Thom Robbins Microsoft Corporation.

Slides:



Advertisements
Similar presentations
Web Forms and ASP.NET Programming Right from the Start with Visual Basic.NET 1/e 12.
Advertisements

Step By Step Mobile Web Applications Lester Madden Developer Consultant Microsoft EMEA.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Visual Studio.NET 2003 을 이용한 Mobile ASP.NET 활용 방안 ㈜한국마이크로소프트 기술 사업부 과장 현재환
web controls  standard controls  validation controls  rich controls.
Web Development Using ASP.NET CA – 240 Kashif Jalal Welcome to week – 3-1 of…
J2ME Prepared by: - Gaery- Ronny - Alan- Andy. Why Technology for Mobile Devices? The nature of wireless devices is changing Old devices: All the software.
Create Windows ® Applications with.NET Allan Knudsen.NET Developer Evangelist Microsoft.
V1.00 © 2009 Research In Motion Limited Introduction to Mobile Device Web Development Trainer name Date.
MBL 390: Developing Mobile Web Application with ASP.NET Mobile Controls Gökşin Bakir CSA Yage Ltd.
Chapter 12 Extending Web Applications. ASP.NET 2.0, Third Edition2.
Introduction to ASP.Net ISYS 350. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection of.
1 An Introduction to Visual Basic Objectives Explain the history of programming languages Define the terminology used in object-oriented programming.
Developing International Applications for Mobile Devices with.NET Achim Ruopp International Program Manager Microsoft Corporation.
Developing an ASP.NET Application and using the Mobile Internet Toolkit Bart Vande Ghinste Developer Consultant Microsoft Belux.
Punit Shah Technical Lead | Microsoft
ASP.NET Programming with C# and SQL Server First Edition
Web Forms. Agenda Web forms Web controls Code separation Dynamic compilation System.Web.UI.Page User controls.
ASP.Net, Web Forms and Web Controls 1 Outline Introduction Simple HTTP Transaction System Architecture Creating and Running a Simple Web Form Example Web.
Friday, August 28, 2015 Beginning Mobile.NET Umer Faruq (3D Business Solutions) Mohammad Faridi (faridianslip)
Introduction to.Net and ASP.Net Course Introduction Build Your Own ASP.Net Website: Chapter 1 Microsoft ASP.Net Walkthrough: Creating a Basic Web Forms.
Chapter 4 Dreamweaver: Part II The Web Warrior Guide to Web Design Technologies.
Tutorial: Introduction to ASP.NET Internet Technologies and Web Application 4 th February 2010.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
Database-Driven Web Sites, Second Edition1 Chapter 8 Processing ASP.NET Web Forms and Working With Server Controls.
1 Presented by Bikash Shrestha. 2 What is ASP.NET or ASP+? ASP.NET/ASP+ is a programming framework built on the common language runtime that can be used.
Dr. Azeddine Chikh IS444: Modern tools for applications development.
Object-Oriented Application Development Using VB.NET 1 Chapter 12 Web Forms, HTML, and ASP.NET.
HTML, GUI, ASP.NET Rina Zviel-Girshin Lecture 2
Overview of Previous Lesson(s) Over View  Server controls are small building blocks of the graphical user interface, which includes  Text boxes  Buttons.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
Overview of Previous Lesson(s) Over View  ASP.NET Pages  Modular in nature and divided into the core sections  Page directives  Code Section  Page.
ASP.NET  ASP.NET is a web development platform, which provides a programming model, a comprehensive software infrastructure and various services required.
Beginning Web Site Development Module 1 – Dynamic Web Site Development Fundamentals of building dynamic Web sites with ASP.NET 2.0 and C# Version.
Programming with Microsoft Visual Basic 2012 Chapter 12: Web Applications.
Web Development Using ASP.NET CA – 240 Kashif Jalal Welcome to week – 4-1 of…
CNIT 133 Interactive Web Pags – JavaScript and AJAX JavaScript Environment.
Chapter 9 Programming with Web Forms Programming In Visual Basic.NET.
Web Programming: Client/Server Applications Server sends the web pages to the client. –built into Visual Studio for development purposes Client displays.
ASP.NET Web Server Controls Basic Web Server Controls.
Web Controls Chapter-7. Page  2 Synopsis  Stepping Up to Web controls  Basic Web control classes  Web control classes  Web control Base class  Units,
Tutorial 121 Creating a New Web Forms Page You will find that creating Web Forms is similar to creating traditional Windows applications in Visual Basic.
Introduction to ASP.NET 1www.tech.findforinfo.com.
Microsoft Visual Basic 2005 CHAPTER 7 Creating Web Applications.
Introducing ASP.NET 2.0. Internet Technologies WWW Architecture Web Server Client Server Request Response Network HTTP TCP/IP PC/Mac/Unix + Browser (IE,
Create Windows ® Applications with.NET Carlotta Eaton ( Associate Professor of IST New River Community College Slides by Microsoft.
Database Handling, Sessions, and AJAX. Post Back ASP.NET Functionality The IsPostBack method in ASP.NET is similar to the BlackBerry.refresh method –IsPostBack.
Things like Textboxes, Lables, ‘n’at. ASPX page is not HTML Controls are rendered into markup that a browser can understand Some controls are rendered.
Module 4: Creating a Microsoft ASP.NET Web Form. Overview Creating Web Forms Using Server Controls.
Module 1: Getting Started. Introduction to.NET and the.NET Framework Exploring Visual Studio.NET Creating a Windows Application Project Overview Use Visual.
Module 2: Using Microsoft Visual Studio.NET. Overview Overview of Visual Studio.NET Creating an ASP.NET Web Application Project.
Building Mobile Web Applications With ASP.NET Mike Pelton Developer & Platform Group Microsoft Ltd.
Week Developing Web Applications 12. Programming for the Web A Web Application Runs on a Web Server and Presents Its Content to the User Across a Network,
Building.NET Mobile Applications Mike Pelton Developer & Platform Group Microsoft Ltd.
BlackBerry Applications using Microsoft Visual Studio and Database Handling.
ASP.NET (Active Server Page) SNU OOPSLA Lab. October 2005.
MBL 305 ASP.NET Mobile Controls: Best Practices Gökşin Bakir CSA Yage Ltd. Microsoft Regional Director.
Introduction to HTML. _______________________________________________________________________________________________________________ 2 Outline Key issues.
Module 10: Data Access in ASP.NET. Overview Overview of the ASP.NET Data Access What is Data Access List of Data Source Control What is Data Bound How.
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
Part of the Microsoft.NET Framework 3.0 Tomer Shamam.NET Technologies Expert Sela Group
1 Introducing Web Developer Tools Rapid application development tools ASP.NET-compatible web editors –Visual Studio.NET Professional Edition –Visual Studio.
Developing Mobile Web Applications With ASP.NET Mobile Controls
Module 1: Getting Started
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
ASP.NET.
Web Development Using ASP .NET
Windows Forms in Visual Studio 2005: An in-depth look at key features
Presentation transcript:

Mobile Web Development with Thom Robbins Microsoft Corporation

Mobile application scenarios Mobile application approaches Building mobile Web applications ASP.NET Class Libraries Customization & Extensibility Agenda

Mobile Application Approaches Overview XML Web services

Multi-device applications too difficult Different form factors Different form factors Different device capabilities Different device capabilities Different Web standards Different Web standards Local Code Mobile Web Pages Mobile Application Approaches Traditional Challenges Device Operating System Mobile Web Browser Very little skill reuse Different platforms Different platforms Different APIs Different APIs Different languages Different languages

Mobile Application Approaches Architectural Advantages Offline functionality Local execution Local data Rich user experience Multimedia Elaborate UI Integration with assets on the device Credit card readers Barcode scanners GPS receivers Telephony/messaging Adaptive rendering Dynamic support for many device/browser combinations Support for low-end browser devices Single code base Simplified maintenance Natural extension to existing Web sites Server-side execution No client deployment No client execution Advantages of mobile Web apps Advantages of smart device apps

Mobile Application Approaches Microsoft Mobile Development Local Code Mobile Web Pages Device Operating System Mobile Web Browser ASP.NET Mobile Controls.NET Compact Framework Smart Device Programmability

ASP.NET Mobile Controls Integrates with Visual Studio.NET for ease of use.NET Framework Services Framework ASP.NET Common Language Runtime System Services Windows Forms &.NET Compact Framework BaseDataDebug … Web Forms Mobile Web Forms Web Services Extends ASP.NET for mobile Web applications Targets multiple devices and mark- up languages

Building Mobile Web Applications Visual Studio and ASP.NET Mobile Controls Common Language Runtime Base Class Libraries ADO.NET and XML ASP.NET Web Forms WebServicesWindowsForms Visual Basic C++C#J#… Visual Studio.NET Mobile Web Programmability Integrated IDE Integrated IDE Visual design and debugging Visual design and debugging Simple integration with data and XML Simple integration with data and XML ASP.NET Mobile Controls Feature of ASP.NET Feature of ASP.NET Adaptive rendering for device properties Adaptive rendering for device properties Uses full.NET Framework Uses full.NET Framework

Device Support – 200+ Devices ACCESS Compact: NetFront 2.0, Fujitsu F503i, Mitsubishi D502i, Mitsubishi D503i, NEC N210i, NEC N502i, Sony SO503i Ericsson 2.0: Ericsson R380, Ericsson R320, Ericsson R520m, Ericsson T20s GoAmerica Go.Web: Compaq iPAQ H3650, Palm Vx, RIM Blackberry 857, RIM Blackberry 950, RIM Blackberry 957, Microsoft Mobile Explorer: Sony CMD-Z5, Sony CMD-J5, Benefon Q, Microsoft Pocket Internet Explorer: Casio Cassiopeia E-125, Compaq iPAQ H3630, Compaq iPAQ H3650, HP Jornada 720, Compaq iPAQ H3670 Nokia: Nokia 3330, Nokia 6210, Nokia 7110, Nokia 9110i Openwave UP.Browser 3.x: Audiovox CDM-9000, Ericsson R280LX, Hitachi C407H, Kyocera QCP 2035A, Kyocera QCP 3035, LG V111, Mitsubishi T250, Motorola StarTAC 7868W, Motorola TimePort P8767, Samsung SCH-6100, Samsung SCH-850, Samsung SCH-8500, Samsung UpRoar M100, Sanyo C401SA, Sanyo SCP-4500, Sanyo SCP-5000, Sprint Touchpoint, Sprint Touchpoint 2200, Sprint Touchpoint 3000 Openwave UP.Browser 4.x: Alcatel One Touch 701, Audiovox CDM-135, Audiovox CDM-9100, Motorola i1000plus, Motorola i2000plus, Motorola i50sx, Motorola i85s, Motorola T2288, Motorola TimePort P7382i, Motorola TimePort P7389, Motorola V100, Motorola V120c, Motorola V2288, Motorola V60c, Siemens C35i, Siemens S35i, Siemens SL45 Miscellaneous Browsers: Handspring Visor Platinum (Qualcomm Eudora Internet Suite 2.1; Blazer 1.0 and Omnisky ), IBM WorkPad c505 (ilinx Xiino 1.01J), Kyocera QCP 6035 (Qualcomm Eudora 2.0), Nokia 9210 (Symbian Crystal 6.0), Palm VII (MyPalm 1.0), Palm Vx (AU-Systems and Omnisky ), Palm m505 (MyPalm 1.1), Panasonic P210i, Panasonic P502i, Sharp J-SH04 (Original Equipment Manufacturer's Version 3.0), Sharp Zaurus MI-E1 (Original Equipment Manufacturer's Version 6.1), Sony CLIE PEG-N700C (ilinz Palmscape 4.0SJ), Toshiba J-T05 (Original Equipment Manufacturer's Version 3.0),

NameSpaceSystem.Web.UI.MobileControls NameSpaceSystem.Web.UI PageSystem.Web.UI.Page Namespace Hierarchy Web Forms Mobile Web Forms Desktop Server Controls ControlSystem.Web.UI.Control Mobile Page System.Web.UI.MobileControls.MobilePage Mobile Server Controls Mobile Control System.Web.UI.MobileControls.MobileControl

Mobile Web Form Hello, Mobile World </mobile:Label></mobile:Form> Hello, World </Form> Web Form

Key Concepts Adaptive rendering Mobile controls and device adapters automatically generate an appropriate rendering for each device Customization Programmatic model to customize the rendering for a particular device Control extensibility Ability to create new mobile controls, user controls, inheritance controls, composite controls, and direct control

Building Mobile Web Applications The Adaptive Rendering Process 1. HTTP request 2. ASP.NET processing 3. ASP.NET result 4. Adaptive response Returned as proper browser protocol HTML HTML cHTML cHTML WML WML XHTML XHTML Render ASPX page Process page Process page Each control builds its own layout Each control builds its own layout Discover device capabilities Height and width Height and width Color Color Images Images Phone call ability Phone call ability

ASP.NET Mobile Controls MobileControl StyleSheet TextControl TextView ValidationSummary AdRotator Calendar PagedControl SelectionList Panel Image Link Label Command PhoneCall BaseValidator Form ObjectList List TextBox RequiredFieldValidator RegularExpressionValidator RangeValidator CustomValidator CompareValidator Containers

Container Controls Form control Separately addressable container for controls that can be navigated Multiple forms per page Rendered as one or more “screens” based on target device Only one active form at a time (default first form or set via Active Form) Panel control Provides grouping for multiple controls Single control for displaying, hiding enabling or disabling a set of controls Applying styles to panel that are inherited by child controls Can be placeholder for dynamically created controls

ASP.NET Mobile Controls Mobile Control Style Sheet TextControl TextView ValidationSummary Ad Rotator Calendar PagedControl Selection List Panel Image Link Label Command Call BaseValidator Form ObjectList List TextBox RequiredFieldValidator RegularExpressionValidator RangeValidator CustomValidator CompareValidator Text display

Text Display Controls Label control Small amount of content – read only text TextBox control Single-line input text boxes TextView control Exclusive to MMIT Large fields of text Small set of mark-up: Bold, italics, page break, paragraph, anchor tag Support pagination

ASP.NET Mobile Controls MobileControl StyleSheet TextControl TextView ValidationSummary Ad Rotator Calendar PagedControl Selection List Panel Image Link Label Command Call BaseValidator Form ObjectList List TextBox RequiredFieldValidator RegularExpressionValidator RangeValidator CustomValidator CompareValidator List and selection

List And Selection List ListSelectionListObjectList DataboundOptional Required PaginationYesNoYes DecorationNone, Bulleted, Numbered Dropdown, ListBox, Radio Button, CheckBox, MultiSelect Only with Customization InteractiveOptionalYesOptional Similar ASP.NET Control DatalistListBox, CheckBox, CheckBoxList, RadioButton, RadioButtonList, & DropDownList Datagrid

ASP.NET Mobile Controls MobileControl StyleSheet TextControl TextView ValidationSummary Ad Rotator Calendar PagedControl Selection List Panel Image Link Label Command PhoneCall BaseValidator Form ObjectList List TextBox RequiredFieldValidator RegularExpressionValidator RangeValidator CustomValidator CompareValidator Control transfer

Control Transfer Controls Link control Text-based hyperlink to another form on the mobile page or any URL Softkey Property Similar HyperLink Control in ASP.NET PhoneCall control Exclusive to MMIT Generates mark-up for automatically calling or displaying phone numbers <mobile:Link id="lnkfrmResults" runat="server" NavigateUrl="#frmResults">Go to Results NavigateUrl="#frmResults">Go to Results

Control Transfer Controls Command control Like button control in ASP.NET Way to invoke ASP.NET event handlers from UI elements SoftkeyLabel Property - Specify text for Softkey on supporting mobile phones <mobile:Command id="cmdSelectProduct" runat="server“ softkeylabel=“Next”>Select Product softkeylabel=“Next”>Select Product

ASP.NET Mobile Controls MobileControl StyleSheet TextControl TextView ValidationSummary Ad Rotator Calendar PagedControl Selection List Panel Image Link Label Command PhoneCall BaseValidator Form ObjectList List TextBox RequiredFieldValidator RegularExpressionValidator RangeValidator CustomValidator CompareValidator Image display

ASP.NET Mobile Controls MobileControl StyleSheet TextControl TextView ValidationSummary Ad Rotator Calendar PagedControl Selection List Panel Image Link Label Command PhoneCall BaseValidator Form ObjectList List TextBox RequiredFieldValidator RegularExpressionValidator RangeValidator CustomValidator CompareValidator Calendar

ASP.NET Mobile Controls MobileControl StyleSheet TextControl TextView ValidationSummary Ad Rotator Calendar PagedControl Selection List Panel Image Link Label Command PhoneCall BaseValidator Form ObjectList List TextBox RequiredFieldValidator RegularExpressionValidator RangeValidator CustomValidator CompareValidator Validation

IIS.NET Framework Mobile Internet Toolkit Development Environment Production Create mobile Web Form Integrate Business Logic MobilePresentation Layer (controls) Layer (controls) Test Target Devices Post to Web Servers HTTPRequestDeviceCapabilities Mobile Controls and Device Adapters generate display Add Device Adapters Update Device Capabilities HTTPResponse Mobile.aspxPages Device Extensibility

Reasons To Customize Optimize the generated rendering Per device or class of device Used on a per application basis Control the exact display Ability to override default behavior

Customization Development ChallengeSolutions Consistent appearance for the application Style Sheet Optimize the Rendering or behavior of a control for a device class Mobile Capabilities and Property Overrides Change the default rendering behavior for a device class Templates and adapter extensibility

How To Customize Use a StyleSheet Define a filter Specify control behavior/rendering Property Override Generic template (e.g., ObjectList item)

Customization Device specific templates - ObjectList ObjectList Control HeaderTemplate Item Template AlternateItemTemplate FooterTemplate SeparatorTemplate Pocket PC Customization Cell Phone Limited Customization ItemDetailsTemplate

Control Extensibility Encapsulate or reuse application functionality Create a consistent site appearance Extend existing control Create new control Similar to ASP.NET control extensibility

Extensibility Control types User control Reuse common User Interface functionality across an application Declarative Custom controls Inheritance control Extends existing mobile Web Form controls Composite control Group multiple mobile controls Direct control Create new mobile control in an assembly Adapter for this control is required

Summary The ASP.NET Mobile Controls… Makes it easy to build mobile Web applications for cell phones, PDAs, and pagers Integrate with Visual Studio.NET and the.NET Framework (ASP.NET) Anyone can add new controls or new device support