
Despite the drop in prices, the decline in the smartphone market share and sales rumors, we continue to be convinced that all roads go to RIM. They sell the plane, hand out free devices, promise ten thousand US dollars for the published application and offer the best set of tools for the new platform.
Can an Android developer enter a new market with little or no cost? What are the restrictions and where smeared with blackberry jam? I'll tell you on my own experience.
Compatibility issues
RIM really offers a set of
development tools for every taste and color, including the magical ability to transfer an Android application to a new platform by simple repacking.
')
The idea is that the application created for Android 2.3.3, almost unchanged, should work on the BlackBerry 10 and Play Book. But, in reality, the application runs in the BlackBerry Runtime for Android virtual machine, the existing implementation of which has serious functional
limitations . For example, there is no support for Google Maps, there is no possibility to work with the camera, Cloud To Device Messaging, In-App purchase, and much more are not functioning.
In addition to functional limitations, BlackBerry makes
adjustments to the Android user interface model. So the absence of the Back and Menu buttons is proposed to fill with gestures "from the bottom of the screen to the left at 45 degrees" and "top to bottom", respectively.
At the same time, meeting the formal requirements of Runtime for Android does not guarantee one hundred percent performance of the application. For example, it turned out that from an Android application, a web link opens in a browser embedded in a virtual machine, and there is no way to forward a URL to a native BlackBerry browser. This feature hacked into the functionality of placing links to the App World store inside the application.
Quick start with on-line service
For a quick start, RIM provides an online application repacking tool. The word online is quoted, because in reality most of the work is done by the applet on the client side.
The tool performs on a formal basis a .apk check for compatibility with the BlackBerry Android Runtime. In case of incompatibility, reports that specifically does not suit the application.
I was lucky, and the tool reported full compatibility, which allowed us to immediately proceed to the signing and repacking of the code.
Packaging and Signing
To repackage an application, you must obtain a pair of RIM Development Key and BlackBerry PlayBook debug token dongles.
This is done once. The request is made through the same online tool. The answer comes quickly enough - in about 15 minutes the necessary certificates are delivered by mail. The certificate is tied to the computer from which the request was made, and a special procedure is provided for transferring certificates to another developer’s computer.
After receiving the keys, the environment is configured literally in two clicks. The tool then signs the binary file and saves the result in the BAR format (most likely it is the acronym BlackBerry Android Runtime, but did not find reliable information).
The finished application can be run under the emulator or on real hardware using the
command line tools provided by RIM. If you wish, you can immediately go to publish the application in App World.
I also had the opportunity to run the application from the natural development environment on real hardware - the BlackBerry 10 Dev Alpha device, received at the
BlackBerry 10 Jam event in Moscow three weeks ago.
By the way, they say that the hatching on the front panel of the device is not a prototype of the emblem, but a bar code that allows tracking devices issued to developers. I take this opportunity to send photographic greetings to RIM!

Testing on the device
Preparing to launch an application on BlackBerry 10 Dev Alpha is no more difficult than working with any Android device on Windows. I installed the driver directly from the alpha device connected as a drive. Following the
instructions , installed the plugin for Eclipse. On the device, I activated the development mode and exchanged a pin code with a computer.
The only subtle point is to remember to add BlackBerry Nature to the Android project using the Eclipse context menu.
The application is launched on the device using standard IDE tools. The application starts quite quickly, but still a little longer than on the "real" Android.
Publication
A mature BlackBerry developer before publishing an application gets the proud name of an Independent Software Vendor after a simple registration process on the App World
vendor portal. Registration is free, takes two days and requires a scan ID. I sent a scan of the Russian passport and added a passport in case of problems with reading the Cyrillic alphabet.
Publishing actions are typical for all mobile app stores - provide a description, upload screenshots, determine the cost and region of distribution. The only significant difference is RIM's close attention to third-party content rights in the application and to user-generated content, including the name of the profiles.
Since the publication in the BlackBerry App World coincided with the appearance of the name “Let's go to ...” in the Chapaya player rating, we had to take seriously the issue of User Generated Safeguards.
A set of administrative and technical measures “to protect users - especially minors, as well as control and management of inappropriate behavior” was thought out. The main means of protection have become the ability to abuse the user and our ability to ban bullies. The proposed solution completely satisfied the strict reviewers, especially during this time the fighter with inappropriate behavior himself took off from the rating of the best players.
Review Procedure
The review cycle takes one day. Updating indexes in the store after the approval of the application takes from several minutes to 24 hours.
The application was returned to me twice. Once with a request to specify the minimum requirements for the operating system PlayBook OS 2.0, from which the BlackBerry supports Android Runtime. In the application control panel, it looks like QNX 2.0.
And the second time they returned with a request to remove the mention of Android. The humor is that the player’s default name is taken from the android.os.Build.MODEL constant, which contains the value “BlackBerry Runtime for Android”. That saw the engineer RIM'a.
Interestingly, two versions of the same application, sent for review with a difference of 10 minutes, were different engineers. Wrapped only one of them.
First results
Today, 4 days after the publication of the application in the BlackBerry App World, we can sum up the first results.
First fly in the ointment:
- In fact, great luck turned out to be the compatibility of the application with the capabilities of the BlackBerry Android Runtime. For another non-game project, everything is much more complicated, and the transfer required a serious reduction in functionality.
- The poor performance of the Android Runtime can make it difficult or impossible to transfer demanding gaming applications.
Well, now a barrel of blackberry jam:
- The full cycle of translating Android applications to the BlackBerry 10 / Play Book platform and publishing to App World took no more than three hours of clean time, which confirms the thesis about the openness of the platform for Android developers.
- During the publication, the application was downloaded more than 1000 times without any advertising and promotion, which may indicate a software hunger for Play Book owners.
- The Smaato banner network shows a fill rate of 85% for the BlackBerry application, which has a beneficial effect on advertising revenue.
And we derive a simple rule: if a five-minute compatibility check for an Android application using an online tool gives a positive result, then the next three hours for publication in the BlackBerry App World will not be wasted.