CONNECTED LIFE YAHOO! CONFIDENTIAL | 1 Yahoo! Blueprint Platform CL Asia Team August 2008.

Slides:



Advertisements
Similar presentations
How to Author MIRC Teaching File Documents. MIRC M edical I maging R esource C enter.
Advertisements

HTML Forms. collect information for passing to server- side processes built up from standard widgets –text-input, radio buttons, check boxes, option lists,
WEB DESIGN TABLES, PAGE LAYOUT AND FORMS. Page Layout Page Layout is an important part of web design Why do you think your page layout is important?
A really fairly simple guide to: mobile browser-based application development (part 1) Chris Greenhalgh G54UBI / Chris Greenhalgh
The Client-Server Model for the Web 1. A Web Client (usually in the form of a web browser) makes an HTTP request to a specific web server. 2. The Web Server.
CPSC 203 Introduction to Computers Tutorial 59 & 64 By Jie (Jeff) Gao.
© by Pearson Education, Inc. All Rights Reserved.
CONNECTED LIFE / Y! MOBILE Yahoo! Blueprint Platform A Developer’s Overview Open Hack Day.
Chapter 1 Getting Started With Dreamweaver. Explore the Dreamweaver Workspace The Dreamweaver workspace is where you can find all the tools to create.
Introduction to AppInventor Dr. José M. Reyes Álamo.
The Internet & The World Wide Web Notes
 jQuery Mobile An Introduction. What is jQuery Mobile  A framework built on top of jQuery, used for creating mobile web applications  Designed to make.
CPSC 203 Introduction to Computers Lab 39, 40 By Jie (Jeff) Gao.
1 Web Developer & Design Foundations with XHTML Chapter 6 Key Concepts.
Android Boot Camp for Developers Using Java, Comprehensive: A Guide to Creating Your First Android Apps Chapter 9: Customize! Navigating with a Master/Detail.
WaveMaker Visual AJAX Studio 4.0 Training Studio Overview.
Reading Data in Web Pages tMyn1 Reading Data in Web Pages A very common application of PHP is to have an HTML form gather information from a website's.
Lesson 13: Building Web Forms Introduction to Adobe Dreamweaver CS6 Adobe Certified Associate: Web Communication using Adobe Dreamweaver CS6.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Chapter 5: Investigate! Lists, Arrays, and Web Browsers.
Chapter 5 Java Script And Forms JavaScript, Third Edition.
INTRODUCTION TO FRONTPAGE. TOPICS TO BE DISCUSSED……….  Introduction Introduction  Features Features  Starting Front Page Starting Front Page  Components.
Tutorial 1 Getting Started with Adobe Dreamweaver CS3
Chapter 6 The World Wide Web. Web Pages Each page is an interactive multimedia publication It can include: text, graphics, music and videos Pages are.
Android Boot Camp for Developers Using Java, Comprehensive: A Guide to Creating Your First Android Apps Chapter 5: Investigate! Android Lists, Arrays,
Web Development Using ASP.NET CA – 240 Kashif Jalal Welcome to week – 4-1 of…
10 Adding Interactivity to a Web Site Section 10.1 Define scripting Summarize interactivity design guidelines Identify scripting languages Compare common.
Copyright © 2008 Pearson Prentice Hall. All rights reserved. 1 Exploring Microsoft Office Word 2007 Chapter 8 Word and the Internet Robert Grauer, Keith.
Creating a Web Site to Gather Data and Conduct Research.
V0.1 BlackBerry HTML5/WebWorks Applications for the BlackBerry ® PlayBook™ Tablet BlackBerry Academic Program Module 5 - Writing HTML5/WebWorks API Extensions.
Simplifying Mobile Development with Yahoo! Blueprint Ricardo Varela
Tutorial 7 Creating Forms. Objectives Session 7.1 – Create an HTML form – Insert fields for text – Add labels for form elements – Create radio buttons.
Chapter 8 Browsing and Searching the Web. Browsing and Searching the Web FAQs: – What’s a Web page? – What’s a URL? – How does a browser work? – How do.
JavaScript, Fourth Edition Chapter 5 Validating Form Data with JavaScript.
 2008 Pearson Education, Inc. All rights reserved Introduction to XHTML.
Peter Laird. | 1 Building Dynamic Google Gadgets in Java Peter Laird Managing Architect WebLogic Portal BEA Systems.
XHTML 1.1  Derived from Standard Generalized Markup Language (SGML) of ISO  XHTML concerned primary with content rather than presentation and style 
CSC 2720 Building Web Applications Server-side Scripting with PHP.
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part. Android Boot Camp.
Ali Alshowaish. What is HTML? HTML stands for Hyper Text Markup Language Specifically created to make World Wide Web pages Web authoring software language.
USING WORDPRESS TO CREATE A WEBSITE (RATHER THAN A BLOG) STEP-BY-STEP INSTRUCTIONS.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
Chapter 1 Getting Started With Dreamweaver. Exploring the Dreamweaver Workspace The Dreamweaver workspace is where you can find all the tools to create.
BlackBerry Applications using Microsoft Visual Studio and Database Handling.
IS-907 Java EE World Wide Web - Overview. World Wide Web - History Tim Berners-Lee, CERN, 1990 Enable researchers to share information: Remote Access.
How to Build an IT Portal with Oracle Application Server Allan L Haensgen Senior Principal Instructor Oracle Corporation Session id:
Microsoft ® Official Course Structuring and Publishing Websites for All Users Microsoft SharePoint 2013 SharePoint Practice.
Web Design and Development. World Wide Web  World Wide Web (WWW or W3), collection of globally distributed text and multimedia documents and files 
January 2006Colby College ITS Setting Up Course Pages.
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
HTML Forms.
Chapter 27 Getting “Web-ified” (Web Applications) Clearly Visual Basic: Programming with Visual Basic nd Edition.
PHP Form Processing * referenced from
Internet & World Wide Web How to Program, 5/e Copyright © Pearson, Inc All Rights Reserved.
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part. Android Boot Camp.
Creating a Google Site For a Digital Portfolio Purpose.
HTML Tutorial. What is HTML HTML is a markup language for describing web documents (web pages) HTML documents are described by HTML tags Each HTML tag.
Sitecore Basic Training Drexel’s full-featured web content management system (CMS) Web Support Information Resources & Technology (IRT)
Sitecore Basic Training Drexel’s full-featured web content management system (CMS) Web Support Information Resources & Technology (IRT)
Sitecore Basic Training Content Management System (CMS) University Communications Web Services
16 Copyright © 2004, Oracle. All rights reserved. Building ADF UIX View Components.
Getting Started with HTML
Section 10.1 Define scripting
Chapter 5 Validating Form Data with JavaScript
Project 1 Introduction to HTML.
Weebly Elements, Continued
Basic XHTML Tables XHTML tables—a frequently used feature that organizes data into rows and columns. Tables are defined with the table element. Table.
Teaching slides Chapter 6.
Introduction to AppInventor
ASSETS, SNIPPETS & COMPONENTS
Presentation transcript:

CONNECTED LIFE YAHOO! CONFIDENTIAL | 1 Yahoo! Blueprint Platform CL Asia Team August 2008

CONNECTED LIFE Agenda  Introduction  Widgets development process  Blueprint Language – deeper dive  Step-by-Step tutorial

CONNECTED LIFE Building Mobile Applications Multiple brands – Multiple phone modelsMultiple Operating SystemsDifferent screen resolutionsDifferent memory capabilities

CONNECTED LIFE Blueprint coverage Coverage SymbianJava MEXHTMLBlueprint Technology iPhoneAndroid

CONNECTED LIFE Yahoo! Blueprint Platform Mobile Widgets  Mobile Widgets Mobile Widgets are mini-applications designed to deliver the ideal Internet experience for your phone. Widget Gallery Editor Picks MTV AsiaMovies Yahoo! Cricket

CONNECTED LIFE Yahoo! Blueprint Platform Blueprint  Is an XML markup set based partly on XForms  Is a purely declarative language – includes no scripting or procedural code  Enforces a strict, highly abstracted user- interface model  Incorporates cutting edge features like - location-based services - maps - SSL - tables The MySpace Mobile Widget built on Yahoo!

CONNECTED LIFE Blueprint Mobile Platform Open PlatformEasy to MobilizeMaximum ReachFree!

CONNECTED LIFE Write once, run it across multiple devices, platforms and operating systems 2 ways for user to access your widget Yahoo! Go 3.0 Downloadable Java app Yahoo! Mobile Homepage Covers 270+ phone models 2+ Million active users / per month Customized rendering for iPhone, HTML and xHTML browsers 28+ Million active users / per month

CONNECTED LIFE Available Now Yahoo! Go 3 and Yahoo’s new beta Frontpage is available –Australia –India –Indonesia –Malaysia –Philippines –Singapore –Thailand –Vietnam 70+ Live Widgets

CONNECTED LIFE Building Mobile Widgets What Do I Need? Any web-ServerUse any scripting languageUse any existing publishing toolsReturn Blueprint!

CONNECTED LIFE YAHOO! CONFIDENTIAL | 11 Widgets Development Process

CONNECTED LIFE Building Mobile Widget  Download the Blueprint SDK 1

CONNECTED LIFE Blueprint SDK includes  Blueprint Documentation  XML Schema definitions  Templates to get started  Mobile Widget Sample Code  PHP helper class (blueprint.php) Building Mobile Widget Download the Blueprint SDK 1

CONNECTED LIFE Develop your widget Building Mobile Widget Yahoo! Server Widget Submission Application Package Widget Request Widget Content HTTP Request Blueprint (XML) Your Web Server Create static/dynamic pages to return Blueprint 3. Create your application package and submit 2

CONNECTED LIFE Building Mobile Widget Yahoo! ServerYour Server Mobile Phone User opens Widget Request entry point HTTP request to Widget publisher URI specified in config.xml Includes language and location headers Blueprint page returned Includes Content-Type header; may include cache-control headers; may include cookies for Widget publisher Widget content returned (Cookies stored on Yahoo! server) User requests new data HTTP request … Request new content Data flow

CONNECTED LIFE Building Mobile Widget Interfacing with Yahoo! Servers Content Types: Content-Type: application/x-ywidget+xml Content-Type: application/x-ysnippet+xml Use only the UTF-8 character set. Using Cookies: Your server can set/retrieve cookies exactly as if you are serving HTML instead of Blueprint markup. The cookies are stored on Yahoo! servers Cache Control: Wherever possible, Blueprint pages are cached on the user’s device. To control caching, use the following standard HTTP headers when serving pages: Cache-Control, ETag, and If-None-Match. Only these headers affect caching

CONNECTED LIFE Building Mobile Widget Interfacing with Yahoo! Servers Internationalization and Localization: When Yahoo! Mobile application server sends a page request, the request may contain several HTTP headers, including: Accept-Language RFC 4646/4647 language code (Example: Accept-Language: en-US) Geo-Country ISO 3166 country or UN M.49 region code (Example: Geo-Country: CA) You can use the information in the headers to decide what content to return.

CONNECTED LIFE Application Package is a zip file containing  config.xml  Application metadata, including the URL for your web server  gallery.xml  Information for the widget gallery  Image Files  Includes icons and screen shots (for the gallery)  locale-specific resources  Menu items for launching widget (Optional) Package your widget Building Mobile Widget 3

CONNECTED LIFE  –Package the widget files into a zip archive –Upload the.zip file Upload your mobile widget Building Mobile Widget 4

CONNECTED LIFE 1. Yahoo! Go Emulator: (Note: External links won’t work) Test your mobile widget Building Mobile Widget 2. Yahoo! Mobile Front-page (Note: GPS and cell-ID won’t work on desktop browser) 5

CONNECTED LIFE  –Please test your widget before publishing –It may take 1 week for the approval process Publish your mobile widget Building Mobile Widget 6

CONNECTED LIFE Widgets development process Summary Download the Blueprint SDK 1 Develop your widget 2 Package your widget 3 Upload your mobile widget 4 Test your mobile widget 5 Publish your mobile widget 6

CONNECTED LIFE YAHOO! CONFIDENTIAL | 23 Blueprint Language

CONNECTED LIFE UI Elements Overview of the Blueprint Language ContainersControlsInline elements Containers are Grouping elements. They contain containers as well as controls and inline elements Controls presents content to the user and allow data input. They contain other controls as well as inline elements Inline elements contain text, references, or simple presentation constructs. Non UI Elements includes Form-support components EventsActions

CONNECTED LIFE UI Elements: Containers Overview of the Blueprint Language pageA single screen in a widget. Includes a content element, which contains at least one module contentA wrapper for the display elements within a Widget page. Contains modules moduleContains blocks, controls and nested modules blockContains inline data (text, images, spans) Greeting Hello World! Hello World! Widget Example Note: Please check Blueprint documentation to know about all the other constructs

CONNECTED LIFE Widget Structure Overview of the Blueprint Language (Exactly one) (Zero or one) (Zero or more) (Text) (One or more) (Zero or more)

CONNECTED LIFE UI Elements: Controls Overview of the Blueprint Language page-headerA title (with an optional icon) for a page My Widget Greeting Hello World! Page Header Blueprint (XML)

CONNECTED LIFE UI Elements: Controls Overview of the Blueprint Language headerA title (with an optional icon) for a module My Widget Greeting Hello World! Header for module Blueprint (XML)

CONNECTED LIFE UI Elements: Controls Overview of the Blueprint Language placardProvides flexible predefined layouts using blocks and images … … Capricorn Dec 22 - Jan 19 … Placard with image, text and sub-text Blueprint (XML)

CONNECTED LIFE UI Elements: Controls Overview of the Blueprint Language triggerA button or clickable label Greeting Hello World! Click Me Use Trigger or Submit to create a button Blueprint (XML)

CONNECTED LIFE UI Elements: Controls Overview of the Blueprint Language OptionA choosable item that usually appears on a main menu Delete Reply More … Blueprint (XML)

CONNECTED LIFE UI Elements: Controls Overview of the Blueprint Language navigation-barA navigation bar with next/back buttons … Back to Inbox Prev Next Blueprint (XML)

CONNECTED LIFE Forms, Events and Actions Overview of the Blueprint Language InputA single line edit box for data entry... … Name: Get Quotes Input

CONNECTED LIFE YAHOO! CONFIDENTIAL | 34 Step by Step Tutorial Building a “Hello World” widget

CONNECTED LIFE Building a “Hello World” widget Yahoo! Server Widget Submission Application Package Widget Request Widget Content HTTP Request Blueprint (XML) Your Web Server 2 2. Write static/dynamic pages to return Blueprint Develop your widget 2

CONNECTED LIFE Server (Using PHP 5.2 and above) Building a “Hello World” widget Your Web Server 2 <?php header( "Content-Type: application/x-ywidget+xml" ); header( "Cache-Control: no-cache" ); require_once( "lib/blueprint.php" ); blueprintSetErrorHandler(); $writer = new XMLWriter(); $writer->openMemory(); $writer->setIndent( true ); // Create Page and Section nodes $page = new Blueprint_Page(); $module = new Blueprint_Module(); $page->addContent( $module ); // Add main content block $module->addContent( new Blueprint_Block( "Hello World!" ) ); $module->setHeader ( "Greeting" ); // Write everything to memory buffer $page->Emit( $writer ); // Return buffer & flush print( $writer->outputMemory() ); ?>

CONNECTED LIFE Server (Using PHP 5.2 and above) Building a “Hello World” widget Your Web Server 2 Greeting Hello World! Blueprint (XML)

CONNECTED LIFE Package your application Building a “Hello World” widget Yahoo! Server Widget Submission Application Package Widget Request Widget Content HTTP Request Blueprint (XML) Your Web Server 3 3. Create your application package and submit 3

CONNECTED LIFE Application Package (config.xml) Building a “Hello World” widget Hello World! 1.0 hello-world-1 My Hello World! Widget ybang <author organization="Yahoo! Inc" href=" Prashant Kirtane ybang Hello World! Y! Mobile test.php Widget Submission 3 Yahoo! Server Application Package

CONNECTED LIFE Application Package (gallery.xml) Building a “Hello World” widget Hello World! Widget Yahoo! Mobile widget development en-US en-UK Widget Submission 3 Yahoo! Server Application Package

CONNECTED LIFE Application Package (HelloWorld/resources/images) Building a “Hello World” widget Widget Submission 3 Yahoo! Server Application Package

CONNECTED LIFE  –Package the widget files into a zip archive –Upload the.zip file Upload your mobile widget “HelloWorld.zip” Building a “Hello World” widget 4

CONNECTED LIFE Test your mobile “HelloWorld” widget Building a “Hello World” widget Yahoo! Mobile Front-page Hello World! WidgetMy Widget pagehttp://beta.m.yahoo.com 5

CONNECTED LIFE 開始動手作一個你自己的手機 Widget 用 BluePrint 作手機 Widget 很容易吧 ! 快動手試試看: 下載 Blueprint SDK 在 PC 瀏覽器或手機上開發及測試你的服務 上傳你的 widget ,分享你的服務 BluePrint 開發者的討論區: elopers/ elopers/