<?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; native</title>
	<atom:link href="http://devblog.blackberry.com/tag/native/feed/" rel="self" type="application/rss+xml" />
	<link>http://devblog.blackberry.com</link>
	<description></description>
	<lastBuildDate>Tue, 21 May 2013 12:35:50 +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; native</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>Frameworks, JavaScript and C++  … oh my! BlackBerry Jam Americas Session Preview</title>
		<link>http://devblog.blackberry.com/2013/05/frameworks-javascript-and-c-oh-my-blackberry-jam-americas-session-preview/</link>
		<comments>http://devblog.blackberry.com/2013/05/frameworks-javascript-and-c-oh-my-blackberry-jam-americas-session-preview/#comments</comments>
		<pubDate>Fri, 10 May 2013 17:59:47 +0000</pubDate>
		<dc:creator>Adam S.</dc:creator>
				<category><![CDATA[BlackBerry Jam]]></category>
		<category><![CDATA[BlackBerry Live]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[native]]></category>
		<category><![CDATA[webworks]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=14958</guid>
		<description><![CDATA[I look forward to seeing many of you in Orlando May 14-16 for BlackBerry Jam Americas. You’ll find me wandering around &#38; presenting, coding, hacking and helping developers find new and interesting ways to build amazing applications for BlackBerry 10. In fact, I’m quite excited to present the following two sessions which are directed at [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=14958&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>I look forward to seeing many of you in Orlando May 14-16 for BlackBerry Jam Americas. You’ll find me wandering around &amp; presenting, coding, hacking and helping developers find new and interesting ways to build amazing applications for BlackBerry 10. In fact, I’m quite excited to present the following two sessions which are directed at the HTML5 &amp; WebWorks development communities:</p>
<p><a href="https://bblive.blackberryconferences.net/2013/connect/sessionDetail.ww?SESSION_ID=2725"><b>JAM 24 – HTML5 Frameworks: Up-And-Comers that are Building Steam</b></a><b></b></p>
<p>Ask any Web developer how many JavaScript frameworks there are out there and you’ll likely end up waiting a long time as they answer. There are so many to choose from and new ones appear in the wild on a daily basis: UI frameworks, libraries, shims &amp; polyfills, animation, graphs, gestures, MVC, performance, etc. We developers who solve difficult coding problems are eager to share their solutions in the form of JavaScript frameworks, allowing others to also build compelling application content. In this session, I’m going to share a few of my own personal favorite frameworks that are focused on improving the quality of your HTML5 applications or games. I even plan on doing a live coding demo of an HTML5 gaming framework. Wish me luck!</p>
<p style="text-align:center;"><img class="aligncenter size-full wp-image-14959" alt="TITLE_IMAGE" src="http://rimdevblog.files.wordpress.com/2013/05/adam1-e1368208692138.png?w=600&#038;h=340" width="600" height="340" /></p>
<p><a href="https://bblive.blackberryconferences.net/2013/connect/sessionDetail.ww?SESSION_ID=2713"><b>JAM23 – Lab: Getting Deep Device Integration with Third Party Extensions</b></a><b></b></p>
<p>Okay folks, I’m really excited about this one. This session is actually a 2 hour lab that will empower developers to boost the quality of their HTML5-powered WebWorks applications and take them to the next level of awesomeness.  Developers – have you ever built a Web app using technologies like HTML5, CSS or JavaScript and encountered a situation where the feature you wanted to implement could not be added because it was not defined in any Web standards?  Some examples include: blinking the LED light, sending a message via Bluetooth or keeping the device backlight on (none of these are features that can be added using standard JavaScript).  The BlackBerry 10 OS has a powerful native API platform that can be leveraged in a WebWorks application by exposing native code to the JavaScript engine via custom Third Party extensions.  During this lab, attendees will not only learn how to build WebWorks extensions for BlackBerry 10, but they will actually create their own!  By the time this lab is over, everyone will have a functional WebWorks application running on their <a href="http://devblog.blackberry.com/2013/04/blackberry-jam-blackberry-z10/">free BlackBerry Z10 smartphone</a> that makes use of a native extension. It’s going to get crazy in there.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/14958/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/14958/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=14958&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2013/05/frameworks-javascript-and-c-oh-my-blackberry-jam-americas-session-preview/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/2013/05/adam1-e1368208692138.png" medium="image">
			<media:title type="html">TITLE_IMAGE</media:title>
		</media:content>
	</item>
		<item>
		<title>BlackBerry Jam Americas 2013 – Stereoscopic 3D and Much More</title>
		<link>http://devblog.blackberry.com/2013/05/stereoscopic-3d-and-much-more/</link>
		<comments>http://devblog.blackberry.com/2013/05/stereoscopic-3d-and-much-more/#comments</comments>
		<pubDate>Mon, 06 May 2013 17:17:00 +0000</pubDate>
		<dc:creator>Alex Kinsella</dc:creator>
				<category><![CDATA[BlackBerry Jam]]></category>
		<category><![CDATA[BlackBerry Live]]></category>
		<category><![CDATA[Native SDK Development]]></category>
		<category><![CDATA[Cascades]]></category>
		<category><![CDATA[native]]></category>
		<category><![CDATA[opengl]]></category>
		<category><![CDATA[stereoscopic 3D]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=14913</guid>
		<description><![CDATA[Guest post from Roberto Speranza &#8211; Ed. Next week is BlackBerry Jam Americas 2013 and as a member of the Developer Relations team, I’ll be stationed at various locations over the three days helping out developers when I can. Better yet, i’m also hosting a lab that I hope you will find a lot of fun [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=14913&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><em>Guest post from <a href="http://www.twitter.com/RSSessantotto" target="_blank">Roberto Speranza</a> &#8211; Ed.</em></p>
<p>Next week is <a href="http://www.blackberryjamconference.com" target="_blank">BlackBerry Jam Americas 2013</a> and as a member of the Developer Relations team, I’ll be stationed at various locations over the three days helping out developers when I can. Better yet, i’m also hosting a lab that I hope you will find a lot of fun and very informative on stereoscopic 3D and HDMI output for your apps. I’m also presenting a session on getting the most out of <a href="http://developer.blackberry.com/native" target="_blank">Momentics </a>to help you build and package your apps in an efficient manner and streamline your development process. This is something all developers should care about since saving time during development often means you can take on more projects and earn more in the process.</p>
<p><span id="more-14913"></span></p>
<p><strong><a href="https://bblive.blackberryconferences.net/2013/connect/sessionDetail.ww?SESSION_ID=2730">JAM54 &#8211; Lab: Adding a new Dimension to your BlackBerry Apps &#8211; Stereoscopic 3D ( and other advanced applications for output to the HDMI display)</a></strong></p>
<p>My first experience with stereoscopic 3D, like most people, was from playing with a ViewMaster as a child. In the years since, I have experimented with stereoscopic photography, utilizing stereoscopic 3D graphics in 3D modeling and rendering software I worked on in university and during the first few years of my career, and now I am reviving some of that early work in my spare time and applying that knowledge to develop stereoscopic software for the BlackBerry 10 platform.</p>
<p>Stereoscopic 3D represents another way your app can engage with its users and set it apart from the competition. Imagine users playing your game on the big screen with the game play literally in their face or taking a look at NASA rover stereoscopic photos with their smartphone and feeling like they are looking out the window at the Red Planet. That’s the kind of emotion and excitement that this technology brings to those who truly appreciate it.</p>
<p>The techniques we will review in the lab produce stereoscopic 3D output via the HDMI display in a manner that should be compatible with the majority of 3D TVs and monitors in the market today.  The diagram below provides an overview of what type of output is generated and I will have sample code on hand so that attendees can dive right in and integrate it into their applications.</p>
<p><a href="http://rimdevblog.files.wordpress.com/2013/05/3d1.jpg"><img class="aligncenter size-full wp-image-14914" alt="TITLE_IMAGE" src="http://rimdevblog.files.wordpress.com/2013/05/3d1-e1367860270327.jpg?w=600&#038;h=445" width="600" height="445" /></a></p>
<p>Is that all we will cover? Absolutely not. The stereoscopic techniques rely on HDMI output. HDMI output can be useful in a number of other types of apps as well. We will review some other use cases and show how the existing sample code can be adapted for those purposes. If you want to incorporate stereoscopic 3D output into your app or if you just want to know how to output content to the HDMI display in general, join in on the fun. After the lab is over, the 3D TV will be moved into the Jam Space for attendees so you will have the rest of the event to access the TV and test the changes you make to your apps and demo your efforts to others.  I’m looking forward to seeing what our developers produce with this new tool in their arsenal.</p>
<p><strong><a href="https://bblive.blackberryconferences.net/2013/connect/sessionDetail.ww?SESSION_ID=1822"> JAM39 &#8211; Build and Packaging for native apps </a></strong></p>
<p>As your app portfolio grows, you are probably trying to come up with ways to reuse code you wrote in a different application or organize it better, turnaround changes faster. Maybe the app’s download time is a little slow and you want to improve on it but don’t know how? If any of these questions apply to you, you want to attend this session. We will run through some tips and tricks we use for internal apps and some little known options available in the Momentics IDE to help you develop a build system to be more efficient during the development process.  We will show you some tips on how to build a Qt or Cascades shared library. If you develop on multiple platforms, we will share some tips from our porting guides on how best to create a shared pool of code that you can build on multiple platforms. If you want to use a shared library developed by someone else, we’ll show you how to integrate that library with the IDE for seamless integration with your apps.</p>
<p>These sessions are just the tip of the iceberg of the session catalog at this year’s conference. <a href="http://www.blackberryjamconference.com/" target="_blank">Join us in Orlando</a> and learn a lot about what you can do now and what’s coming in future versions of BlackBerry 10. I am looking forward to seeing some familiar faces and to meeting more developers again this year.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/14913/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/14913/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=14913&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2013/05/stereoscopic-3d-and-much-more/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7d0e94a7e96e80d5911732d43f31a39c?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alex K.</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2013/05/3d1-e1367860270327.jpg" medium="image">
			<media:title type="html">TITLE_IMAGE</media:title>
		</media:content>
	</item>
		<item>
		<title>Command Line Rocks! Building BlackBerry 10 Apps Without An IDE</title>
		<link>http://devblog.blackberry.com/2013/05/building-apps-without-an-ide/</link>
		<comments>http://devblog.blackberry.com/2013/05/building-apps-without-an-ide/#comments</comments>
		<pubDate>Mon, 06 May 2013 12:32:05 +0000</pubDate>
		<dc:creator>doturner</dc:creator>
				<category><![CDATA[How-to]]></category>
		<category><![CDATA[Native SDK Development]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[build]]></category>
		<category><![CDATA[command line]]></category>
		<category><![CDATA[compile]]></category>
		<category><![CDATA[deploy]]></category>
		<category><![CDATA[native]]></category>
		<category><![CDATA[sdk]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=14899</guid>
		<description><![CDATA[Don’t get me wrong, I love our Momentics IDE. It provides many features that help to build apps rapidly including the QML previewer and code auto-completion. Sometimes, however, it can be extremely useful to know what’s going on under-the-hood. This article will aim to explain how to build a native app from the command line, [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=14899&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Don’t get me wrong, I love <a href="http://developer.blackberry.com/native" target="_blank">our Momentics IDE</a>. It provides many features that help to build apps rapidly including the QML previewer and code auto-completion. Sometimes, however, it can be extremely useful to know what’s going on under-the-hood.</p>
<p>This article will aim to explain how to build a native app from the command line, using the tools bundled in the BlackBerry 10 Native SDK and your favourite text editor.</p>
<p><span id="more-14899"></span></p>
<h2>Set up your environment</h2>
<p>The Native SDK includes a script called bbndk-env.sh (or .bat on Windows) in the root folder that initialises the environment variables that the other tools depend on. I will refer to the install location of the Native SDK as $NDK_DIR.</p>
<pre>Mac: source $NDK_DIR/bbndk-env.sh
Win: $NDK_DIR/bbndk-env.bat</pre>
<h2>So what does this script set?</h2>
<p>The most important environment variables are:</p>
<p><b>QNX_TARGET</b>: This directory contains all the configuration files and libraries for the BlackBerry 10 device, the <i>target</i> that we want our app to run on.  You can see all the libraries which can be linked against in $QNX_TARGET/armle-v7/lib and $QNX_TARGET/armle-v7/usr/lib.</p>
<p><b>QNX_HOST</b>: This directory contains the tools and configuration files for our host system, ie Windows, Mac or Linux. It includes a compiler, linker and assembler for cross compiling to various architectures, as well as <a href="https://developer.blackberry.com/native/documentation/bb10/com.qnx.doc.native_sdk.devguide/com.qnx.doc.native_sdk.devguide/topic/c_understanddevenv_use_commandline.html">command line tools for packaging, signing and deploying your application</a>.</p>
<h2>Building for the ARM architecture</h2>
<p>You may have noticed the use of armle-v7 in the above directory structure. This refers to the processor architecture on BlackBerry 10: <b>ARM Little Endian Version 7</b>. To build binaries that run on BlackBerry 10 you need to compile for this architecture.</p>
<p>Start by creating a folder to hold our app&#8217;s files, call it GoodbyeIDE. From now on I will refer to this as $PROJECT_DIR. Inside this folder create a file called main.c with the following content:</p>
<pre>#include &lt;stdio.h&gt;
int main()
{
  fprintf(stdout, "Goodbye IDE!\n");
  return 0;
}</pre>
<p>Now lets compile it. Change to $PROJECT_DIR and execute:</p>
<pre>qcc -Vgcc_ntoarmv7le main.c -o main</pre>
<p>Lets explain this command in a bit more detail. qcc stands for QNX C Compiler. BlackBerry 10 is built on top of QNX and uses many of its build tools.</p>
<p>qcc is essentially a wrapper for gcc  (GNU Compiler Collection). The -V switch tells qcc which version of gcc to use, in this case its the ntoarmv7le version which stands for QNX Neutrino ARM Version 7 Little Endian (a bit of a mouthful).</p>
<p>To build for the BlackBerry 10 simulator you need to use the gcc version for the x86 architecture.</p>
<pre>qcc -Vgcc_ntox86 main.c -o main</pre>
<p>To view a full list of the available gcc versions run:</p>
<pre>qcc -V</pre>
<p>The main.c -o main part of the command just specifies the input C filename and output binary filename.</p>
<p>OK, so now we should have a binary (called main) that will run on a BlackBerry 10 device. This binary won&#8217;t run on your host operating system since it&#8217;s not compiled for the same architecture. If you have a working gcc you can compile it by doing:</p>
<pre>gcc main.c -o main2
./main2</pre>
<p>When you execute main2 you should see &#8220;Goodbye IDE&#8221;.</p>
<p><a href="http://rimdevblog.files.wordpress.com/2013/05/cmd1.png"><img class="size-full wp-image-14903 aligncenter" alt="TITLE_IMAGE" src="http://rimdevblog.files.wordpress.com/2013/05/cmd1.png?w=454&#038;h=190" width="454" height="190" /></a></p>
<h2>Create the BAR descriptor XML</h2>
<p>BlackBerry 10 apps are packaged as BAR (<b>B</b>lackBerry <b>A</b>pplication a<b>R</b>chive) files. To create a BAR file we need a descriptor file called bar-descriptor.xml. This file includes information about the app such as name, version, required permissions and a list of assets.</p>
<p>Create the bar-descriptor.xml file with the following content:</p>
<pre>&lt;qnx&gt;
  &lt;id&gt;com.example.GoodbyeIDE&lt;/id&gt;
  &lt;versionNumber&gt;1&lt;/versionNumber&gt;
  &lt;name&gt;Goodbye IDE&lt;/name&gt;
  &lt;asset path="main" entry="true"&gt;main&lt;/asset&gt;
&lt;/qnx&gt;</pre>
<p>From our point of view the most important line in bar-descriptor.xml is this one:</p>
<pre>&lt;asset path="main" entry="true"&gt;main&lt;/asset&gt;</pre>
<p>This specifies that the BAR contains a file called main which is the entry point for the app.</p>
<p><a href="https://developer.blackberry.com/native/documentation/bb10/com.qnx.doc.native_sdk.devguide/com.qnx.doc.native_sdk.devguide/topic/r_blackberry_tablet_dtd_intro.html#r_blackberry_tablet_dtd_intro">A full list of BAR application descriptor parameters is available here</a>.</p>
<h2>Packaging and deploying your app</h2>
<p>Now that we have a binary and an application descriptor we are ready to create a BAR file.</p>
<p>A BAR file is essentially a zip file which contains all your app&#8217;s assets and the meta information from bar-descriptor.xml. In fact, if you rename a .bar file to .zip you will be able to extract it to see all the files in that app.</p>
<p>To create a BAR file run the following command:</p>
<pre>blackberry-nativepackager -package GoodbyeIDE.bar bar-descriptor.xml -devMode -debugToken ~/Library/Research\ In\ Motion/debugtoken1.bar</pre>
<p>Note that the -devMode and -debugToken flags are only required if you are deploying to a physical device. This is a handy feature that allows you to deploy your app without signing it, as long as your debug token is installed on the device.</p>
<p>To do this you&#8217;ll need to <a href="https://www.blackberry.com/SignedKeys/codesigning.html">register with RIM to sign applications</a> and <a href="https://developer.blackberry.com/native/documentation/bb10/com.qnx.doc.native_sdk.devguide/com.qnx.doc.native_sdk.devguide/topic/t_setup_manual_create_debug_token_cmdline.html">create a debug token</a>.</p>
<p>So now you have a BAR file called GoodbyeIDE.bar you can deploy it to the device using the following command:</p>
<pre>blackberry-deploy -installApp 169.254.0.1 -password pass GoodbyeIDE.bar</pre>
<p><b>169.254.0.1</b> is the IP of your target and <b>pass</b> is the device password.</p>
<p>If you take a look at your application icons, you should see a new one called <b>Goodbye IDE</b> (as specified in the &lt;name&gt; tag in bar-descriptor.xml).</p>
<p><a href="http://rimdevblog.files.wordpress.com/2013/05/cmd2.png"><img class="aligncenter size-full wp-image-14904" alt="cmd2" src="http://rimdevblog.files.wordpress.com/2013/05/cmd2-e1367843338680.png?w=400&#038;h=400" width="400" height="400" /></a></p>
<p>If you tap on the icon your app should run! But&#8230;nothing happened, right?</p>
<h2>Viewing log files over SSH</h2>
<p>Actually the app did run, it&#8217;s just that all it did was print &#8220;Goodbye IDE!&#8221; to the stdout. The stdout on BlackBerry 10 is directed into a log file. We can view this log file by SSHing onto the device. Here&#8217;s how:</p>
<p>First we have to tell the device that we want to create a secure connection to it:</p>
<pre>blackberry-connect 169.254.0.1 -password pass</pre>
<p>Now open an SSH client (such as <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/">putty</a>) and run:</p>
<pre>ssh devuser@169.254.0.1</pre>
<p>You should now be connected via SSH. Feel free to poke around! Apps are installed in <b>/accounts/1000/appdata</b>. Each app is given its own <a href="https://developer.blackberry.com/native/documentation/bb10/com.qnx.doc.native_sdk.devguide/com.qnx.doc.native_sdk.devguide/topic/accessible_folders.html">sandbox folder</a> with a unique name based on its id (which we specified in bar-descriptor.xml).</p>
<p>Example sandbox folder name: <b>com.example.GoodbyeIDE.testDev__GoodbyeIDEcf9b848</b></p>
<p>The log file can be found in the <b>logs</b> directory under the sandbox folder name. To view the file just run:</p>
<pre>cat log</pre>
<p>The log file is re-created each time the app is run. To test that the app is working delete the log file, tap on the app icon and run the above command again.</p>
<h1>Summary</h1>
<p>That&#8217;s it for now. The next article will focus on making your life easier by using Makefiles, the Qt build system and creating a more logical project folder structure.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/14899/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/14899/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=14899&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2013/05/building-apps-without-an-ide/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/210521b8148cd3623a5b7883fcf4caa4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">doturner</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2013/05/cmd1.png" medium="image">
			<media:title type="html">TITLE_IMAGE</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2013/05/cmd2-e1367843338680.png" medium="image">
			<media:title type="html">cmd2</media:title>
		</media:content>
	</item>
		<item>
		<title>BlackBerry Jam Unplugged: Headless Apps</title>
		<link>http://devblog.blackberry.com/2013/04/blackberry-jam-unplugged-headless-apps/</link>
		<comments>http://devblog.blackberry.com/2013/04/blackberry-jam-unplugged-headless-apps/#comments</comments>
		<pubDate>Fri, 19 Apr 2013 13:59:50 +0000</pubDate>
		<dc:creator>Tim N.</dc:creator>
				<category><![CDATA[Cascades]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Native SDK Development]]></category>
		<category><![CDATA[Platform Services]]></category>
		<category><![CDATA[Headless]]></category>
		<category><![CDATA[Jam]]></category>
		<category><![CDATA[native]]></category>
		<category><![CDATA[Service]]></category>
		<category><![CDATA[Unplugged]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=14725</guid>
		<description><![CDATA[You can now check out the latest video in the BlackBerry Jam Unplugged series, where we give some more insight around our considerations for upcoming headless applications on BlackBerry 10. We’ll be continuing this video series leading up to BlackBerry Jam Americas in Orlando in order to give some more background surrounding the topics that [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=14725&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>You can now check out the latest video in the <a href="http://devblog.blackberry.com/?s=jam+unplugged&amp;search=" target="_new">BlackBerry Jam Unplugged series</a>, where we give some more insight around our considerations for upcoming headless applications on BlackBerry 10.</p>
<p><span id="more-14725"></span></p>
<p>We’ll be continuing this video series leading up to <a href="http://www.blackberryjamconference.com/americas" target="_new">BlackBerry Jam Americas in Orlando</a> in order to give some more background surrounding the topics that we’ll be discussing in detail during the conference.</p>
<p>In this particular video, we’re joined by Geordie Ferguson to talk to us about the ins and outs of headless applications and the areas that we’re exploring to bring this type of functionality to an upcoming release of BlackBerry 10.</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/4vDztfxSdvE?version=3&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;wmode=transparent' frameborder='0'></iframe></span>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/14725/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/14725/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=14725&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2013/04/blackberry-jam-unplugged-headless-apps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/3939390650b170ba28e9bf3c53d397ad?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">timneil1</media:title>
		</media:content>
	</item>
		<item>
		<title>BlackBerry Developer Relations Pairs Up With Skillsmatter</title>
		<link>http://devblog.blackberry.com/2013/02/blackberry-skillsmatter/</link>
		<comments>http://devblog.blackberry.com/2013/02/blackberry-skillsmatter/#comments</comments>
		<pubDate>Tue, 26 Feb 2013 13:44:18 +0000</pubDate>
		<dc:creator>Alex Kinsella</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[BlackBerry 10]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[london]]></category>
		<category><![CDATA[native]]></category>
		<category><![CDATA[native sdk]]></category>
		<category><![CDATA[Skillsmatter]]></category>
		<category><![CDATA[webworks]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=13927</guid>
		<description><![CDATA[Guest post from Marysia &#8211; Ed. The BlackBerry Developer Relations team has paired up with Skillsmatter to offer training on BlackBerry 10 development. To kick off the partnership, we are running a BlackBerry Jam event on March 7th in London. Our dynamic duo of Developer Evangelists from the UK, Luca Sale and Don Turner, will [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=13927&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><i>Guest post from Marysia &#8211; Ed.</i></p>
<p><img class="aligncenter size-full wp-image-13951" alt="TITLE_IMAGE" src="http://rimdevblog.files.wordpress.com/2013/02/bcbiaapciaex9ng.jpg?w=600&#038;h=450" width="600" height="450" /></p>
<p>The <a href="http://developer.blackberry.com/devzone/jamcommunity/profiles/devrel.html" target="_new">BlackBerry Developer Relations team</a> has paired up with <a href="http://skillsmatter.com/event-details/home/blackberry-10-jam/mh-6701" target="_new">Skillsmatter</a> to offer training on BlackBerry 10 development. To kick off the partnership, we are running a <a href="http://skillsmatter.com/event-details/home/blackberry-10-jam/mh-6701" target="_new">BlackBerry Jam</a> event on March 7th in London.</p>
<p>Our dynamic duo of Developer Evangelists from the UK, <a href="https://twitter.com/blackberryluca" target="_new">Luca Sale</a> and <a href="https://twitter.com/donturner" target="_new">Don Turner</a>, will run the bulk of the program which will cover everything you need to know about development for BlackBerry 10.</p>
<p>Attendees will gain insight on building applications for the new BlackBerry 10 platform. Beginner and master mobile application developers will be able to attend in-depth sessions focused on HTML5 development with <a href="\Users\akinsella\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.Outlook\BXTRUBXA\developer.blackberry.com\html5" target="_new">BlackBerry WebWorks</a> and Native C/C++ development for the BlackBerry platform with our <a href="http://developer.blackberry.com/native/" target="_new">BlackBerry 10 Native SDK</a>. Developers will be able to interact with development experts who can provide guidance, tips and tricks, and other information to help get started building apps for BlackBerry 10.</p>
<p>After a fully packed day of sessions, we’ll head to the local pub!</p>
<p>To find out more and register, please visit <a href="http://skillsmatter.com/event-details/home/blackberry-10-jam/mh-6701" target="_new">Skillsmatter</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/13927/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/13927/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=13927&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2013/02/blackberry-skillsmatter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7d0e94a7e96e80d5911732d43f31a39c?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alex K.</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2013/02/bcbiaapciaex9ng.jpg" medium="image">
			<media:title type="html">TITLE_IMAGE</media:title>
		</media:content>
	</item>
		<item>
		<title>BlackBerry Java to BlackBerry 10 Cascades Porting Series – Part 3: Networking</title>
		<link>http://devblog.blackberry.com/2013/02/java-to-cascades-part-3/</link>
		<comments>http://devblog.blackberry.com/2013/02/java-to-cascades-part-3/#comments</comments>
		<pubDate>Mon, 25 Feb 2013 14:53:20 +0000</pubDate>
		<dc:creator>Paul Bernhardt</dc:creator>
				<category><![CDATA[Native SDK Development]]></category>
		<category><![CDATA[BlackBerry 10]]></category>
		<category><![CDATA[BlackBerry 7]]></category>
		<category><![CDATA[Cascades]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[native]]></category>
		<category><![CDATA[networking]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=13908</guid>
		<description><![CDATA[Networking in BlackBerry 7 OS was based on the Connector.open() paradigm, where you would specify the protocol and transport in the connection string (“http://www.example.com;deviceside=true”), and get back a Connection object of a certain type (HttpConnection, for example). Networking in BlackBerry 10 is done through the QNetwork module. You no longer need to worry about transport [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=13908&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Networking in BlackBerry 7 OS was based on the Connector.open() paradigm, where you would specify the protocol and transport in the connection string (“http://www.example.com;deviceside=true”), and get back a Connection object of a certain type (HttpConnection, for example).</p>
<p><a href="https://developer.blackberry.com/cascades/documentation/device_comm/networking/index.html">Networking</a> in BlackBerry 10 is done through the <a href="https://developer.blackberry.com/cascades/reference/qtnetwork.html" target="_new">QNetwork</a> module. You no longer need to worry about transport selection. Your typical HTTP communication can be handled through <a href="https://developer.blackberry.com/cascades/reference/qnetworkaccessmanager.html" target="_new">QNetworkAccessManager</a>. It provides methods such as get() and post(), which take a <a href="https://developer.blackberry.com/cascades/reference/qnetworkrequest.html" target="_new">QNetworkRequest</a> and then asynchronously return a <a href="https://developer.blackberry.com/cascades/reference/qnetworkreply.html" target="_new">QNetworkReply</a>.</p>
<p><strong>For example:</strong></p>
<pre>QUrl *url = new QUrl("http://www.iana.org/domains/example/");

    QNetworkAccessManager *manager = new QNetworkAccessManager(this);

    connect(manager, SIGNAL(finished(QNetworkReply*)),
    		this, SLOT(replyFinished(QNetworkReply*)));

    manager-&gt;get(QNetworkRequest(*url));</pre>
<p><strong>And then in your replyFinished slot:</strong></p>
<pre>void App::replyFinished(QNetworkReply* reply) {
	qDebug() &lt;readAll();

	// Call deleteLater to make sure the reply gets cleaned up
	reply-&gt;deleteLater();
}</pre>
<p>You can also do TCP with <a href="https://developer.blackberry.com/cascades/reference/qtcpsocket.html" target="_new">QTCPSocket</a> and <a href="https://developer.blackberry.com/cascades/reference/qtcpserver.html" target="_new">QTCPServer</a>, UDP with <a href="https://developer.blackberry.com/cascades/reference/qudpsocket.html">UDPSocket</a> , and FTP with <a href="https://developer.blackberry.com/cascades/reference/qftp.html" target="_new">QFtp</a>.</p>
<p>And of course, lower level <a href="http://developer.blackberry.com/native/reference/bb10/library_support_at_a_glance.html" target="_new">libraries</a> such as <a href="http://curl.haxx.se/" target="_new">cURL</a> are available if you should require them.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/13908/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/13908/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=13908&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2013/02/java-to-cascades-part-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7a3bf8c930434e9f401be449eb7ea556?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paulbe1</media:title>
		</media:content>
	</item>
		<item>
		<title>BlackBerry 10 Native SDK January Refresh</title>
		<link>http://devblog.blackberry.com/2013/01/native-sdk-january-refresh/</link>
		<comments>http://devblog.blackberry.com/2013/01/native-sdk-january-refresh/#comments</comments>
		<pubDate>Fri, 11 Jan 2013 00:30:52 +0000</pubDate>
		<dc:creator>russellandrade</dc:creator>
				<category><![CDATA[Native SDK Development]]></category>
		<category><![CDATA[BlackBerry 10]]></category>
		<category><![CDATA[Cascades]]></category>
		<category><![CDATA[native]]></category>
		<category><![CDATA[native sdk]]></category>
		<category><![CDATA[ndk]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=12984</guid>
		<description><![CDATA[We&#8217;re getting closer to the launch date for BlackBerry 10 &#8211; and that means making sure all the T&#8217;s are crossed and I&#8217;s are dotted. Following up on the gold SDK release last month, this release of the BlackBerry 10 Native SDK does not add any net new functionality to our tooling and APIs but [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=12984&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>We&#8217;re getting closer to the launch date for BlackBerry 10 &#8211; and that means making sure all the T&#8217;s are crossed and I&#8217;s are dotted. Following up on the gold SDK release last month, this release of the <a href="developer.blackberry.com/native/" target="_blank">BlackBerry 10 Native SDK</a> does not add any net new functionality to our tooling and APIs but rather is a compatibility update to new device software that continue to get built.</p>
<p>Our SDKs (both API and tooling) remain gold as of the previous release and we have not introduced any new API or tooling changes in this release.  However, that being said, we continue to build new versions of the BlackBerry 10 device software that contain various bug fixes and stability improvements.  Our BlackBerry 10 software is being tested by over 150 carriers around the world and as they provide feedback we continue to release software incorporating this feedback.</p>
<p><span id="more-12984"></span></p>
<p>What this means is that even though our API signatures and tooling are not changing; the underlying device software will go through a continuous improvement cycle. As an app developer you will want to upgrade to the latest software on your BlackBerry 10 Dev Alpha testing device in order to get the latest fixes as well as perform some sanity testing with your app to make sure there are no unexpected issues.  If you are trying to debug your app on the latest and greatest device release, you will likely want to pick up the latest Native SDK target OS so that you can get the right libraries and symbols for debugging on the latest version of device software that you are working with.</p>
<p>The good news is that you can download the the latest Native SDK target OS via the Update Manager that we provide as part of our Momentics IDE suite. If you click on Help in the menu bar, you will see an item that says ‘Update Native SDK’.</p>
<p style="text-align:center;"><a href="http://rimdevblog.files.wordpress.com/2013/01/devblog-native-january.png"><img class="aligncenter  wp-image-12985" alt="TITLE_IMAGE" src="http://rimdevblog.files.wordpress.com/2013/01/devblog-native-january.png?w=614&#038;h=367" width="614" height="367" /></a></p>
<p>Once you click on Update Native SDK, you will see a dialog pop up that provides a list of Native SDK targets OS releases you can download. The latest Native SDK target OS as of the time of writing of this blog article is BlackBerry 10 Native SDK 10.0.9.2318. You should see this in the list.  Select it via the checkbox, click Next and follow the steps to download the latest Native SDK target OS.</p>
<p><a href="http://rimdevblog.files.wordpress.com/2013/01/devblog-native-january-2.png"><img class="aligncenter size-full wp-image-12986" alt="devblog - native january 2" src="http://rimdevblog.files.wordpress.com/2013/01/devblog-native-january-2.png?w=613&#038;h=739" width="613" height="739" /></a></p>
<p>As we get closer to the launch date of our device and the gold release of our BlackBerry 10 device software we want to make sure that you have the latest BlackBerry 10<span style="font-size:11px;"> </span>Native SDK target to test and debug with on your BlackBerry 10 Dev Alpha testing devices.  As we build new iterations of our OS software, we will continue to release these to you via our Update Manager so you can keep up with the most recent versions.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/12984/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/12984/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=12984&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2013/01/native-sdk-january-refresh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/aacfb04e6b02273d991e7bb0c519fdec?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">russellandrade</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2013/01/devblog-native-january.png" medium="image">
			<media:title type="html">TITLE_IMAGE</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2013/01/devblog-native-january-2.png" medium="image">
			<media:title type="html">devblog - native january 2</media:title>
		</media:content>
	</item>
		<item>
		<title>The Best of Native and Cascades Development 2012</title>
		<link>http://devblog.blackberry.com/2012/12/the-best-of-native-and-cascades-development-2012/</link>
		<comments>http://devblog.blackberry.com/2012/12/the-best-of-native-and-cascades-development-2012/#comments</comments>
		<pubDate>Thu, 27 Dec 2012 15:23:27 +0000</pubDate>
		<dc:creator>Alex Kinsella</dc:creator>
				<category><![CDATA[Cascades]]></category>
		<category><![CDATA[Editorials]]></category>
		<category><![CDATA[Native SDK Development]]></category>
		<category><![CDATA[Qt]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[native]]></category>
		<category><![CDATA[native sdk]]></category>
		<category><![CDATA[ndk]]></category>
		<category><![CDATA[porting]]></category>
		<category><![CDATA[qt]]></category>
		<category><![CDATA[webcast]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=12848</guid>
		<description><![CDATA[Guest post from native development guru Erin R &#8211; Ed. Update &#8211; Brian Scheirer pointed out that there have been some awesome community samples too! -Ed. For me, 2012 has definitely been a year of helping developers learn about our native and Cascades development tools. If you&#8217;re like me, you&#8217;re probably spending the holiday nights [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=12848&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><em>Guest post from native development guru <a href="https://twitter.com/ERahnen" target="_blank">Erin R</a> &#8211; Ed.</em></p>
<p><em>Update &#8211; Brian Scheirer pointed out that there have been some awesome <a href="https://github.com/blackberry/Cascades-Community-Samples" target="_blank">community samples</a> too! -Ed.</em></p>
<p><img class="aligncenter size-full wp-image-12851" alt="TITLE_IMAGE" src="http://rimdevblog.files.wordpress.com/2012/12/devblog-best-of-native.png?w=447&#038;h=301" width="447" height="301" /></p>
<p>For me, 2012 has definitely been a year of helping developers learn about our native and Cascades development tools. If you&#8217;re like me, you&#8217;re probably spending the holiday nights doing some coding &#8211; so I&#8217;ve put together this list of &#8220;The Best of Native Development for 2012&#8243;.</p>
<p><strong>Cascades Webcasts<br />
</strong>Thousands of developers from across the globe joined us for four webcasts to learn beginner to advanced Cascades concepts.  We were able to interact with developers directly, answer questions, and get immediate feedback as samples and code were displayed.  The format proved so successful that we&#8217;ve hosted many more webcasts on topics such as the BBM social platform, augmented reality apps, and OpenGL integration.</p>
<p>The live web casts were recorded and are available for viewing <a href="https://developer.blackberry.com/cascades/documentation/videos/" target="_blank">here</a>.</p>
<p><strong>Porting Guides<br />
</strong>If you have existing content for another platform, we are making it easy to bring that content to the BlackBerry 10 platform.  Being able to re-use code across platforms reduces development and maintenance costs.  Distributing your application to multiple platforms opens you up to whole new market segments and increases your potential user base.  There a number of informative porting guides available to help you build for BlackBerry 10.</p>
<ul>
<li>iOS to BlackBerry 10 - <a href="http://devblog.blackberry.com/2012/12/porting-ios-apps-to-blackberry-10/">http://devblog.blackberry.com/2012/12/porting-ios-apps-to-blackberry-10/</a></li>
<li>Android to BlackBerry 10 - <a href="http://devblog.blackberry.com/2012/11/porting-android-game-to-blackberry-10/">http://devblog.blackberry.com/2012/11/porting-android-game-to-blackberry-10/</a></li>
<li>Qt to BlackBerry 10 - <a href="http://devblog.blackberry.com/2012/11/porting-qt-apps-to-blackberry-10/">http://devblog.blackberry.com/2012/11/porting-qt-apps-to-blackberry-10/</a></li>
</ul>
<p><strong>Samples</strong><br />
The best and easiest way to learn to program is to look at sample code.  For every feature that BlackBerry 10 offers there is a sample project showing you how to put it into action.  Whether it’s integrating with BBM, using the Invocation Framework, getting sensor information, or communicating via Bluetooth, we&#8217;ve got you covered.</p>
<p>There are samples built right into the Momentics development environment, on the Cascades and Native microsites, and hosted on our github repo.  And if you find a feature that we missed, or an API without a clear example then let us know on Twitter @BlackBerryDev or in our developer forums and we’ll add what you need to get started!</p>
<ul>
<li>Cascades Samples - <a href="https://github.com/blackberry/Cascades-Samples">https://github.com/blackberry/Cascades-Samples</a></li>
<li>Native SDK Samples - <a href="https://github.com/blackberry/NDK-Samples">https://github.com/blackberry/NDK-Samples</a></li>
<li>Cascades Microsite - <a href="https://developer.blackberry.com/cascades/sampleapps/">https://developer.blackberry.com/cascades/sampleapps/</a></li>
</ul>
<p><strong>Stump the BlackBerry Devs<br />
</strong>In August we launched a challenge to the BlackBerry Developer community to come up with a UI that would be difficult to implement in the Cascades UI framework.  The Cascades tools development team would try to implement the submissions in a flexible manner that could handle multiple screen resolutions and form factors.  They implemented three of the challenges and presented the solutions during the Unconference Day at BlackBerry Jam Americas.  We were able to show that Cascades is robust framework that is able to create stunning interfaces even when faced with challenging design requirements.  All the solutions are hosted on our<a href="https://github.com/blackberry/Cascades-Community-Samples/tree/master/stumpers" target="_blank">github repo</a>.</p>
<p>If you have any Cascades or native dev questions &#8211; check out our <a href="http://supportforums.blackberry.com/t5/Developer-Support-Forums/ct-p/blackberrydev" target="_blank">forums</a> and connect with me on <a href="https://twitter.com/ERahnen" target="_blank">Twitter</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/12848/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/12848/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=12848&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2012/12/the-best-of-native-and-cascades-development-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7d0e94a7e96e80d5911732d43f31a39c?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alex K.</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2012/12/devblog-best-of-native.png" medium="image">
			<media:title type="html">TITLE_IMAGE</media:title>
		</media:content>
	</item>
		<item>
		<title>Gold Dev Tools Webcast Tomorrow!</title>
		<link>http://devblog.blackberry.com/2012/12/gold-dev-tools-webcast/</link>
		<comments>http://devblog.blackberry.com/2012/12/gold-dev-tools-webcast/#comments</comments>
		<pubDate>Mon, 17 Dec 2012 16:47:57 +0000</pubDate>
		<dc:creator>Ken W</dc:creator>
				<category><![CDATA[Native SDK Development]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[blackberry webworks]]></category>
		<category><![CDATA[gold build]]></category>
		<category><![CDATA[native]]></category>
		<category><![CDATA[ndk]]></category>
		<category><![CDATA[sdk]]></category>
		<category><![CDATA[webcast]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=12744</guid>
		<description><![CDATA[Everyone loves a good webinar. OK, perhaps that’s an overstatement. Nevertheless, we hear loud and clear that our developer community loves them. The series of webinars we have run throughout the summer in conjunction with each successive SDK release have been extremely successful. So why stop now? Tomorrow &#8211; Tuesday, December 18th – we are [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=12744&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><img class="aligncenter" alt="" src="http://farm9.staticflickr.com/8174/8025132500_e743d59588.jpg" width="500" height="333" /></p>
<p>Everyone loves a good webinar. OK, perhaps that’s an overstatement. Nevertheless, we hear loud and clear that our developer community loves them. The series of webinars we have run throughout the summer in conjunction with each successive SDK release have been extremely successful. So why stop now? Tomorrow &#8211; Tuesday, December 18th – we are bringing you two webinars that will cover all the latest information related to gold release Native and HTML5 SDKs for BlackBerry 10. The launch event date is coming up fast, so head on over to the registration pages and mark your calendars.</p>
<h3><strong>BlackBerry 10 Native SDK</strong></h3>
<p>We will take a quick look at what we have achieved so far with our native SDK. We will then look at the latest and greatest API and tooling features that have arrived in this most recent beta as well as the beta that preceded it. This includes things like advertising, SMS and invocation framework enhancements. Also, for the first time you will get a quick preview of the cards that are available to invoke and how you can invoke them. We will also cover some of the important IDE enhancements that have arrived, including the update manager, a brand new spanking project wizard, and the latest and greatest features that have been added to the Microsoft Visual Studio Plugin.</p>
<p><strong>REGISTRATION:</strong><br />
<a href="http://www.blackberrydeveloperevents.com/events/webcast/registration/register.html?scoid=1079239157" target="_new">http://www.blackberrydeveloperevents.com/events/webcast/registration/register.html?scoid=1079239157</a></p>
<h3><strong>BlackBerry 10 WebWorks SDK</strong></h3>
<p>We&#8217;ll take a look at the latest gold release as well as the most recent beta that preceded it. Starting with a quick overview of BlackBerry WebWorks, we will move to a summary of all of the latest features. We will then dive deeper into some of the more interesting features with a live look at code and functioning samples.</p>
<p><strong>REGISTRATION:</strong><br />
<a href="http://www.blackberrydeveloperevents.com/events/webcast/registration/register.html?scoid=1079318388" target="_new">http://www.blackberrydeveloperevents.com/events/webcast/registration/register.html?scoid=1079318388</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/12744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/12744/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=12744&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2012/12/gold-dev-tools-webcast/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/3b422c1a037b89d4ddf5bef834dbdeef?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kjwallis</media:title>
		</media:content>

		<media:content url="http://farm9.staticflickr.com/8174/8025132500_e743d59588.jpg" medium="image" />
	</item>
		<item>
		<title>Attention iOS Developers: Now is the time to bring your iOS apps to BlackBerry 10</title>
		<link>http://devblog.blackberry.com/2012/12/porting-ios-apps-to-blackberry-10/</link>
		<comments>http://devblog.blackberry.com/2012/12/porting-ios-apps-to-blackberry-10/#comments</comments>
		<pubDate>Fri, 14 Dec 2012 17:23:12 +0000</pubDate>
		<dc:creator>Alex Kinsella</dc:creator>
				<category><![CDATA[Cascades]]></category>
		<category><![CDATA[Native SDK Development]]></category>
		<category><![CDATA[apps]]></category>
		<category><![CDATA[BlackBerry 10]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[native]]></category>
		<category><![CDATA[porting]]></category>

		<guid isPermaLink="false">http://devblog.blackberry.com/?p=12714</guid>
		<description><![CDATA[Guest post from Eun-Kyung Choi &#8211; Ed. Why BlackBerry? Over the past months, we’ve been showing you what the new BlackBerry 10 platform is all about and how easy it is to create rich and astonishing-looking apps for BlackBerry 10 using the Cascades UI framework. Not only does BlackBerry 10 offer an awesome platform and [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=12714&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><i>Guest post from Eun-Kyung Choi &#8211; Ed.</i></p>
<h3><strong>Why BlackBerry?</strong></h3>
<p>Over the past months, we’ve been showing you what the new BlackBerry 10 platform is all about and how easy it is to create rich and astonishing-looking apps for BlackBerry 10 using the Cascades UI framework. Not only does BlackBerry 10 offer an awesome platform and an <a href="https://developer.blackberry.com/devzone/develop/platform_choice/index.html" target="_new">extensive set of tools</a> to choose from, but <a href="https://developer.blackberry.com/appworld" target="_new">BlackBerry World</a> is the most profitable mobile application store for app developers to submit their apps. According to the Evans Data Corporation, 13% of vendors using BlackBerry World are making over $100,000, which is more than Apple, Android and Windows Mobile. With BlackBerry 10, you have the option to integrate your application with <a href="https://developer.blackberry.com/develop/bbm_connected/bbm.html" target="_new">BBM functionality</a>, thus increasing the engagement and discoverability of your app. It is reported that BBM connected apps make up 20% of the app downloads from BlackBerry World. Also, the <a href="http://developer.blackberry.com/builtforblackberry" target="_new">Built for BlackBerry Program</a> and the <a href="http://developer.blackberry.com/10K" target="_new">$10K Developer Commitment</a> programs are offering amazing incentives to bring your app to BlackBerry 10. I’d say that is a pretty convincing motivation to start developing apps on BlackBerry 10. So let’s get started!</p>
<h3><strong>Tips on Porting Native iOS apps to BlackBerry 10</strong></h3>
<p>Knowing that you’ve already developed and deployed profitable apps on the iOS platform, we would also like to see your great apps on BlackBerry 10 and watch you march toward another successful launch. To help you along, we have compiled several tips to help you through the porting process. We published a detailed <a href="https://developer.blackberry.com/cascades/documentation/getting_started/porting/index.html" target="_new">porting guide for iOS apps</a> on our <a href="https://developer.blackberry.com/cascades/" target="_new">Cascades microsite</a>. The guide describes the similarities and differences between native iOS and BlackBerry 10 apps and platforms, as well as providing information and best practices for the porting process.</p>
<p><span id="more-12714"></span></p>
<h3><strong>Tip 1: Know the Platforms and SDKs: iOS VS BlackBerry 10</strong></h3>
<p><img class="aligncenter size-full wp-image-12715" alt="TITLE_IMAGE" src="http://rimdevblog.files.wordpress.com/2012/12/ios-blackberry-10-porting-1.jpg?w=550&#038;h=278" width="550" height="278" /></p>
<p>Both the iOS and BlackBerry 10 platforms:</p>
<ul>
<li>Manage the device hardware and provide the technologies and services to develop native apps;</li>
<li>Provide their own SDK to build, test and deploy native apps which can run directly on their devices;</li>
<li>Communicate directly with underlying hardware through well-defined APIs;</li>
<li>Are structured similarly in a layered manner, outlined in the image above. BlackBerry 10 is based on the QNX Neutrino RTOS. The QNX Neutrino RTOS acts as a kernel and gives the platform key functionality such as multi-tasking and memory management. Both platforms offer core services, graphics and audio accessibilities, application and UI development frameworks.</li>
</ul>
<p>Because both platforms use this layered architecture, the way you use frameworks is similar between iOS and BlackBerry 10. As a best practice for both platforms, you want to use higher-level frameworks over lower-level frameworks in your app whenever possible. This helps to reduce the amount of code you have to write, and can simplify complex features. This applies when creating new apps, as well as porting existing apps. The important thing to note for the porting process is that in most cases, although the frameworks are different between iOS and BlackBerry 10, there are equivalent APIs that you can use to map iOS frameworks to BlackBerry 10. In our <a href="https://developer.blackberry.com/cascades/documentation/getting_started/porting/index.html" target="_new">iOS porting guide</a>, we provide more detailed mappings for commonly used classes and UI components between iOS and BlackBerry 10.</p>
<h3><strong>Tip 2: Know the Development Tools: Xcode VS QNX Momentics IDE</strong></h3>
<p>One of the challenges of bringing your app to a different platform is learning to use a new IDE. Xcode and the QNX Momentics IDE share a number of similar features such as creating projects, designing user interfaces, writing code, debugging and running applications on simulators or devices which should offer some familiarity for experienced iOS developers. Both tools come with a project explorer, a source editor, and a UI previewer/editor to organize and write the application code using static libraries and plug-ins. Both tools support the gcc compiler to compile C/C++, and it is possible to perform source level debugging using GDB.</p>
<p><img class="aligncenter size-full wp-image-12716" alt="ios-blackberry-10-porting-2" src="http://rimdevblog.files.wordpress.com/2012/12/ios-blackberry-10-porting-2.jpg?w=550&#038;h=275" width="550" height="275" /></p>
<p>Xcode has an integrated UI design tool called Interface Builder and uses Objective-C for creating the UI for apps.</p>
<p><img class="aligncenter size-full wp-image-12717" alt="ios-blackberry-10-porting-3" src="http://rimdevblog.files.wordpress.com/2012/12/ios-blackberry-10-porting-3.jpg?w=550&#038;h=280" width="550" height="280" /></p>
<p>The QNX Momentics IDE is an Eclipse based environment to develop native BlackBerry 10 applications. It comes with the built-in <a href="https://developer.blackberry.com/cascades/documentation/getting_started/cascades_builder/index.html" target="_new">Cascades Builder</a> for the UI development using C/C++ and QML. Understanding and familiarizing with the development tools will lead you to make better choices during the porting process.</p>
<h3><strong>Tip 3: Know the Development Language: Objective-C, C/C++ and QML</strong></h3>
<p>Native iOS apps are built using Objective-C language and frameworks while Native BlackBerry 10 apps can be developed using C/C++ and QML. Because Objective-C is a set of extensions to the standard ANSI C language, you can mix Objective-C with C/C++ code. This similarity between Objective C and C/C++ allows you to reuse the Objective-C code that you already have by wrapping to C++ using the PIMPL idiom. In the context of porting your app, wrapping allows you to use your existing Objective C libraries on BlackBerry 10.</p>
<p>QML is a JavaScript-based, declarative language for developing an application’s user interface. If you are not familiar with QML, don’t worry! Cascades gives you the flexibility to create your UI in both QML and C++. Here is <a href="https://developer.blackberry.com/cascades/documentation/dev/integrating_cpp_qml/index.html" target="_new">how to integrate the two</a> in detail. The following two code samples written in QML and C++ achieve the same result when the application is run.</p>
<p><strong>Adding a label using QML</strong></p>
<pre>import bb.cascades 1.0
Page {
    content: Label {
        text: "Hello world"
    }
}</pre>
<p><strong>Adding a label using C++</strong></p>
<pre>Page* root = new Page;
Label* label = Label::create()
                .text("Hello world");
root-&gt;setContent(label);
app-&gt;setScene(root);</pre>
<h3><strong>Tip 4: Design your app targeting multiple platforms: Reuse! Reuse! Reuse!</strong></h3>
<p>It will save you a lot of time during the porting process if your native application is designed and developed targeting multiple platforms by separating UI code, business logic and platform dependent code. Follow the best practices to develop cross-platform applications:</p>
<ul>
<li>Separate business logic from UI code following the Model-View-Controller (MVC) pattern. BlackBerry 10 doesn’t enforce you to follow the MVC pattern. Although you can develop your app’s UI in both QML and C++, it is encouraged to write UI code in QML and business logic in C++ since the benefits of this practice are greater when porting apps.</li>
<li>Use cross-platform libraries, frameworks, and engines to maximize the reuse of your app code. For example, consider using Open Audio Library (OpenAL) interface for audio and OpenGL ES for graphics. They are a cross-platform standard.</li>
<li>Use SQLite for the app’s database engine. It is supported on both iOS and BlackBerry 10.</li>
<li>Wrap your Objective-C code to C++ to reuse.</li>
<li>Isolate platform dependent code and package them separately. You can replace or rewrite the platform specific code by mapping the equivalent or similar classes and functions.</li>
</ul>
<p><img class="aligncenter size-full wp-image-12718" alt="ios-blackberry-10-porting-4" src="http://rimdevblog.files.wordpress.com/2012/12/ios-blackberry-10-porting-4.jpg?w=550&#038;h=276" width="550" height="276" /></p>
<p>There isn’t an easy way to reuse your UI code and platform specific code. After all, iOS and BlackBerry 10 are two different platforms. You would have to spend some time researching and finding <a href="https://developer.blackberry.com/cascades/documentation/getting_started/porting/objc_cascades.html" target="_new">similar classes</a>, <a href="https://developer.blackberry.com/cascades/documentation/getting_started/porting/mapping.html" target="_new">UI elements</a>, and/or <a href="https://developer.blackberry.com/cascades/documentation/getting_started/porting/componentsandservices.html" target="_new">equivalent components</a> between iOS and BlackBerry 10 for porting. The good news is that we put significant amount of resources to guide you through the process. The porting guides, webcasts, blogs and forums are one click away on our <a href="https://developer.blackberry.com/" target="_new">BlackBerry Developer’s Website</a>.</p>
<h3><strong>Tip 5: Quality, not Quantity: Follow BlackBerry 10 UI guidelines and best practices</strong></h3>
<p>Follow the BlackBerry 10 UI guidelines and <a href="https://developer.blackberry.com/devzone/design/cinematic_experience.html" target="_new">design principles</a> to create the best experience possible for your users and take advantage of the unique BlackBerry 10 features. BlackBerry 10 eliminates gaps between action and response, makes the experience smooth and effortless avoiding any interruption in the flow, and creates an experience where content is maximized in your app. Aim for 60 frames per second (FPS) so that the UI and the screen refresh rate are in sync.</p>
<p>There you have it. Port responsibly!</p>
<p>For more information about porting iOS apps to BlackBerry 10, please refer to the following:</p>
<p><a href="https://developer.blackberry.com/devzone/design/menus.html" target="_new">BlackBerry 10 Best Practices</a><br />
<a href="https://developer.blackberry.com/cascades/documentation/getting_started/porting/index.html" target="_new">Porting native iOS apps</a><br />
<a href="http://developer.blackberry.com/native/beta/documentation/porting_ios_intro.html" target="_new">Porting apps from iOS</a><br />
<a href="http://developer.blackberry.com/native/beta/documentation/library_support_at_a_glance.html" target="_new">BlackBerry 10 Library Support at a glance</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rimdevblog.wordpress.com/12714/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rimdevblog.wordpress.com/12714/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=devblog.blackberry.com&#038;blog=17235680&#038;post=12714&#038;subd=rimdevblog&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://devblog.blackberry.com/2012/12/porting-ios-apps-to-blackberry-10/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7d0e94a7e96e80d5911732d43f31a39c?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Alex K.</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2012/12/ios-blackberry-10-porting-1.jpg" medium="image">
			<media:title type="html">TITLE_IMAGE</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2012/12/ios-blackberry-10-porting-2.jpg" medium="image">
			<media:title type="html">ios-blackberry-10-porting-2</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2012/12/ios-blackberry-10-porting-3.jpg" medium="image">
			<media:title type="html">ios-blackberry-10-porting-3</media:title>
		</media:content>

		<media:content url="http://rimdevblog.files.wordpress.com/2012/12/ios-blackberry-10-porting-4.jpg" medium="image">
			<media:title type="html">ios-blackberry-10-porting-4</media:title>
		</media:content>
	</item>
	</channel>
</rss>
