There are many benefits to open-source code and one of them is contributions from the community. We’re very happy that Paweł Hofman has made many improvements which are included in this latest release. We’ll have a feature blog on Paweł later this week.

In this latest release of the BlackBerry Native Plug-in for Microsoft Visual Studio (version 3.0 Gold) there are many updates which improve usability. The plug-in is only compatible with Microsoft Visual Studio 2013 as Microsoft Visual Studio 2012/2010 are no longer supported. The following highlights the updates to the Plug-in:

Added a Target Navigator to show command-line and environment variables for processes

Fixed numerous bugs

Learn more about all these features and download the BlackBerry Native Plug-in for Microsoft Visual Studio from our website.

]]>http://devblog.blackberry.com/2015/03/more-gold-blackberry-native-plug-in-for-microsoft-visual-studio/feed/0VS30lgazzolaVS30Enterprise Developer Groups Spotlight: Toby Clenchhttp://devblog.blackberry.com/2015/02/enterprise-developer-groups-spotlight-toby-clench/
http://devblog.blackberry.com/2015/02/enterprise-developer-groups-spotlight-toby-clench/#commentsTue, 24 Feb 2015 17:25:35 +0000http://devblog.blackberry.com/?p=19301/ Read More]]>Here we are with another episode of our Enterprise Developer Groups Spotlight series, where I am pleased to highlight some great accomplishments by one of the youngest members of our developer community, Toby Clench (@TundraCore on Twitter), 16 years old (yes, that’s correct…), co-founder of the Enterprise Developer Group Bristol (nickname “Brizberrydevs”).

Upon the release of the first BlackBerry 10 device (the BlackBerry Z10), Toby looked into web development (HTML5, CSS & JS) and spent a few months learning web development technologies to create applications for BlackBerry 10. It wasn’t until October 2013 that he saw the full potential in developing applications, so he pursued development in Cascades, an entirely new blend of coding languages (QML & C++) to him, so he began creating native applications.

Fast forward a year and a half and Toby has created strong partnerships within the development community and with the BlackBerry community – both staff and press publications – to help create a successful application development business that is now proud to be a BlackBerry Enterprise Partner, too.

Why BlackBerry? Well, if you ask Toby, here is his answer (hint: it’s all about security):

“from a personal perspective, security has always been something that I have considered as being of high importance: both on my device and in applications. Security is the primary reason that I have always put my trust in BlackBerry and continued to use the devices (starting with the Curve 8520 > Curve 9320 > Z10 > Z30 > Passport)”

Security was always a key fundamental factor, in the development of Hub Browser, Toby’s main (very popular) app available in BlackBerry World. For those not familiar with Toby’s app yet, Hub Browser is intended to give you quick and easy access to links sent to you in emails, text messages – or anywhere across the BlackBerry 10 OS really – without the need to leave the BlackBerry Hub or current application that you are in.

“As not enough browsers on the marketplace today are providing security measures to help keep users safe, security has been embedded within Hub Browser since the very beginning.

For example, user information is not transmitted to any servers and the data itself remains on the device with the option to clear all of the saved credentials from within the application settings.

Further enhancements – including the ability to set a date / time to clear all of the storage – are coming to Hub Browser, to provide the most secure browsing experience for users of the BlackBerry 10 platform.”

Toby is now busy with a few other projects in the enterprise space and we will be happy to share his achievements in this blog in the future, as an inspiration for other young devs. Feel free to connect with him on his blog and BBM Channel (PIN: C00120C46).

If you liked this success story, please take a look at the previous ones, too:

Interested to know more about our Enterprise Developer Groups? Do you want to join one? Take a look here to find the one closest to you. If you are interested in starting a new one, instead, please fill this form and we will get back to you as soon as we can.

There are many ways to develop games or applications for BlackBerry 10. This is a good thing, but if you have not developed for the BlackBerry platform or you are familiar only with the older Java-based platform, it may be overwhelming. What are your options, and how do you get started?

Several factors can help you decide which path to follow. BlackBerry 10 has four primary developer platforms, each with its own distinct style of development, advantages and frameworks you can choose from.

In this first blog post, we’ll provide an overview of some of the options available on our native development platform.

Native

The bedrock of a good developer platform is a high-performance, low-level native implementation – and BlackBerry 10 delivers. The native platform is POSIX-based, so everything from “int main(void) { printf(‘Hello World’); }” and up will run on the operating system.

Whether you are a C++ guru or you shy away from low-level code, BlackBerry 10 supports a wide variety of choices on the native development platform.

Straight C/C++

BlackBerry 10 is based on QNX, a powerful, stable operating system that has been refined for over 30 years. Thanks to the POSIX interface, standard Unix C/C++ will run on the platform, without additional bootstrapping. You have full access to system APIs, from the networking stack to EGL and OpenGL and the flexibility to use common practices like dynamically loading libraries.

I personally ported a significant game framework to BlackBerry in only two days, and I have heard many more stories of developers with similar experiences on the native platform. If you like C/C++ development, BlackBerry 10 is a very exciting platform.

Cascades

If you are looking to create an application, Cascades is the Qt-based framework that we provide for the most natural of BlackBerry 10 experiences. Application code and rendering are handled in different threads, so even when you are doing heavy processing, the UI will run at a smooth 60 frames-per-second.

Many applications can be developed using C++ or using QML, or a combination of both. QML supports JavaScript, so even if you are a web developer, it can be easy to create native BlackBerry 10 applications using your existing skill-set. The BlackBerry Native SDK provides our Momentics IDE with designer support for Cascades, so you can preview and fine-tune the layout of your applications without deploying to a device or a device simulator.

Marmalade

We have partnered with Marmalade to provide a first-class experience for C++ developers using the Marmalade SDK. Similar to open-source solutions such as SDL and SFML, Marmalade is designed to provide a low-level compatibility layer between multiple platforms.

Marmalade also provides additional features – such as an optimized pipeline for art assets – tailored for every target device, as well as enterprise-level support.

NME

We have also partnered with NME to provide support for BlackBerry 10. Unlike the other options you have as a native developer, NME does not require that you use C or C++. Instead, NME uses a language called Haxe that is compiled to C++ automatically, giving you the performance of C++ and OpenGL while creating an environment that should feel comfortable to a Flash or Java developer.

NME is an open-source, cross-platform framework that makes it simple to use graphics, sound, input, networking and the other features you need for 2D games and applications, including libraries such as Flixel or Box2D. NME can also uniquely target mobile, desktop, Flash Player and HTML5.

cocos2d-x

The C++ version of the cocos2d, the popular 2D gaming framework, is available for BlackBerry 10.
Similar to other versions of the library, cocos2d-x provides structured support for scene management, physics, particle effects, tiles, spritesheets and other game-specific features. Most of the framework can also be scripted using Lua or JavaScript. cocos2d-x is an open-source, cross-platform framework with support for both mobile and desktop platforms.

gameplay

If you would like to develop 3D games using C++, gameplay is an excellent open-source framework which is fully supported on BlackBerry 10.

gameplay supports the standards you expect, such as OpenGL shaders, device input and particles, but also provides integrated support for physics, skeletal character animation, 3D audio and support for themeable 2D and 3D UI forms. If you would like to use a scripting language, Lua bindings are support. gameplay is cross-platform, supporting mobile and desktop platforms.

These are just a few of the choices you have on the native platform for BlackBerry 10, so don’t let this limit you. If you have any questions or would like recommendations, please feel free to sound off in the comments!

]]>http://devblog.blackberry.com/2012/12/blackberry-development-101-native/feed/0singmajestyTITLE_IMAGEThe Coming of Age of the BlackBerry 10 Native SDKhttp://devblog.blackberry.com/2012/09/blackberry-10-native-sdk-update/
http://devblog.blackberry.com/2012/09/blackberry-10-native-sdk-update/#commentsTue, 25 Sep 2012 17:03:36 +0000http://devblog.blackberry.com/?p=11131/ Read More]]>The BlackBerry® 10 Native SDK first arrived on the scene for our BlackBerry® PlayBook™ tablet. While it was a powerful tool for game development, it was still infancy in many ways, as it didn’t have many of the strong APIs and functionality for building an integrated native experience with a rich UI. For the BlackBerry 10 platform, we evolved the NDK and added in the Cascades™ UI framework along with many new APIs. We have released several beta version of the Native SDK since BlackBerry 10 Jam in May. The infant evolved into early adolescence.

While these earlier betas offered significant improvements over previous editions, they were still a work in progress. We are finally at a stage where we can truly say that with Beta 3 of our Native SDK, our young child has finally come of age. Our APIs have evolved to a point where they are stable and functional enough to advertise backwards compatibility. We also support a full feature set of APIs in the Native SDK – from connectivity APIs such as email and calendar to APIs that support deeper integration such as invocation to social APIs such as BlackBerry® Messenger™ (BBM).

Beta 3 of the Native SDK contains numerous new and important APIs that many of you have been anxiously waiting for. Some of the highlights include:

Cards

If you attended some of our other conferences, the BlackBerry Jam 10 World Tour or BlackBerry Jam Sessions, you have probably heard us talk about the flow and deep integration that the BlackBerry 10 platform provides. The invocation framework provides a facility via cards through which you can incorporate some of this flow and integration in your app. With cards, you will be able to expose discrete functionality within your app to other apps as well as incorporate functionality provided by your other apps within your own. As an example, if you are developing a picture viewer app, you might expose a simple picture previewer card to the invocation framework. Any app that registers with the invocation framework can invoke your card to preview a picture. Likewise, your app can leverage existing cards on the platform to access various pieces of functionality, whether it is a simple preview of a video or other discrete functions like picking a contact or composing an email.

Visually, a card typically appears as a previewer that takes up most of the screen. However, it appears as part of the application on which it is stacked. Essentially, you can use a gesture to slide the card in, partially or fully into your app as seen in the picture below:

A Card is considered part of the application that invokes it and does not appear as a separate entity in the running applications grid. In addition, when the card’s function is complete, the user is automatically returned to its parent. In this way, a card “feels” like part of the application.

BBM Social Platform

BBM has always been core to the Blackberry platform and it still remains a critical piece of our BlackBerry 10 portfolio. The BBM Social Platform APIs allow you to leverage the social features and functionality of BlackBerry Messenger from within your app. For example, you can initiate a BBM chat and share files such as pictures, voice notes, and music between users who are running your app. You can also stream data between users of your app for real-time applications such as communication, gaming and location tracking. As part of the BBM social platform, you will be able to harness BBM features such as BBM user profile, contact list, messaging and application profile box.

Email, Calendar and Contacts

There is a significant amount of interest from our third party developers for Calendar, Email and Contact APIs, and we are excited to announce their availability in this beta. The Message Center is a signature feature of the BlackBerry experience, and we are adding support on the API side for it as well. The Message Center APIs provide the ability to launch the unified inbox, send emails and receive task notifications. You can use our calendar functionality to create new calendar events, edit existing events, delete existing events and view existing calendar events. We also have the ability to notify third parties when events are being created, modified and deleted. Finally, our contact API allows you to create, edit, delete and view contacts as well as add additional meta information to a contact.

Advertising

In this competitive world of app development, you likely care about creative ways in which you can make money off your apps and we want to help bring you the tools to do just this. After all, the success of our platform depends on your success. To facilitate that, we are adding an Advertising Service along with APIs that allow you to display banner and splash ads in your application or game. You can also create hot links to keyword advertising. Under the scenes, our Advertising service launches a Browser webview to display the advertisements. Along with our Payment and Scoreloop APIs that we introduced in earlier Betas, we believe that we have some powerful tools that can help you monetize your application.

Push

At RIM®, we are proud of our Push technology, and we are now making our powerful Push framework available through the NDK. Through the APIs we provide, your app will be able to register with the Push service and receive push data. When the Push service receives incoming Push messages, it will invoke the application registered for the message using the addressing information provided during the registration. Any app that needs to be responsive to incoming data streams should strongly consider taking a look at our Push framework and associated events.

…and many others

On the ‘Core Native’ front, we’ve introduced a Bluetooth® API which supports Bluetooth on/off, power status, and retrieving paired and found devices. It also provides several Bluetooth profiles such as Serial Port Profile (SPP), Bluetooth Low Energy (LE) and Generic Attribute Profile (GATT). Other core native APIs include APIs for Holster detection, retrieving application info and for querying Wi-Fi® and battery status.
Our spell check engine now exposes APIs at both the C and C++ layer to allow apps to perform spell check functionality in their own customized UI.

At the Cascades™ layer, we have introduced a WallPaper API that allows users to set an image as the wallpaper. We have also introduced APIs for sensors, including support for rotation, orientation, magnetometer, gyroscope and accelerometer. The geocoding API allows the user to perform geocoding and reverse geocoding while the radio info API includes the ability to query available radios, their status, ESN/IMSI, Sim card info, Mobile Country Code and Mobile Network code.

We hope you find enough content in this release to satisfy your needs. As we continue to evolve our platform, we intend to be as open and transparent with you about what’s coming down the pipe. I want to point you to our really cool-looking Native & Cascades flight boards where you can get an up-to-date status on our roadmap items. We have also added a section to our site that highlights the key features of our Core Native and Cascades frameworks. It should be useful for those of you who are trying to decide whether Core Native or Cascades is the right framework to use for developing your app.

As always, we want to continue to hear from you about your needs and receive feedback on our Native SDK.

]]>http://devblog.blackberry.com/2012/09/blackberry-10-native-sdk-update/feed/0russellandradeTITLE_IMAGENative or HTML5? Only the developer knowshttp://devblog.blackberry.com/2012/05/blackberry-10-bbui/
http://devblog.blackberry.com/2012/05/blackberry-10-bbui/#commentsWed, 02 May 2012 19:01:39 +0000http://devblog.blackberry.com/?p=9163]]>

Back in November of last year, we started up a little open source project which has quickly been gaining steam within our web development community. It was born from humble beginnings as a set of UI examples to show how to style your BlackBerry® WebWorks™ + HTML5 content with CSS to look like a native app, allowing users to have a consistent application feel in a web application. After a lot of hard work, I’m happy to announce that bbUI now has BlackBerry® 10 support…but more on that later :)

A little bit of History and Philosophy

While there are existing UI frameworks out there such as Sencha and jQuery Mobile, there was still a need to create a pixel-perfect application on the BlackBerry platform that also incorporated unique BlackBerry input mechanisms. Features such as the optical track-pad to give end users the experience they expected on a BlackBerry smartphone. Typically these other frameworks are touch only, and the trackpad has been the center of attention on existing BlackBerry smartphones as it requires some special treatment.

We took the opportunity to break out the look and feel provided in those examples, and set out on an adventure to transform them into a JavaScript® UI toolkit that would incorporate concepts of Adaptive Web Design to handle the different devices in the BlackBerry portfolio. This meant handling touch/trackpad inputs, multiple screen resolutions, proper memory management, and an evolution of the BlackBerry UI from BlackBerry® 5.0 to today.

The whole philosophy of the toolkit is to provide a responsive native-looking experience for the end user while incorporating best practices in the toolkit to make it as fast as possible on each of the different device versions. This means things like using AJAX and HTML fragments for pushing/popping screens to save precious memory, and only manipulating the styling of the screen when it’s not connected to the DOM to reduce layout computation.

We’ve provided a bunch of samples and documentation on how to use the toolkit, its controls and more information around the philosophy, so please do check it out on github. We’ve also been getting some great community contributions to the toolkit. So a big “thank you” goes out to those who have been helping!

Now for the cool stuff

We just posted up the latest version of bbUI that incorporates the BlackBerry 10 look and feel so that your BlackBerry WebWorks + HTML5 applications can look right at home on BlackBerry 10. Oh…and did I mention that the toolkit also provides this same look and feel on the BlackBerry® PlayBook™ tablet? Giddy-up!

That’s right – this means you have the ability to bring all the BlackBerry 10 core controls and concepts such as action bars, slide in menus, grid lists, context menus, dropdowns, buttons and so on to your BlackBerry WebWorks application on BlackBerry PlayBook tablets, and also on BlackBerry 10.

While there’s already a lot in bbUI to get you started, there’s still more BlackBerry 10 goodies to come:

Tab overflow menus

Sliders and progress indicators

Checkboxes and Radio buttons

Top title bars with integrated toolbar buttons

We’ve posted the details on how to use all these features right in the root of the github project so that you can get rolling today. I’m always tweeting about #bbUI, so if you want to hear my constant ramblings feel free to follow me @brcewane…that’s right, “I’m Batman.”

Now for the eye candy!

Grid Lists and Image Lists:

Action Bar Toolbars with Tabs, Buttons and sliding overflow menus:

Press and hold slide in context menus. “Peek” the menu on press-and-hold to show the icons, and then swipe if you want to bring it into full view:

Crazy animated Dropdown buttons, Inputs with built in delete buttons and styled buttons and pill-buttons: