DEVELOPERS BLOG

Porting apps to the PRIV: A Primer for BlackBerry 10 Developers

pencil_article

Just like BlackBerry 10, developing apps for the PRIV is a great opportunity for BlackBerry developers. With APIs to access the slider physical capacitive keyboard, Android apps can be further enhanced for the PRIV. At Emberify we are happy to support the PRIV with our portfolio of Android apps.

CODE

You will need to setup your Android Studio development environment to get started. In terms of layout, it is similar to the Eclipse based Momentics environment: http://developer.android.com/sdk/index.html

For BlackBerry 10 native developers, C++ is replaced by Java for Android. Since they are both objective-oriented languages, most of the concepts are easy to understand for you. Here is a great 30-page crash course to go from C++ to Java: http://www.horstmann.com/ccc/c_to_java.pdf

Apart from this, in terms of the user interface development, the QML in BlackBerry 10 is replaced by XML in Android. W3schools is the best place to learn XML. An in-depth knowledge of XML is not compulsory for creating user interfaces for Android. A good place to start and understand Views & Layouts is: http://developer.android.com/guide/topics/ui/overview.html

DESIGN

Starting from Lollipop, Android has been using Material Design for their visual language. I had written a summary on principles of Material Design which developers should understand for a better user experience. Here are a few points coming from BlackBerry 10:

  • Navigation: Moving from tabs on the bottom of the screen, Android uses tabs on the top with a navigation drawer for more options. The action bar is on top of the screen with the app title. Less emphasis is given to gestures compared to BlackBerry 10.
  • Typography: While we were used to Slate Pro with BlackBerry 10, Android has Roboto as the system font, which has friendly & open curves.
  • Signature Action: BlackBerry 10 uses the signature item on the center of the action bar to allow users to perform the most important task. With Material Design, the Floating Action Button is used for the promoted action.
  • Iconography: Google provides an entire library with Material icons which are filled with rounded edges: https://www.google.com/design/icons/. Be sure to use xxxhdpi assets for sharp images & icons on the PRIV.
  • Colors: Colors play a really important part in Material Design since it provides bold hues for the user interface. There are abundant palettes available on the Material Design spec site. It is recommended to select a maximum of three colors from a primary palette and one accent color from a secondary palette.

MARKETING

The best part of developing for the PRIV is the distribution opportunity with Google Play. Marketing apps is really important to be visible among the large set of apps on Google Play. In terms of App Store Optimization, Google Play is similar to BlackBerry World when it comes to ranking of apps, though there are no keywords on Google Play. The title is important, followed by the app description from where Google Play gets the keywords. To decide the ranking of keywords, Google mostly uses downloads, ratings & active users. Also rather than the paid model, the freemium model is more popular on Google Play (free app with in-app purchases). With BBM pre-installed on the PRIV, BBM Channels is one of the best ways to engage with PRIV users. Your BBM Channel is a great way to reach out & communicate with users.

Going the multi-platform route with BlackBerry 10 and the PRIV can give developers a bigger market opportunity. It is also great for your current user base that may switch to the PRIV to find familiar apps. For any questions or help with developing for the PRIV, you can contact me.

For my previous posts, see: http://devblog.blackberry.com/?s=shashwat+pradhan

OTHER USEFUL RESOURCES

Here are a set of resources that are a must for designing & developing apps for the PRIV.

Getting Started with Android Development

Android Developer Nanodegree from Udacity

BlackBerry PRIV Emulator

BlackBerry Github, for PRIV slider keyboard samples

Material design specs

Google Play Developer Console

About shashwat12345