SlideShare a Scribd company logo
1 of 35
Mobile Web Development with Yahoo! Blueprint Alfred Lo Oct 2009
Agenda ,[object Object],[object Object],[object Object]
Introduction to Blueprint
The Problem - Device Fragmentation Multiple brands – multiple phone models Multiple operating systems Different screen resolutions Different memory capabilities Providing the best user experience is not easy
Browser Grades Apple iPhone, HTC Dream HTML4/5, CSS, Javascript, unlimited A (Hero) Motorola q9, Samsung T919 HTML4, CSS, 50KB page A Blackberry Curve 8310, Nokia N70 XHTML, CSS, 30KB page B Nokia 3110c, SonyEricsson W200a XHTML, 30KB page C Nokia 6085, Motorola RAZR vc XHTML, 16KB page D Samsung R450, Motorola i576 XHTML, 9KB page E Motorola RAZR v3, Nokia 2610 XHTML, no images, 9KB page F Nokia 3510i, Motorola i355 WML-only, not supported by Blueprint X Examples Definition Grade
Where are we now?
Device Quirks Examples ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Blueprint Mobile Platform Open Simple Maximum Reach Free!
Blueprint Language ,[object Object],[object Object],[object Object],[object Object]
Blueprint is simple <page style=&quot;collection&quot;> <content> <module> <header layout=&quot;simple&quot;> <layout-items> <block  class=&quot;title&quot;>Greeting</block> </layout-items> </header> <block>Hello World!</block> </module> </content> </page>
Even for some more complex presentation <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <page style=&quot;collection&quot;> <page-header> <title-bar> <title>Restaurants</title> <commands> <ui-command> <title>Home</title><load event=&quot;activate&quot; resource=&quot;#&quot;/> </ui-command> </commands> </title-bar> </page-header> <content> <module class=&quot;featured&quot;> <header> <layout-items><block class=&quot;title&quot;>Featured Restaurant</block></layout-items> </header> <placard layout=&quot;card&quot;> <layout-items> <image size=&quot;xx-large&quot; resource=&quot;widget:bp11examples/images/Thai_Seafood_Curry.jpg&quot; caption=&quot;Seafood curry&quot;/> <block><rating><stars>4</stars><reviews>21</reviews></rating></block> <block class=&quot;title&quot;><strong>Bangkok Thai</strong></block> <block><span class=&quot;description&quot;>725 Clinton Ave, Berkeley, CA 94704</span></block> <block class=&quot;subtext&quot;>Every curry paste is made from scratch, say Bangkok Thai's owners: Peels are extracted from  expensive fresh kaffir limes, which are blended in secret combination with...  <inline-trigger><label>read more...</label><load event=&quot;activate&quot; resource=&quot;#&quot;/></inline-trigger></block> </layout-items> </placard> </module> </content> <page-footer><block class=&quot;small&quot; halign=&quot;right&quot;>Copyright Shmarranabab inc.</block></page-footer> </page>
You Code Once, We Optimize for Thousands Sony Ericsson W810i iPhone Blackberry 8800  Palm Treo 650
Mobile Widgets using Blueprint and many more … Yahoo! Applications 3 rd  Party Applications
Site Examples ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Mobile Widgets  Development Process
[object Object],Building Mobile Widget 1 Download the Blueprint SDK
[object Object],[object Object],[object Object],[object Object],Building Mobile Widget 1 Download the Blueprint SDK
Building Mobile Widget Blueprint Platform Widget  Submission Application Package Widget Request Widget Content HTTP Request Blueprint (XML) Your  Web Server 1 2 1. Create static/dynamic pages to return Blueprint 2. Create your application package and submit 2 Develop your widget
Building Mobile Widget Your  Web Server 1 Blueprint (XML) Blueprint (XML) Server Code Example <page> <content> <module> <header layout=&quot;simple&quot;> <layout-items> <block>Greeting</block> </layout-items> </header> <block>Hello World!</block> </module> </content> </page>
Building Mobile Widget Blueprint platform Your Server Mobile Phone User opens Widget Request entry point HTTP request to Widget publisher URI specified in config.xml Blueprint page returned Includes Content-Type header;  may include cache-control headers;  may include cookies Widget content returned (Cookies stored on Blueprint platform) User requests new data HTTP request … Request new content Data flow
Building Mobile Widget Interfacing with Blueprint platform Content Types: Content-Type: application/x-blueprint+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 Blueprint platform 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
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Building Mobile Widget 3 Package your widget
Building Mobile Widget <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <config xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns=&quot;http://mobile.yahoo.com/widgets/schema/1.0/config/&quot; xsi:schemaLocation=&quot;...&quot;> <title>Hello World!</title> <version>1.0</version> <identifier>hello-world-1</identifier> <description>My Hello World! Widget</description> <icon>ybang</icon>  <author organization=&quot;Yahoo! Inc&quot; href=&quot;http://www.yahoo.com&quot; email=&quot;alfredlo@yahoo-inc.com&quot;> Alfred Lo </author> <!-- change this widget base to your server url --> <widget base=&quot;http://yourserver.com/HelloWorld/&quot;> <preview> <icon>ybang</icon>  <label>Hello World!</label> </preview> <shortcuts> <item default=&quot;true&quot;> <label>Y! Mobile</label> <href>test.php</href>  </item> </shortcuts> </widget> </config> Application Package (config.xml) - Example
Building Mobile Widget <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <gallery xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns=&quot;http://mobile.yahoo.com/widgets/schema/1.0/gallery/&quot; xsi:schemaLocation=&quot;...&quot;> <description lang=&quot;en&quot;>TW Hack 2009</description> <tags><!-- Use tags which identify your widget to other users --> <tag>Yahoo!</tag> <tag>Mobile</tag> <tag>widget</tag> <tag>development</tag> </tags> <languages><!-- Use languages your widget supports --> <lang>en-US</lang> <lang>en-UK</lang> </languages> </gallery> Application Package (gallery.xml) - Example
Building Mobile Widget HelloWorld/resources/images Application Package (Image Files) - Example
[object Object],[object Object],[object Object],[object Object],Building Mobile Widget 4 Upload your mobile widget
Building Mobile Widget 4 Upload your mobile widget
Building Mobile Widget 5 When you go back to “My Blueprint Apps”, your widget will appear under “Sites in Development” You can test your widget by going to the link under “Test Site”,  http://devtest-<yahooid>-<widgetid>.bpapps.com/ Test your mobile widget
[object Object],[object Object],[object Object],[object Object],[object Object],Building Mobile Widget 6 Publish your mobile widget
Widgets development process Summary 1 2 3 4 5 6 Download the Blueprint SDK Develop your widget Package your widget Upload your mobile widget Test your mobile widget Publish your mobile widget
Blueprint Control Examples <module> <placard> <module> <image-list> < table > < map >
More than Markup Transcoding ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Yahoo! Web Analytics (for selected partners) Online tool provides usage information for your service Know your Unique devices, Page views, and more…
5 Reasons to use Blueprint 1 2 3 4 5 Rapid development – time to market Over 4000+ supported devices Great looking – optimized experience  Open and cross platform Rich and growing feature set
References ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

More Related Content

More from JH Lee

2009 Tw Oh Wretch Api
2009 Tw Oh Wretch Api2009 Tw Oh Wretch Api
2009 Tw Oh Wretch ApiJH Lee
 
Yql V8
Yql V8Yql V8
Yql V8JH Lee
 
Erikeldridge Yos V9
Erikeldridge Yos V9Erikeldridge Yos V9
Erikeldridge Yos V9JH Lee
 
TWOHD_Search Monkey
TWOHD_Search MonkeyTWOHD_Search Monkey
TWOHD_Search MonkeyJH Lee
 
TWOHD_Wretch API
TWOHD_Wretch APITWOHD_Wretch API
TWOHD_Wretch APIJH Lee
 
TWOHD_K+ API
TWOHD_K+ APITWOHD_K+ API
TWOHD_K+ APIJH Lee
 
TWOHD_Blueprint
TWOHD_BlueprintTWOHD_Blueprint
TWOHD_BlueprintJH Lee
 

More from JH Lee (7)

2009 Tw Oh Wretch Api
2009 Tw Oh Wretch Api2009 Tw Oh Wretch Api
2009 Tw Oh Wretch Api
 
Yql V8
Yql V8Yql V8
Yql V8
 
Erikeldridge Yos V9
Erikeldridge Yos V9Erikeldridge Yos V9
Erikeldridge Yos V9
 
TWOHD_Search Monkey
TWOHD_Search MonkeyTWOHD_Search Monkey
TWOHD_Search Monkey
 
TWOHD_Wretch API
TWOHD_Wretch APITWOHD_Wretch API
TWOHD_Wretch API
 
TWOHD_K+ API
TWOHD_K+ APITWOHD_K+ API
TWOHD_K+ API
 
TWOHD_Blueprint
TWOHD_BlueprintTWOHD_Blueprint
TWOHD_Blueprint
 

Recently uploaded

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
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 WorkerThousandEyes
 
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 organizationRadu Cotescu
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
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.pdfhans926745
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
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 DevelopmentsTrustArc
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
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 Takeoffsammart93
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 

Recently uploaded (20)

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
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
 
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
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
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
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
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
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
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
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 

Tw Open Hack Blueprint

  • 1. Mobile Web Development with Yahoo! Blueprint Alfred Lo Oct 2009
  • 2.
  • 4. The Problem - Device Fragmentation Multiple brands – multiple phone models Multiple operating systems Different screen resolutions Different memory capabilities Providing the best user experience is not easy
  • 5. Browser Grades Apple iPhone, HTC Dream HTML4/5, CSS, Javascript, unlimited A (Hero) Motorola q9, Samsung T919 HTML4, CSS, 50KB page A Blackberry Curve 8310, Nokia N70 XHTML, CSS, 30KB page B Nokia 3110c, SonyEricsson W200a XHTML, 30KB page C Nokia 6085, Motorola RAZR vc XHTML, 16KB page D Samsung R450, Motorola i576 XHTML, 9KB page E Motorola RAZR v3, Nokia 2610 XHTML, no images, 9KB page F Nokia 3510i, Motorola i355 WML-only, not supported by Blueprint X Examples Definition Grade
  • 7.
  • 8. Blueprint Mobile Platform Open Simple Maximum Reach Free!
  • 9.
  • 10. Blueprint is simple <page style=&quot;collection&quot;> <content> <module> <header layout=&quot;simple&quot;> <layout-items> <block class=&quot;title&quot;>Greeting</block> </layout-items> </header> <block>Hello World!</block> </module> </content> </page>
  • 11. Even for some more complex presentation <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <page style=&quot;collection&quot;> <page-header> <title-bar> <title>Restaurants</title> <commands> <ui-command> <title>Home</title><load event=&quot;activate&quot; resource=&quot;#&quot;/> </ui-command> </commands> </title-bar> </page-header> <content> <module class=&quot;featured&quot;> <header> <layout-items><block class=&quot;title&quot;>Featured Restaurant</block></layout-items> </header> <placard layout=&quot;card&quot;> <layout-items> <image size=&quot;xx-large&quot; resource=&quot;widget:bp11examples/images/Thai_Seafood_Curry.jpg&quot; caption=&quot;Seafood curry&quot;/> <block><rating><stars>4</stars><reviews>21</reviews></rating></block> <block class=&quot;title&quot;><strong>Bangkok Thai</strong></block> <block><span class=&quot;description&quot;>725 Clinton Ave, Berkeley, CA 94704</span></block> <block class=&quot;subtext&quot;>Every curry paste is made from scratch, say Bangkok Thai's owners: Peels are extracted from expensive fresh kaffir limes, which are blended in secret combination with... <inline-trigger><label>read more...</label><load event=&quot;activate&quot; resource=&quot;#&quot;/></inline-trigger></block> </layout-items> </placard> </module> </content> <page-footer><block class=&quot;small&quot; halign=&quot;right&quot;>Copyright Shmarranabab inc.</block></page-footer> </page>
  • 12. You Code Once, We Optimize for Thousands Sony Ericsson W810i iPhone Blackberry 8800 Palm Treo 650
  • 13. Mobile Widgets using Blueprint and many more … Yahoo! Applications 3 rd Party Applications
  • 14.
  • 15. Mobile Widgets Development Process
  • 16.
  • 17.
  • 18. Building Mobile Widget Blueprint Platform Widget Submission Application Package Widget Request Widget Content HTTP Request Blueprint (XML) Your Web Server 1 2 1. Create static/dynamic pages to return Blueprint 2. Create your application package and submit 2 Develop your widget
  • 19. Building Mobile Widget Your Web Server 1 Blueprint (XML) Blueprint (XML) Server Code Example <page> <content> <module> <header layout=&quot;simple&quot;> <layout-items> <block>Greeting</block> </layout-items> </header> <block>Hello World!</block> </module> </content> </page>
  • 20. Building Mobile Widget Blueprint platform Your Server Mobile Phone User opens Widget Request entry point HTTP request to Widget publisher URI specified in config.xml Blueprint page returned Includes Content-Type header; may include cache-control headers; may include cookies Widget content returned (Cookies stored on Blueprint platform) User requests new data HTTP request … Request new content Data flow
  • 21. Building Mobile Widget Interfacing with Blueprint platform Content Types: Content-Type: application/x-blueprint+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 Blueprint platform 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
  • 22.
  • 23. Building Mobile Widget <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <config xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns=&quot;http://mobile.yahoo.com/widgets/schema/1.0/config/&quot; xsi:schemaLocation=&quot;...&quot;> <title>Hello World!</title> <version>1.0</version> <identifier>hello-world-1</identifier> <description>My Hello World! Widget</description> <icon>ybang</icon> <author organization=&quot;Yahoo! Inc&quot; href=&quot;http://www.yahoo.com&quot; email=&quot;alfredlo@yahoo-inc.com&quot;> Alfred Lo </author> <!-- change this widget base to your server url --> <widget base=&quot;http://yourserver.com/HelloWorld/&quot;> <preview> <icon>ybang</icon> <label>Hello World!</label> </preview> <shortcuts> <item default=&quot;true&quot;> <label>Y! Mobile</label> <href>test.php</href> </item> </shortcuts> </widget> </config> Application Package (config.xml) - Example
  • 24. Building Mobile Widget <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <gallery xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns=&quot;http://mobile.yahoo.com/widgets/schema/1.0/gallery/&quot; xsi:schemaLocation=&quot;...&quot;> <description lang=&quot;en&quot;>TW Hack 2009</description> <tags><!-- Use tags which identify your widget to other users --> <tag>Yahoo!</tag> <tag>Mobile</tag> <tag>widget</tag> <tag>development</tag> </tags> <languages><!-- Use languages your widget supports --> <lang>en-US</lang> <lang>en-UK</lang> </languages> </gallery> Application Package (gallery.xml) - Example
  • 25. Building Mobile Widget HelloWorld/resources/images Application Package (Image Files) - Example
  • 26.
  • 27. Building Mobile Widget 4 Upload your mobile widget
  • 28. Building Mobile Widget 5 When you go back to “My Blueprint Apps”, your widget will appear under “Sites in Development” You can test your widget by going to the link under “Test Site”, http://devtest-<yahooid>-<widgetid>.bpapps.com/ Test your mobile widget
  • 29.
  • 30. Widgets development process Summary 1 2 3 4 5 6 Download the Blueprint SDK Develop your widget Package your widget Upload your mobile widget Test your mobile widget Publish your mobile widget
  • 31. Blueprint Control Examples <module> <placard> <module> <image-list> < table > < map >
  • 32.
  • 33. Yahoo! Web Analytics (for selected partners) Online tool provides usage information for your service Know your Unique devices, Page views, and more…
  • 34. 5 Reasons to use Blueprint 1 2 3 4 5 Rapid development – time to market Over 4000+ supported devices Great looking – optimized experience Open and cross platform Rich and growing feature set
  • 35.