<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>BlackBerry Developer Blog &#187; Widgets</title>
	<atom:link href="http://devblog.blackberry.com/tag/widgets/feed/" rel="self" type="application/rss+xml" />
	<link>http://devblog.blackberry.com</link>
	<description></description>
	<lastBuildDate>Fri, 24 May 2013 15:08:31 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='devblog.blackberry.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/9ef0a66c09615fa946c4179662398878?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>BlackBerry Developer Blog &#187; Widgets</title>
		<link>http://devblog.blackberry.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://devblog.blackberry.com/osd.xml" title="BlackBerry Developer Blog" />
	<atom:link rel='hub' href='http://devblog.blackberry.com/?pushpress=hub'/>
		<item>
		<title>The Next-Generation BlackBerry App Platform: A Sneak Peek at what we’ll be unveiling and showcasing at BlackBerry DEVCON 2010</title>
		<link>http://devblog.blackberry.com/2010/09/devcon-2010-sneak-peek/</link>
		<comments>http://devblog.blackberry.com/2010/09/devcon-2010-sneak-peek/#comments</comments>
		<pubDate>Thu, 16 Sep 2010 10:17:41 +0000</pubDate>
		<dc:creator>Mike Kirkup</dc:creator>
				<category><![CDATA[Dev Con]]></category>
		<category><![CDATA[apps]]></category>
		<category><![CDATA[Widgets]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=2309</guid>
		<description><![CDATA[BlackBerry® DEVCON 2010 is coming up fast - check out this post for a sneak peek at what announcements will be made and what will be revealed!<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=2309&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><img src="http://rimdevblog.files.wordpress.com/2010/09/devcon2010_bw_black_bkgd_horiz_date.jpg?w=484&#038;h=232" alt="" title="DEVCON 2010" width="484" height="232" class="aligncenter size-full wp-image-2304" /></p>
<p><a href="http://www.blackberrydevcon.com/?CPID=DEVDC10" target="_new" title="BlackBerry® DEVCON 2010">BlackBerry® DEVCON 2010</a> is just around the corner and we’re getting a lot of questions around what we’re going to unveil at the show. As with previous years, DEVCON 2010 will be a showcase of new technologies and tools for developers, and you can expect a number of exciting announcements on new and future products that are designed to help our developer community be successful and profitable.</p>
<p>This year you, our attendees, will not only be the first to hear our announcements, but we will have dedicated break-out sessions with live demos and deep dives on all of the new announcements, so you can see them firsthand and get your questions answered! We can’t share all the news yet, but here’s a sneak peek at some of the new technologies and services that you can expect to hear about at BlackBerry DEVCON 2010 on September 27th-30th in San Francisco, California:</p>
<p><span id="more-2309"></span></p>
<p><strong>(1)	Taking Social to a Whole New Level: New Social Apps Platform for Developers</strong></p>
<p>Last year we unveiled the BlackBerry Push Service and opened it up to developers around the world. The feedback has been hugely positive, and we now see new apps launching every week that take advantage of BlackBerry Push Service. But then someone asked us: “Why can I only push from a server to an app running on a device? Why can’t I push data immediately from device to device like BlackBerry® Messenger does, so my app can engage two mobile users in a truly real-time social experience”? Hmmmmmm…what a great idea! And what if that were expanded into a broader platform for mobile social apps? Sound interesting? We think so. What a great way to take <a href="http://www.blackberry.com/developers/superapps?IID=DEVAPPS03" target="_new" title="Super Apps">Super Apps</a> to the next level!</p>
<p><strong>(2)	Building Commercial Businesses on BlackBerry: New Commerce Services</strong></p>
<p>BlackBerry App World™ 2.0 was a huge step forward in opening up commercial opportunities for our developer community. We added credit card and carrier billing capabilities along with the ability for customers to purchase apps from the desktop storefront. So what’s next? Well, you’ll find out at DEVCON! And you won’t just hear about what’s new &#8211; you’ll get a chance to join detailed break-out sessions with sample code, Q&#038;A and more.</p>
<p><strong>(3)	New Enterprise Integration Services for Enterprise App Developers</strong></p>
<p>We’re so excited about this one that we’re going to wait for DEVCON to unveil what it’s really all about. And really, the live demos will do a much better job of showcasing the power of this new platform than anything we can write in text. So let’s just say this: If you think there is still a huge opportunity out there for mobilizing mission-critical enterprise applications and back-end data stores, but feel that it is still too difficult and costly to manage data replication, client-side app development, back-end authentication and so on &#8211; well, we’re going to have some exciting things to show you! </p>
<p><strong>(4)	Using Web Technologies to Build Apps: (R)evolution of BlackBerry Widgets</strong></p>
<p>The BlackBerry Widget platform enables full-featured apps to be built in web technologies such as HTML and JavaScript. But that was just the beginning! Find out where the BlackBerry Web platform is heading, and how we’re taking the BlackBerry Widget platform to the next level to enable full-featured, highly interactive Super Apps to be built entirely in HTML5. Sound too good to be true? Find out at DEVCON!</p>
<p>And that’s just a start! Come to DEVCON for hands-on experience related to these topics and the other announcements that we have planned. Oh, and did we mention that DEVCON will be your first opportunity to see BlackBerry® OS 6 running on a cross-section of BlackBerry smartphones, including the BlackBerry® Bold™ 9700 smartphone, BlackBerry® Pearl™ 9100 smartphone and more? <a href="http://www.blackberrydevcon.com/register?CPID=DEVDCR01" target="_new">Don’t miss out</a>!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/2309/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/2309/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=2309&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2010/09/devcon-2010-sneak-peek/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/df3fbb85b0186198b2f85e7cd3f0bf1a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mikekir1</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/09/devcon2010_bw_black_bkgd_horiz_date.jpg" medium="image">
			<media:title type="html">DEVCON 2010</media:title>
		</media:content>
	</item>
		<item>
		<title>BlackBerry 6 Browser Developer Documentation</title>
		<link>http://devblog.blackberry.com/2010/08/blackberry-6-browser-developer-documentation/</link>
		<comments>http://devblog.blackberry.com/2010/08/blackberry-6-browser-developer-documentation/#comments</comments>
		<pubDate>Wed, 25 Aug 2010 16:18:25 +0000</pubDate>
		<dc:creator>Adam S.</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[blackberry 6]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[webworks]]></category>
		<category><![CDATA[Widgets]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=2101</guid>
		<description><![CDATA[The BlackBerry® Browser documentation page has been recently updated to include developer manuals and reference guides for the new browser on BlackBerry® 6. Check out the info here!<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=2101&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><img src="http://rimdevblog.files.wordpress.com/2010/08/browser_screen11.jpg?w=360&#038;h=480" alt="" title="BlackBerry® Browser" width="360" height="480" class="aligncenter size-full wp-image-2102" /></p>
<p>The <a href="http://docs.blackberry.com/en/developers/subcategories/?userType=21&amp;category=BlackBerry+Browser" target="_new" title="BlackBerry® Browser documentation page">BlackBerry® Browser documentation page</a> has been recently updated to include developer manuals and reference guides for the new browser on BlackBerry® 6.</p>
<p>The following documents are now online:</p>
<p><span id="more-2101"></span></p>
<ul>
<li><a href="http://docs.blackberry.com/en/developers/deliverables/18169/index.jsp?name=Feature+and+Technical+Overview+-+BlackBerry+Browser6.0&amp;language=English&amp;userType=21&amp;category=BlackBerry+Browser&amp;subCategory=" target="_new" title="Feature and Technical Overview">Feature and Technical Overview</a> – detailed overview of the key features of the browser on BlackBerry 6, as well as the architecture and supported content types of the new web platform.</li>
<li><a href="http://docs.blackberry.com/en/developers/deliverables/18027/index.jsp?name=HTML+Reference+-+BlackBerry+Browser6.0&amp;language=English&amp;userType=21&amp;category=BlackBerry+Browser&amp;subCategory=" target="_new" title="HTML Reference Guide">HTML Reference Guide</a> – includes information about supported HTML elements (including HTML5), attributes and input type modes.</li>
<li><a href="http://docs.blackberry.com/en/developers/deliverables/18446/index.jsp?name=JavaScript+Reference+-+BlackBerry+Browser6.0&amp;language=English&amp;userType=21&amp;category=BlackBerry+Browser&amp;subCategory=" target="_new" title="JavaScript Reference Guide">JavaScript Reference Guide</a> – contains technical details about the various supported JavaScript® APIs, such as Core, Events, Canvas, Geolocation, XmlHTTPRequest, etc.</li>
<li><a href="http://docs.blackberry.com/en/developers/deliverables/18234/index.jsp?name=CSS+Reference+-+BlackBerry+Browser6.0&amp;language=English&amp;userType=21&amp;category=BlackBerry+Browser&amp;subCategory=" target="_new" title="CSS Reference Guide">CSS Reference Guide</a> – a robust guide that organizes the supported CSS properties (including CSS3) into logical categories such as text, tables, backgrounds, etc.</li>
</ul>
<p><img src="http://rimdevblog.files.wordpress.com/2010/08/browser_screen21.jpg?w=360&#038;h=480" alt="" title="BlackBerry Browser" width="360" height="480" class="aligncenter size-full wp-image-2105" /></p>
<p>Please let us know if you find these developer guides helpful, as well as what else you might like to see!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/2101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/2101/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=2101&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2010/08/blackberry-6-browser-developer-documentation/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/16f032fc46b780f6d9fa38b24a7f8ff2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">adamstan1</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/08/browser_screen11.jpg" medium="image">
			<media:title type="html">BlackBerry® Browser</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/08/browser_screen21.jpg" medium="image">
			<media:title type="html">BlackBerry Browser</media:title>
		</media:content>
	</item>
		<item>
		<title>HTML5 Elements for BlackBerry</title>
		<link>http://devblog.blackberry.com/2010/08/blackberry-html5/</link>
		<comments>http://devblog.blackberry.com/2010/08/blackberry-html5/#comments</comments>
		<pubDate>Wed, 18 Aug 2010 12:32:57 +0000</pubDate>
		<dc:creator>Prosanta B.</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[blackberry 6]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[webkit]]></category>
		<category><![CDATA[Widgets]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=2004</guid>
		<description><![CDATA[New HTML5 elements supported in BlackBerry 6 and the BlackBerry Browser.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=2004&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>As I’m sure you’ve heard by now, <a href="http://devblog.blackberry.com/2010/08/developing-new-blackberry-browser/" title="Developing the New BlackBerry Browser">WebKit has come to BlackBerry®</a>!  This is an exciting time not only for the BlackBerry Web Platform, but for web technologies in general.  With the combination of <a href="http://webkit.org" target="_new">WebKit</a> and the new <a href="http://www.w3.org/TR/html5" target="_new">W3C standard for HTML5</a>, web applications are going to become more and more powerful.</p>
<p>Here at Research In Motion® (RIM), we’re incredibly excited about this development. The support of WebKit and HTML5 in <a href="http://devblog.blackberry.com/2010/07/blackberry-6-developers/">BlackBerry® 6</a> &#8211; along with the recent introduction of <a href="http://devblog.blackberry.com/2010/08/blackberry-6-widgets/">BlackBerry® Widgets</a> &#8211; shows the way the platform is changing and growing for web developers looking to make rich, compelling apps that have the same look, feel and features as a native application.</p>
<p>HTML5 contains lots of <a href="http://www.w3schools.com/html5/html5_reference.asp" target="_new">new elements</a> for developers to leverage, including elements to help make web content easier to index and optimize for search engines; elements that enable you to play media in your application; elements that let you take it offline; and a plethora of other features to make your application a thing of beauty.  The BlackBerry implementation of WebKit and HTML5 will be no different &#8211; going forward with the BlackBerry 6 Browser and Widget engines, you’ll be able to leverage all of the same elements that you would for any desktop browsers with virtually no limitations.</p>
<p>These elements include:</p>
<ul>
<li><a href="http://dev.w3.org/html5/spec/Overview.html#the-canvas-element" target="_new">Canvas</a></li>
<li><a href="http://dev.w3.org/html5/spec/Overview.html#parsing" target="_new">Parsing</a></li>
<li><a href="http://dev.w3.org/html5/spec/Overview.html#video" target="_new">Video</a></li>
<li><a href="http://dev.w3.org/html5/spec/Overview.html#audio" target="_new">Audio</a></li>
<li><a href="http://dev.w3.org/html5/spec/Overview.html#forms" target="_new">Forms (partial implementation)</a></li>
<li><a href="http://dev.w3.org/geo/api/spec-source.html" target="_new">Geolocation</a></li>
<li><a href="http://dev.w3.org/html5/workers" target="_new">Workers</a></li>
<li><a href="http://dev.w3.org/html5/spec-author-view/timers.html" target="_new">Timers</a></li>
</ul>
<p>With the added capabilities of HTML5 to the BlackBerry® Browser, web developers will be able to create content that they would have never been able to run through the mobile web before &#8211; compelling games, interactive media, 3D graphics, and the list goes on. HTML5 looks to be an invaluable tool for web developers around the world!</p>
<p>Here’s a few blogs and websites with some examples of the compelling features of HTML5:</p>
<ul>
<li><a href="http://html5demos.com" target="_new">HTML5Demos</a></li>
<li><a href="http://html5gallery.com" target="_new">HTML5Gallery</a></li>
<li><a href="http://www.youtube.com/html5" target="_new">YouTube</a></li>
<li><a href="http://visionwidget.com/showcase/graphics/521-examples-of-fresh-html5-websites.html" target="_new">VisionWidget</a></li>
</ul>
<p>Please feel free to post your HTML5 experiences so far, and share with us how you plan to leverage this exciting new technology!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/2004/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/2004/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=2004&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2010/08/blackberry-html5/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/8721ed983743f63d33e3766566e941df?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Prosanta B.</media:title>
		</media:content>
	</item>
		<item>
		<title>BlackBerry Torch 9800: What Developers Need to Know!</title>
		<link>http://devblog.blackberry.com/2010/08/blackberry-torch-9800/</link>
		<comments>http://devblog.blackberry.com/2010/08/blackberry-torch-9800/#comments</comments>
		<pubDate>Tue, 03 Aug 2010 16:06:17 +0000</pubDate>
		<dc:creator>Mike Kirkup</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[bb6]]></category>
		<category><![CDATA[blackberry 6]]></category>
		<category><![CDATA[blackberry torch]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[sdk]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Widgets]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=1948</guid>
		<description><![CDATA[With the announcement of the new BlackBerry® Torch™ 9800 smartphone comes new opportunities for BlackBerry developers! Read all about them in this blog post.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1948&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><img src="http://rimdevblog.files.wordpress.com/2010/08/blackberry-torch-slider1.jpg?w=600&#038;h=585" alt="" title="BlackBerry Torch 9800" width="600" height="585" class="aligncenter size-full wp-image-1979" /></p>
<p>With the announcement of the new BlackBerry® Torch™ 9800 smartphone today, I wanted to provide an overview of the device from the perspective of the developer, in order to help developers understand what opportunities this new smartphone opens up.</p>
<p>The <a href="http://na.blackberry.com/eng/devices/blackberrytorch/torch_blackberry6.jsp?IID=DEVTBB601" TARGET="_new" title="BlackBerry Torch 9800">BlackBerry Torch 9800</a> smartphone is the first to support BlackBerry® 6, which has been previewed recently on the <a href="http://blogs.blackberry.com/tag/blackberry-6?IID=DEVIBB02" target="_new" title="Inside BlackBerry Blog">Inside BlackBerry Blog</a>. It opens up new opportunities for our developer community, from enhanced Java® applications to game-changing web applications to BlackBerry® Widgets using HTML5 and CSS3.</p>
<p>For Java developers, you can check out our  <a href="http://www.blackberry.com/developers/blackberry6?IID=DEVBB601" target="_new">BlackBerry 6 developer page</a> for more information on the new APIs and to download the new tools needed to get started.  Developers will also be able to download the latest <a href="http://na.blackberry.com/eng/developers/javaappdev/javaupdate.jsp?IID=DEVJAVA01" TARGET="_new" title="BlackBerry Java SDK v6.0">BlackBerry Java SDK v6.0</a> via the Eclipse® update site.</p>
<p><span id="more-1948"></span></p>
<p>Web and BlackBerry® Widget developers can also visit the <a href="http://na.blackberry.com/eng/developers/blackberry6?IID=DEVBB601" target="_new">BlackBerry 6 developer page</a> for more information on the new capabilities.  All of the existing web development tools on BlackBerry® smartphones will work with BlackBerry 6, but you will want to download the latest simulator to check out your <a href="http://www.blackberry.com/developers/torch" TARGET="_new">new HTML5 content</a>.</p>
<p>To coincide with the major enhancements to the BlackBerry® Browser in BlackBerry 6 with the inclusion of the new WebKit rendering engine, we have also modified the User Agent header for the browser to better reflect the type of web content supported by our browser.  To ensure that your mobile and desktop websites are providing the best possible content and experience for our users, developers should modify their websites to detect this new User Agent header:</p>
<p><strong>Mozilla/5.0 (BlackBerry; U; BlackBerry 9800; en) AppleWebKit/534.1+<br />(KHTML, Like Gecko) Version/6.0.0.141 Mobile Safari/534.1+</strong></p>
<h2>BlackBerry Torch &#8211; A Developer’s Perspective</h2>
<p></p>
<p>From a developer’s perspective, here is what you need to know about the new BlackBerry Torch 9800 smartphone.</p>
<ul>
<li>Supports GSM/GPRS/EDGE/HSDPA networks worldwide providing 3G cellular connectivity around the world
<li>480 x 360 screen resolution</p>
<li>5.0 MP Camera with Auto Focus, Scene Modes support and video recording</p>
<li>Location Support through the Geolocation Service and Autonomous GPS</p>
<li>Wi-Fi® Support – 802.11n</p>
<li>4 GB of onboard memory, with microSD support for up to 32GB (for multimedia, etc.); 512MB flash memory (Application Space)</p>
<li>The first BlackBerry smartphone with a physical keyboard and touch screen!</p>
<li>Touch screen and trackpad: Touch screen does not utilize SurePress™ – to accommodate in-market apps supporting SurePress, a TouchEvent.DOWN event will also generate TouchEvent.CLICK and TouchEvent.UNCLICK events.  So what would’ve previously been a DOWN / UP sequence on previous BlackBerry smartphones supporting touch now results in a DOWN / CLICK / UNCLICK / UP sequence, where the CLICK and UNCLICK events are generated following the DOWN event.</p>
</ul>
<p>Get started now by checking out developer pages for <a href="http://www.blackberry.com/developers/blackberry6?IID=DEVBB601" target="_new">BlackBerry 6</a>!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/1948/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/1948/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1948&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2010/08/blackberry-torch-9800/feed/</wfw:commentRss>
		<slash:comments>32</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/df3fbb85b0186198b2f85e7cd3f0bf1a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mikekir1</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/08/blackberry-torch-slider1.jpg" medium="image">
			<media:title type="html">BlackBerry Torch 9800</media:title>
		</media:content>
	</item>
		<item>
		<title>Supporting BlackBerry Widgets on BlackBerry 6</title>
		<link>http://devblog.blackberry.com/2010/08/blackberry-6-widgets/</link>
		<comments>http://devblog.blackberry.com/2010/08/blackberry-6-widgets/#comments</comments>
		<pubDate>Tue, 03 Aug 2010 15:27:41 +0000</pubDate>
		<dc:creator>Tim W.</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[bb6]]></category>
		<category><![CDATA[blackberry 6]]></category>
		<category><![CDATA[blackberry6widgetsup]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[sdk]]></category>
		<category><![CDATA[Widgets]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=1955</guid>
		<description><![CDATA[BlackBerry Widget support for BlackBerry 6 developers.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1955&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><img alt="" src="http://rimdevblog.files.wordpress.com/2010/08/homescreen-allview-opened.jpg?w=360&#038;h=480" class="aligncenter" width="360" height="480" /></p>
<p>With the exciting news of the upcoming <a href="http://www.blackberry.com/developers/blackberry6?IID=DEVBB601" target="_new">BlackBerry® 6</a> release, we wanted to make sure that everyone had a chance to preview the latest WebKit rendering engine with their BlackBerry Widgets leading up to the availability of the <a href="http://na.blackberry.com/eng/devices/blackberrytorch/torch_blackberry6.jsp?IID=DEVTBB601" TARGET="_new" TITLE="BlackBerry® Torch™ 9800 smartphone">BlackBerry® Torch™ 9800 smartphone</a>. To do this, we are making available an early patch for the <a href="http://na.blackberry.com/eng/developers/browserdev?IID=DEVSDK01" TARGET="_new" title="BlackBerry Widget SDK">BlackBerry Widget SDK</a> that will allow you to build your widgets so that they are both compatible with BlackBerry Device Software v5.0 and the new BlackBerry 6.</p>
<p>We are all very excited about the power that the new WebKit engine brings to the BlackBerry platform, and with such a major change, there were changes in the inner workings of our Widget packaging that needed to be taken into account.  We also wanted to make sure that we provided developers with a mechanism so that they didn’t have to manage different sets of code to target both v5.0 and BlackBerry 6 devices.</p>
<p>This early patch synchronizes the two versions to the point where you don’t have to worry about it.  This means is that in order to have your BlackBerry Widget run the best on both v5.0 and BlackBerry 6, you will want to apply this patch and rebuild your Widget using the Widget SDK. We will also be releasing a full upgrade of the BlackBerry Widget SDK and the BlackBerry Web Plug-ins for Eclipse® and Visual Studio® shortly.</p>
<p>NOTE: This patch is only for the standalone version of the BlackBerry Widget SDK and will not work with the existing versions of the BlackBerry Web Plug-in v2.0.</p>
<p>Details on how to acquire the BlackBerry 6 Widget SDK patch and how to apply it can be found in the following <a href="http://supportforums.blackberry.com/t5/Web-Development/Supporting-BlackBerry-Widget-applications-on-BlackBerry-6/ta-p/557287?IID=DEVRES02" target="_new">Developer Resource Center article</a>.</p>
<p><span id="more-1955"></span></p>
<p><strong>What about the compatibility between Gears and HTML5?</strong></p>
<p>RIM® is looking to strongly support the HTML5 standard moving forward.  As such, BlackBerry 6 no longer supports Gears functionality since that same functionality is now found in HTML5 standard.</p>
<p>To ease the work involved in supporting two code lines for BlackBerry Device Software v5.0 and BlackBerry 6, we have created a JavaScript toolkit that you can load into your BlackBerry Widget to provide HTML5 capabilities in Widgets running on 5.0 device software.</p>
<p>The JavaScript toolkit provides the following HTML5 interfaces as a simple layer over top of the Gears capabilities currently available in 5.0:</p>
<p>- Geolocation<br />
o Position<br />
o PositionOptions<br />
o PositionError<br />
o Coordinates</p>
<p>- Database<br />
o SQLTransaction<br />
o SQLResultSet<br />
o SQLResultSetRowList<br />
o SQLError</p>
<p>- Worker</p>
<p>The toolkit is smart enough to know if it needs to be loaded or not, so when a page with the toolkit is loaded in the WebKit browser on BlackBerry 6, it doesn’t add these interfaces since they already exist natively. This toolkit will allow you to construct your code so that it is standards compliant and it will work on both operating systems with a single source base.</p>
<p>The details of how to use and retrieve this HTML5 JavaScript toolkit can be found in the same <a href="http://supportforums.blackberry.com/t5/Web-Development/Supporting-Gears-using-HTML5-in-BlackBerry-Widget-applications/ta-p/557280?IID=DEVRES03" TARGET="_new">Resource Center Article</a> which has the details on the BlackBerry Widget SDK patch for BlackBerry 6.  Check it out, then come back and let us know what you think!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/1955/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/1955/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1955&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2010/08/blackberry-6-widgets/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d4af90af66399bef37f445ec81aba64a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">timwin1</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/08/homescreen-allview-opened.jpg" medium="image" />
	</item>
		<item>
		<title>How to Add Menu Items Using the BlackBerry Widget SDK</title>
		<link>http://devblog.blackberry.com/2010/06/how-to-add-menu-items-using-blackberry-widget-sdk/</link>
		<comments>http://devblog.blackberry.com/2010/06/how-to-add-menu-items-using-blackberry-widget-sdk/#comments</comments>
		<pubDate>Tue, 22 Jun 2010 10:00:00 +0000</pubDate>
		<dc:creator>Adam S.</dc:creator>
				<category><![CDATA[How-to]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[sdk]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Widgets]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=1744</guid>
		<description><![CDATA[A comprehensive how-to post on using menu items effectively within your BlackBerry® application, and how you can best use the menu items to create a positive application experience.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1744&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-1748" title="Menu Items" src="http://rimdevblog.files.wordpress.com/2010/06/menuitem31.jpg?w=462&#038;h=292" alt="" width="462" height="292" /></p>
<p>Using menu items effectively within your application is one of many ways to create a positive application experience, and helps to improve the overall engagement and usage of your application.</p>
<p>The <a title="BlackBerry® Widget API collection" href="http://www.blackberry.com/developers/docs/widgetapi/" target="_new">BlackBerry® Widget API collection</a> includes JavaScript® objects that can enhance the functionality of an application created using the <a title="BlackBerry Widget SDK" href="http://na.blackberry.com/eng/developers/browserdev/widgetsdk.jsp" target="_new">BlackBerry Widget SDK</a>.  This collection includes the <a title="MenuItem object" href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.ui.menu.MenuItem.html" target="_new">MenuItem</a> object, which can be used to easily create contextual menus within your BlackBerry Widget application.</p>
<p><span id="more-1744"></span></p>
<h2>Creating MenuItem objects</h2>
<p>As shown in the following example, adding a new menu item involves these two steps:</p>
<ol>
<li>Create an instance of the <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.ui.menu.MenuItem.html" target="_new">MenuItem</a> JavaScript object;</li>
<li>Use the Widget <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.ui.menu.html" target="_new">Menu</a> API to add the object to the menu.</li>
</ol>
<p>The keywords “Hello” and “World” are displayed as captions in the menu, and corresponding JavaScript functions named “callBackHello” and “callBackWorld” are called when the user selects the respective menu items.<br />
This example also demonstrates how to create a menu item separator.  Note the first parameter of the constructor is a Boolean value, indicating whether or not the MenuItem is a separator:</p>
<div class="sample">
<pre>
function createMenu(setDefault)
{
//Define Menu Item objects:
var mi_hello = new blackberry.ui.menu.MenuItem(false, 0, “Hello”, callBackHello);
var mi_separator = new blackberry.ui.menu.MenuItem(true, 1);
var mi_world = new blackberry.ui.menu.MenuItem(false, 2, “World”, callBackWorld);

//Clear existing menu items:
blackberry.ui.menu.clearMenuItems();

//Add a separator between two menu item objects:
blackberry.ui.menu.addMenuItem(mi_hello);
blackberry.ui.menu.addMenuItem(mi_separator);
blackberry.ui.menu.addMenuItem(mi_world);

//Optionally set default focus to a specified menu item:
if (setDefault)
{
blackberry.ui.menu.setDefaultMenuItem(mi_hello);
}
}
</pre>
</div>
<p><img class="aligncenter size-full wp-image-1749" title="Menu Item" src="http://rimdevblog.files.wordpress.com/2010/06/menuitem21.jpg?w=490&#038;h=310" alt="" width="490" height="310" /></p>
<h2>When to create the menu</h2>
<p>The most straightforward way to add menu items in your Widget application is to call the “createMenu()” method from the “onload” event which occurs immediately after the browser rendering engine loads the page.  This ensures that all required JavaScript has been loaded into memory, and that when the user is ready to interact with your application, the menu has been created:</p>
<div class="sample">
<pre>
&lt;body onload=”createMenu()”&gt;
You can also re-build the menu at any time by calling the createMenu function elsewhere on the page:
&lt;button id=”btnMenu” onclick=”createMenu(1)”&gt;
Re-build menu &lt;/button&gt;
&lt;/body&gt;
</pre>
</div>
<p><img class="aligncenter size-full wp-image-1748" title="Menu Items" src="http://rimdevblog.files.wordpress.com/2010/06/menuitem31.jpg?w=462&#038;h=292" alt="" width="462" height="292" /></p>
<h2>Menu and Super Apps</h2>
<p>One of the key principles of the <a title="Super Apps" href="http://www.blackberry.com/developers/superapps" target="_new">Super App</a> concept is being able to provide a contextual user experience.  This means allowing your application to make use of any conditional information in order to deliver content and services that are relevant within the current context.</p>
<p>The Widget Menu API provides an easy dynamic user interface you can adjust to the current context of the application.  By displaying menu items that are relevant to what the user is currently doing, you can increase engagement and optimize the user experience by making it easier for your users to access the information they need within your application.</p>
<p>The best example of effective use of a contextual menu is one that most BlackBerry users are familiar with: the Messages application.  The initial context of the Messages application provides a list of messages, and the menu on this screen includes items such as “Open” and “Search By.”  When a message is opened, the context of the application changes &#8211; and so does the menu, becoming relevant to the user viewing a message.  The “Open” menu item is removed, and the “More” and “Add to Contacts” menu items are added.  This allows the user to easily access the application functionality that is most important to them at that point in time.</p>
<p>Another example of how you can contextualize the menu is having your application perform an automatic check for updates on startup.  If a new version of your application is available, an “Update Now” item can be added to the menu.  When selected, the menu item can redirect the user to either an over-the-air download page, or launch <a title="BlackBerry App World™" href="http://www.blackberry.com/appworld" target="_new">BlackBerry App World™</a> to your product download page.</p>
<p>Another final example of effective menu usage could be to use the Widget <a href="http://www.blackberry.com/developers/docs/widgetapi/Summary_system.html" target="_new">System</a> API to detect whether the current BlackBerry smartphone has Wi-Fi® capability, and to provide an “Enable Wi-Fi” menu item in advance of your user accessing a high-bandwidth feature of your application.</p>
<h2>Super App Developer Challenge</h2>
<p>By making your apps context-aware, you can easily increase the usefulness and relevance of your services and deliver the Super App experience.  Effective use of Menu items in your application is a great way to provide a highly contextualized user experience.</p>
<p>As a reminder, BlackBerry Widget applications can qualify for the <a title="BlackBerry Super Apps Developer Challenge" href="http://www.blackberrypartnersfund.com/2010challenge" target="_new">BlackBerry Super Apps Developer Challenge</a>.  If you have or are building an application that you think meets the requirements for being a Super App, please don’t hesitate to submit it to the Developer Challenge before September 6, 2010.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/1744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/1744/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1744&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2010/06/how-to-add-menu-items-using-blackberry-widget-sdk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/16f032fc46b780f6d9fa38b24a7f8ff2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">adamstan1</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/06/menuitem31.jpg" medium="image">
			<media:title type="html">Menu Items</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/06/menuitem21.jpg" medium="image">
			<media:title type="html">Menu Item</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/06/menuitem31.jpg" medium="image">
			<media:title type="html">Menu Items</media:title>
		</media:content>
	</item>
		<item>
		<title>Using Invoke APIs in your BlackBerry widget</title>
		<link>http://devblog.blackberry.com/2010/06/using-invoke-apis-in-your-blackberry-widget/</link>
		<comments>http://devblog.blackberry.com/2010/06/using-invoke-apis-in-your-blackberry-widget/#comments</comments>
		<pubDate>Fri, 11 Jun 2010 05:00:00 +0000</pubDate>
		<dc:creator>Prosanta B.</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[Widgets]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=1670</guid>
		<description><![CDATA[Detailed description of using BlackBerry invoke APIs in BlackBerry widgets (with code).<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1670&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>One feature of <a href="http://na.blackberry.com/eng/developers/started/super_apps.jsp" target="_new" title="Super Apps">Super Apps</a> is that they integrate with the native applications on BlackBerry® smartphones.  So, how do you go about doing this?  For BlackBerry® Widgets, it’s actually pretty simple. The BlackBerry® Widget API provides the <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.invoke.JavaArguments.html" target="_new" title="Invoke">Invoke</a> object, which allows you to design your application to seamlessly work with the other applications on the BlackBerry smartphone. This results in a richer BlackBerry smartphone user experience.</p>
<p>By leveraging the Invoke API, you can invoke virtually any other application on the BlackBerry smartphone through a simple API call, where you’ll set a parameter for the app you want to invoke and then pass in any parameters that application is expecting.  Right out of the box, the BlackBerry API contains these APIs to invoke:</p>
<p>• <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.invoke.AddressBookArguments.html" target="_new" title="Address Book">Address Book</a></p>
<div class="sample">
<pre>
&lt;script type="text/javascript"&gt;
var contact = new blackberry.pim.Contact();
contact.firstName = 'Joe';
contact.lastName = 'Smith';

var args = new blackberry.invoke.AddressBookArguments(contact);
args.view = 0;

blackberry.invoke.invoke(blackberry.invoke.APP_ADDRESSBOOK, args);
&lt;/script&gt;
</pre>
</div>
<p><span id="more-1670"></span></p>
<p>• <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.invoke.BrowserArguments.html" target="_new" title="BlackBerry Browser">BlackBerry Browser</a></p>
<div class="sample">
<pre>
&lt;script type="text/javascript"&gt;
var args = new blackberry.invoke.BrowserArguments('http://www.blackberry.com');
blackberry.invoke.invoke(blackberry.invoke.APP_BROWSER, args);
&lt;/script&gt;
</pre>
</div>
<p>• <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.invoke.CalendarArguments.html" target="_new" title="Calendar">Calendar</a></p>
<div class="sample">
<pre>
&lt;script type="text/javascript"&gt;
var appt = new blackberry.pim.Appointment();
appt.summary = 'Get Together For lunch';

var args = new blackberry.invoke.CalendarArguments(appt);
args.view = 0;

blackberry.invoke.invoke(blackberry.invoke.APP_CALENDAR, args);  // Calendar
&lt;/script&gt;
</pre>
</div>
<p>• <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.invoke.CameraArguments.html" target="_new" title="Camera">Camera</a></p>
<div class="sample">
<pre>
&lt;script type="text/javascript"&gt;

var args = new blackberry.invoke.CameraArguments();
args.view = 1; // Video Recorder

blackberry.invoke.invoke(blackberry.invoke.APP_CAMERA, args);  // Video Recorder Application
&lt;/script&gt;
</pre>
</div>
<p>• <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.invoke.MapsArguments.html" target="_new" title="Maps">Maps</a></p>
<div class="sample">
<pre>
&lt;script type="text/javascript"&gt;
var args = new blackberry.invoke.MapsArguments(43.26, -80.30);
blackberry.invoke.invoke(blackberry.invoke.APP_MAPS, args);
&lt;/script&gt;
</pre>
</div>
<p>• <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.invoke.MemoArguments.html" target="_new" title="MemoPad">MemoPad</a></p>
<div class="sample">
<pre>
&lt;script type="text/javascript"&gt;
var memo = new blackberry.pim.Memo();
memo.title = 'Oranges I like';
memo.note = 'navel';

var args = new blackberry.invoke.MemoArguments(memo);
args.view = 0; // New

blackberry.invoke.invoke(blackberry.invoke.APP_MEMOPAD, args);  // Memo Pad
&lt;/script&gt;
</pre>
</div>
<p>• <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.invoke.MessageArguments.html" target="_new" title="Email">Email</a></p>
<div class="sample">
<pre>
&lt;script type="text/javascript"&gt;

var args = new blackberry.invoke.MessageArguments('foo@domain.com', 'hello', 'world');
args.view = blackberry.invoke.MessageArguments.VIEW_NEW; // New

blackberry.invoke.invoke(blackberry.invoke.APP_MESSAGES, args);  // New Message
&lt;/script&gt;
</pre>
</div>
<p>• <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.invoke.PhoneArguments.html" target="_new" title="Phone">Phone</a></p>
<div class="sample">
<pre>
&lt;script type="text/javascript"&gt;

var args = new blackberry.invoke.PhoneArguments('555-555-5555', true);
args.view = blackberry.invoke.PhoneArguments.VIEW_CALL;

blackberry.invoke.invoke(blackberry.invoke.APP_PHONE, args);
&lt;/script&gt;
</pre>
</div>
<p>• <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.invoke.SearchArguments.html" target="_new" title="Search">Search</a></p>
<div class="sample">
<pre>
&lt;script type="text/javascript"&gt;
var args = new blackberry.invoke.SearchArguments('build', 'Joe');
blackberry.invoke.invoke(blackberry.invoke.APP_SEARCH, args);  // Search
&lt;/script&gt;
</pre>
</div>
<p>• <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.invoke.TaskArguments.html" target="_new" title="Tasks">Tasks</a></p>
<div class="sample">
<pre>
&lt;script type="text/javascript"&gt;
var task= new blackberry.pim.Task();
task.summary = 'Pick up Milk';

var args = new blackberry.invoke.TaskArguments(task);
args.view = 0;

blackberry.invoke.invoke(blackberry.invoke.APP_TASKS, args);
&lt;/script&gt;
</pre>
</div>
<p>• <a href="http://www.blackberry.com/developers/docs/widgetapi/blackberry.invoke.JavaArguments.html" target="_new" title="Other Java applications">Any other Java application on the device</a></p>
<div class="sample">
<pre>
&lt;script type="text/javascript"&gt;

var args = new blackberry.invoke.JavaArguments('net_rim_bb_memo_app');
blackberry.invoke.invoke(blackberry.invoke.APP_JAVA, args);  // Java

&lt;/script&gt;
</pre>
</div>
<p>By leveraging these APIs, you can come up with a compelling user story or use case to design your application as a one-stop shop for anyone looking to organize their daily tasks through your app.  Open an email, save a meeting invite, set GPS to locate the meeting room, associate tasks with that meeting – these are just a few of the countless ways you can easily leverage the Invoke APIs, taking your BlackBerry Widget to the next level and embracing <a href="http://na.blackberry.com/eng/developers/started/super_apps.jsp" target="_new" title="Super Apps">the Super App concept</a>!</p>
<p>Have you leveraged any of the Invoke APIs yet? Please share your stories with us here in the comments.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/1670/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/1670/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1670&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2010/06/using-invoke-apis-in-your-blackberry-widget/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/8721ed983743f63d33e3766566e941df?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Prosanta B.</media:title>
		</media:content>
	</item>
		<item>
		<title>How can I deploy my BlackBerry Widget?</title>
		<link>http://devblog.blackberry.com/2010/06/how-can-i-deploy-my-blackberry-widget/</link>
		<comments>http://devblog.blackberry.com/2010/06/how-can-i-deploy-my-blackberry-widget/#comments</comments>
		<pubDate>Fri, 04 Jun 2010 20:23:40 +0000</pubDate>
		<dc:creator>Prosanta B.</dc:creator>
				<category><![CDATA[How-to]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[app world]]></category>
		<category><![CDATA[deployment]]></category>
		<category><![CDATA[desktop manager]]></category>
		<category><![CDATA[ota]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Widgets]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=1657</guid>
		<description><![CDATA[How to deploy BlackBerry Widgets to customers via four options.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1657&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><img class="aligncenter" title="BlackBerry App World" src="http://rimdevblog.files.wordpress.com/2010/06/blackberry-app-world.jpg?w=600&#038;h=375" alt="" width="600" height="375" /></p>
<p>One of the questions I am asked quite often is how to get a BlackBerry® Widget into the market, or how to deploy it to users. The answer to this requires a bit of an understanding of the underlying technology of a BlackBerry Widget.</p>
<p>In the end, the BlackBerry Widget is a Java® application that leverages the BrowserField2 component.  Since it’s a Java application, your Widget can be deployed using any of the available means that any other BlackBerry® application would leverage.  Something to be aware of, however, is that your application will require to be signed using the Research In Motion® (RIM) code signing keys.  Once signed, your application can then be deployed in one of four typical means:</p>
<ol>
<strong>1.	<a href="http://na.blackberry.com/eng/services/appworld/">BlackBerry App World</a>™</strong><br />
BlackBerry App World is the marketplace provided by RIM to deploy your apps, and is considered to be a premier vehicle to distribute your application. Mike has written a terrific summary of some of the <a href="http://devblog.blackberry.com/2010/04/blackberry-app-world-vendor-portal-updated/">new features available in BlackBerry App World 2.0</a>.</p>
<p><span id="more-1657"></span></p>
<p><strong>2.	Over The Air (OTA) download through the BlackBerry Browser</strong><br />
If you’ve developed a BlackBerry Widget, I’m guessing that you’re probably a web developer, which means odds are pretty good that you’ve got a website.  OTA deployment can be done through the BlackBerry® Browser, where the user will download the application from your website.  Since the browser comes installed by default on every single BlackBerry smartphone sold today, you have a tremendous amount of consumers out there that are only a few clicks away from downloading your application!</p>
<p>When deploying OTA, all you’ll need to do is host the JAD file with the respective COD files for your application and then point the URL to the JAD file.  It’s the same thing as posting a file to download on a website &#8211; just use <em>a href=&#8221;[path to my jad file]&#8220;</em> to link to your JAD and allow the user to download the application.</p>
<p>Take a look at how this feature is set up in this fantastic video going over the <a href="http://www.blackberry.com/DevMediaLibrary/view.do?name=OTA">OTA download through the BlackBerry Browser</a>.  Also, here’s a great KB article outlining the steps needed to <a href="http://www.blackberry.com/btsc/search.do?cmd=displayKC&amp;docType=kc&amp;externalId=KB17084">download over WAP</a>.</p>
<p><strong>3. OTA Push via BlackBerry Enterprise Server</strong><br />
A BlackBerry Enterprise Server administrator is able to push applications to any BlackBerry smartphone connected to that particular BlackBerry Enterprise Server.  One thing to note is that utilizing BlackBerry Enterprise Server Push to send applications down to BlackBerry smartphones is only available via corporate environments, since it requires a BlackBerry Enterprise Server.</p>
<p>The steps for <a href="http://www.blackberry.com/btsc/search.do?cmd=displayKC&amp;docType=kc&amp;externalId=KB03748&amp;sliceId=SAL_Public&amp;dialogID=151008089&amp;stateId=1%200%20151002852">creating a software configuration to deploy third-party apps from a BlackBerry Enterprise Server over a wireless network</a> can be found in this knowledge base article. Additionally, here’s a <a href="http://www.blackberry.com/DevMediaLibrary/view.do?name=overtheairpush">great video</a> highlighting how to accomplish this type of deployment and some of the interesting features and options available to you!</p>
<p><strong>4. <a href="http://na.blackberry.com/eng/services/desktop/">BlackBerry Desktop Manager</a></strong><br />
You can use this option for most applications; it uses the BlackBerry Application Loader that is installed as part of the BlackBerry Desktop Software.  An automated application installer installs the application’s .alx file locally on the user’s computer. The user then navigates to the file and installs it on their BlackBerry smartphone.</p>
<p>A detailed step by step guide is available through this video on the <a href="http://www.blackberry.com/DevMediaLibrary/view.do?name=desktopmanager">BlackBerry Developers Website</a>.</ol>
<p>For further reading, Andre Fabris has written a fantastic tutorial outlining all of the deployment models available for you to <a href="http://rimdevblog.files.wordpress.com/2010/06/a70_how_to_deploy_and_distribute_applications_v1.pdf">distribute your application to market</a> as quickly and effectively as possible.</p>
<p>Depending on which deployment model &#8211; or combination of models &#8211; you choose, there will likely be a few prerequisites that you’ll need to set up in order to effectively make use of them.  We’ve provided a document which <a href="http://rimdevblog.files.wordpress.com/2009/11/deploying_java_applications.pdf">summarizes the methods</a> and the prerequisites that you’ll have to set up before leveraging them.</p>
<p>For more information and demonstrations on how to leverage these deployment mechanisms, I’d encourage you to take a look at the <a href="http://na.blackberry.com/eng/developers/resources/videolibrary.jsp#tab_tab_deployment">BlackBerry Developer Video Library</a>, where there are several videos that provide in-depth explanations of the entire deployment process for a BlackBerry Application.  I’d like to strongly encourage everyone to keep up the hard work, and leverage these deployment methods to get your apps into consumers’ hands!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/1657/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/1657/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1657&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2010/06/how-can-i-deploy-my-blackberry-widget/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/8721ed983743f63d33e3766566e941df?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Prosanta B.</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/06/blackberry-app-world.jpg" medium="image">
			<media:title type="html">BlackBerry App World</media:title>
		</media:content>
	</item>
		<item>
		<title>Working around the backlight timeout with JavaScript and meta tags</title>
		<link>http://devblog.blackberry.com/2010/05/working-around-the-backlight-timeout/</link>
		<comments>http://devblog.blackberry.com/2010/05/working-around-the-backlight-timeout/#comments</comments>
		<pubDate>Fri, 21 May 2010 10:00:00 +0000</pubDate>
		<dc:creator>Prosanta B.</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[meta tags]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[webworks]]></category>
		<category><![CDATA[Widgets]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=1627</guid>
		<description><![CDATA[Using JavaScript and meta tags to bypass the BlackBerry smartphone backlight timeout.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1627&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>The JavaScript® engine used in the BlackBerry® Browser is designed to terminate any scripts running longer than 10 seconds, or to stop running your JavaScript after the device backlight goes out.  This can be a little troublesome when your application is designed to use the settimeout function to trigger an event after a given interval.  You obviously don’t want your script to stop running while the user is still on your webpage.  This behavior was initially implemented in the BlackBerry Browser to save battery life and network bandwidth; however, more and more web applications are leveraging AJAX and the setTimeout function to trigger timed JavaScript calls, which are then being blocked out by the backlight timeout on the BlackBerry smartphone device.</p>
<p>In this blog post, I’m going to show you an easy way to have your JavaScript code fired up again and running as soon as the device is woken up from the backlight going out.  The method below actually came about because of the need to check if a session had expired while the user was still on a webpage, so there are some serious real world applications that could benefit from using this method.  This workaround won’t actually prevent the backlight from dimming or the device from locking; it will instead re-trigger the JavaScript code once the device is woken up from the backlight being dimmed, acting as a good substitute to the setTimeout function.</p>
<p><span id="more-1627"></span></p>
<p>The workaround is really just as simple as using an iframe with a meta tag.  The solution consists of two files; index.html and autorefresh.html.</p>
<p><u>index.html</u></p>
<div class="sample">
<pre>
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;This is a test&lt;/title&gt;
&lt;script type="text/javascript"&gt;
function wakeUp() {
var time = new Date();
document.getElementById('spnTime').innerHTML = time.toLocaleTimeString();
}
&lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
The time is: &lt;span id="spnTime"&gt;&lt;/span&gt;
<a href="http://autorefresh.html">http://autorefresh.html</a>
&lt;/body&gt;
&lt;/html&gt;
</pre>
</div>
<p>
<p><u>autorefresh.html</u></p>
<div class="sample">
<pre>
&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
&lt;head&gt;
&lt;META HTTP-EQUIV="refresh" CONTENT="5"/&gt;
&lt;META HTTP-EQUIV="CACHE-CONTROL" CONTENT="PUBLIC"/&gt;
&lt;script language="javascript"&gt;window.parent.wakeUp();&lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
iframe
&lt;/body&gt;
&lt;/html&gt;
</pre>
</div>
<p>
<p>This code will actually trigger the JavaScript function ‘wakeUp’ every five seconds.  When the device backlight dims, it will stop running; however, once the device backlight is activated again, the refresh meta tag triggers and begins its timing again.  Five seconds after waking up, it will call wakeUp again.  So a real world application of this could have the wakeUp function check to see if the user&#8217;s session has timed out, and if so, perform a JavaScript redirect to the login page in order to start up a new session again.</p>
<p>More information on meta tags can be found here: <a href="http://www.w3schools.com/tags/tag_meta.asp" target="_new">http://www.w3schools.com/tags/tag_meta.asp</a></p>
<p>If you have any other workarounds for this or any other common issues, please feel free to post them here to help the community out!</p>
<p><em><br />
<h6>JavaScript is a trademark of Sun Microsystems, Inc.</h6>
<p></em></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/1627/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/1627/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1627&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2010/05/working-around-the-backlight-timeout/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/8721ed983743f63d33e3766566e941df?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Prosanta B.</media:title>
		</media:content>
	</item>
		<item>
		<title>BlackBerry Widget Navigation Mode: Everything you Need to Know</title>
		<link>http://devblog.blackberry.com/2010/05/blackberry-widget-navigation-mode/</link>
		<comments>http://devblog.blackberry.com/2010/05/blackberry-widget-navigation-mode/#comments</comments>
		<pubDate>Tue, 04 May 2010 10:00:00 +0000</pubDate>
		<dc:creator>Adam S.</dc:creator>
				<category><![CDATA[How-to]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[knowledge-base]]></category>
		<category><![CDATA[Widgets]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=1454</guid>
		<description><![CDATA[A detailed explanation of BlackBerry Widget navigation mode, and how it can allow developers to provide their users with more granular control over how they interact with page elements in their Widget applications.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1454&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p style="text-align:center;"><img class="aligncenter" title="BlackBerry Widget configuration" src="http://rimdevblog.files.wordpress.com/2010/05/blackberry-widget-config11.jpg?w=373&#038;h=369" alt="" width="373" height="369" /></p>
<p>Have you heard of BlackBerry® Widget <a title="BlackBerry® Widget navigation mode" href="http://docs.blackberry.com/en/developers/deliverables/15272/index.jsp?name=Navigation+Mode+-+Technical+Note+-+BlackBerry+Widget+SDK1.0&amp;language=English&amp;userType=21&amp;category=BlackBerry+Widgets&amp;subCategory=BlackBerry+Widget+Development+Guides" target="_new">navigation mode</a> yet?  It is a configuration option that allows Widget developers to set their own focus-based navigation scheme.  Instead of using the default mode, choosing this type of navigation mode allows you to provide your users with more granular control over how they interact with page elements in their Widget applications.</p>
<h2>What is the default navigation mode for BlackBerry Widget applications?</h2>
<p>When a <a title="BlackBerry Widget" href="http://na.blackberry.com/eng/developers/browserdev/widgetsdk.jsp" target="_new">BlackBerry Widget</a> application is created, its default navigation mode is pointer mode.  This means that a cursor, similar to a mouse pointer, moves around the screen when you scroll the trackpad or trackball.  It is very similar to how the native BlackBerry® Browser application is used where different regions of the page can be interacted with, such as hyperlinks and input fields.  The reason for this similarity is because of a browser field object that is embedded within a compiled BlackBerry Widget &#8211; one that is used to render embedded (and remote) web content.</p>
<p><span id="more-1454"></span></p>
<p>However, the BlackBerry Browser input mechanism isn’t always the best fit for BlackBerry Widget applications.</p>
<p style="text-align:center;"><img class="aligncenter" title="BlackBerry Widget remote control" src="http://rimdevblog.files.wordpress.com/2010/05/blackberry-widget-remote-control11.jpg?w=369&#038;h=277" alt="" width="369" height="277" /></p>
<p><strong>Figure 1:</strong> Default navigation.  Pointer moves around page when you scroll trackpad/trackball.</p>
<p>Ideal for some applications, but not all.</p>
<h2>Wouldn’t it be great if there was a different type of navigation scheme?</h2>
<p>Yes, it would be great, and guess what &#8211; there is!</p>
<p>We call it “navigation mode,” and it’s a focus-based navigation scheme that is used in the other native BlackBerry applications.  Developers define interactive regions of page content as being “focusable” (e.g. tab headers, input fields, buttons, etc.) that automatically gain focus when the user scrolls the trackpad/trackball towards them.  This provides a similar user experience to how native BlackBerry applications are used, such as the Messages or Contacts application.  When scrolling up and down within these applications, focus moves between each email or contact.</p>
<p>Another example is the home screen on your BlackBerry® smartphone.  You scroll from icon to icon, rather than moving a pointer around the screen.  Depending on the design/layout of your Widget application, “navigation mode” may be more intuitive, and help make it easier and quicker to navigate between interactive application elements.</p>
<p style="text-align:center;"><img class="aligncenter" title="BlackBerry Widget remote control" src="http://rimdevblog.files.wordpress.com/2010/05/blackberry-widget-remote-control-211.jpg?w=364&#038;h=257" alt="" width="364" height="257" /></p>
<p><strong>Figure 2:</strong> Focus based navigation.  Scrolling Up/Down changes focus between<br />
page elements that have been marked as focusable.  Ideal for an application like this,<br />
where the screen is composed entirely of buttons.</p>
<h2>That’s awesome. How do I use it?</h2>
<p>1. Using either the BlackBerry® Web Plug-in for Microsoft® Visual Studio® or the BlackBerry® Web Plug-in for Eclipse®, open the configuration document (Config.xml), within your BlackBerry Widget project, and select the “Enable trackball/trackpad navigation” checkbox.</p>
<p style="text-align:center;"><img class="aligncenter" title="BlackBerry Widget configuration" src="http://rimdevblog.files.wordpress.com/2010/05/blackberry-widget-config11.jpg?w=373&#038;h=369" alt="" width="373" height="369" /></p>
<p>2. Add the property “x-blackberry-focusable=&#8221;true&#8221;” to whichever HTML elements within your web content you wish to mark as focusable.  When navigation scrolls towards these items, they will automatically gain focus.  For example:</p>
<div class="sample">
<pre>&lt;style type="text/css"&gt;
td { background-color: White; color: Black; }
td:hover { background-color: Gray; color: Red; }
.focusable { background-color: Blue; color: White; }
&lt;/style&gt;
&lt;table border="0" cellspacing="0" cellpadding="0"&gt;
&lt;tr&gt;
&lt;td&gt; &lt;/td&gt;
&lt;td x-blackberry-focusable="true"&gt; &lt;/td&gt;
&lt;td&gt; &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td x-blackberry-focusable="true"&gt; &lt;/td&gt;
&lt;td x-blackberry-focusable="true"&gt; &lt;/td&gt;
&lt;td x-blackberry-focusable="true"&gt; &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt; &lt;/td&gt;
&lt;td x-blackberry-focusable="true"&gt; &lt;/td&gt;
&lt;td&gt; &lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</pre>
</div>
<p>3. Customize the default behavior of navigation mode by using JavaScript® and HTML.  You can use the blackberry.focus JavaScript object and x-blackberry HTML properties to produce a more granular user experience:</p>
<p>blackberry.focus.setFocus(id) – sets focus to an element having the given ID.</p>
<p>x-blackberry-initialFocus=&#8221;true&#8221; – declares element to attain focus when page is loaded.</p>
<p>x-blackberry-onDown=&#8221;callbackFunction()&#8221; – calls JavaScript function when focus moves down from the current element.  There are also corresponding properties that allow you to capture onUp, onLeft and onRight events.</p>
<span class='embed-youtube' style='text-align:center; display: block;'><iframe class='youtube-player' type='text/html' width='640' height='390' src='http://www.youtube.com/embed/Hp-ie6S3x60?version=3&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;hd=1&#038;wmode=transparent' frameborder='0'></iframe></span>
<h2>Conclusion</h2>
<p>Implementing focus-based Widget navigation mode is only relevant on BlackBerry smartphones that have trackball/trackpad input.  On a touch screen device, users interact with elements on the screen simply by touching the screen, and do not have a cursor/pointer that they can navigate among elements within an application.  As a result, BlackBerry Widget developers should be aware that only touch input events are recognized on a touch screen device; regardless of whether a BlackBerry Widget application is configured to use focus-based navigation, users can only interact with elements in their Widget using touch events.</p>
<p>You can find more information, such as sample code and a tutorial about using navigation mode in your Blackberry Widget applications, on the BlackBerry Widget SDK page. Check it out, then come back to the BlackBerry Developer’s Blog and let us know how it worked for you.</p>
<h6>Eclipse is a trademark of Eclipse Foundation, Inc. Microsoft and Visual Studio are trademarks of Microsoft Corporation.  JavaScript is a trademark of Sun Microsystems, Inc. All other trademarks are the property of their respective owners.</h6>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/1454/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/1454/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=1454&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2010/05/blackberry-widget-navigation-mode/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/16f032fc46b780f6d9fa38b24a7f8ff2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">adamstan1</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/05/blackberry-widget-config11.jpg" medium="image">
			<media:title type="html">BlackBerry Widget configuration</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/05/blackberry-widget-remote-control11.jpg" medium="image">
			<media:title type="html">BlackBerry Widget remote control</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/05/blackberry-widget-remote-control-211.jpg" medium="image">
			<media:title type="html">BlackBerry Widget remote control</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2010/05/blackberry-widget-config11.jpg" medium="image">
			<media:title type="html">BlackBerry Widget configuration</media:title>
		</media:content>
	</item>
	</channel>
</rss>
