The Android Runtime on BackBerry 10 - More than meets the eye

By Shao128 on 14 Jun 2013 01:34 pm EDT

Just a few days ago Bla1ze wrote about being able to run almost any Android 2.3.3 apps on BB10 courtesy of forums member xsacha.  What the work around was able to do, simply put, is to enable a permission that allows Android apps that utilize native code to run under BB10. 

Previously we were led to believe that only Java based Android apps would run using the Dalvik JVM which BlackBerry had ported over to BB10 dubbed the Android Runtime. However, it now appears there is more to the story than that. 

Going back a few months, many users had tried to port both Netflix and Instagram with no luck, since then we saw working versions of Netflix and Instagram appear.   The difference was that the working versions seemingly were signed with the special permission to execute the native Android code. Both of these apps utilize native Android code and my original theory was that BlackBerry hard coded work-arounds for them to run within the Android Runtime on BB10.  I was wrong on that theory - the Android Runtime is much more than just the Dalvik JVM running on top of BB10. 

Just how much of Android is really running on BB10? I don't know the answer to that question, but it is clearly quite a bit. I've done some testing of my own using xsacha's method and the results are quite frankly remarkable. Games and apps that didn't run before run buttery smooth now. I tested some games including Stargate Unleashed, GTA3, Candy Crush and they ran up to 60 frames a second with no issues. On the app side one app that stood out that I was able to get running was XBMC. The interface runs amazingly and it handles playback of HD video. Quite frankly these have all run better on my Q10/Z10 than on some of my Android devices. 

So this begs the question, if apps using native Android code already work on BB10 why hasn't BlackBerry opened it up to developers to use? Perhaps they will and have a bigger plan in store for us, we will just have to wait and see. 

So what do you think should BlackBerry open up native code to developers?  Let us know in the comments below!

How to run almost any Android 2.3.3 app on BlackBerry 10

Reader comments

The Android Runtime on BackBerry 10 - More than meets the eye


Them enabling Android Native Code to run on their devices will make their devices BETTER then most android phones out there. They should just do it! I see no problems with it. If a dev wants to enter the blackberry scene with a native android app. let them! If BB had allowed native code on the playbook a year ago, i would have released more LibGDX games on it.

i don't see a problem either, but maybe they want people to code naitivly and build their apps around Cascades to give their apps a more like BB10 feel then just bringing over an Android game and leaving it

To be fair games don't benefit from cascades. I've yet to see a game that doesn't implement it's own menu system.

Totally agree.

BlackBerry only need C, C++ and QML (Core Native/Cascades) - anything else is lazy.
Also, making it easy to 'sideload' Android Apps legitimises software piracy.

Posted from the tap-dancing mouse :rotfl:

Right?? Think back to all the naysayers... people were spouting that out left and right, "Android apps will never run smooth and it's a terrible idea to begin with." In your faces, haha

It was a bit of an adventure following xsasha's post but I dived right and and am simply amazed on what this little device of mine (Z10) is now capable of.
So far I have been able to convert about 98% of the APK that I have downloaded.

Can't wait for the new jelly bean runtimes!!!

OK, so I'm it that we can no run almost any Android app if signed properly or we can now do that because of a software update?

So, where's the XBMC download for BB10? :)
Been playing with RaspBMC, and like it, but playing files (music, I'm thinking) directly from my network to my Z10, would be fantastic!

Wouldn't work even if they posted it, the new method that Shao is referencing uses a signing key that is specific to the device, using the device pin. So you would have to use your own keys to get those bar files to work on your device.

Posted via CB10 on my Z10 & loving it!

If they open up Android fully, then won't the much renowned BlackBerry reputation for security bite the dust?

Surely there's a reason Android is protected - and if so I hope it's a cold day in hell before they open up Android fully to anyone on BB10 - because it probably means BlackBerry is dead.

I can see them opening it for important apps that are fully vetted but not otherwise.

Agree, I think that android is fully open, and run well, the development of native apps can lose a little sense, and confuse the brand and the BlackBerry platform as another brand that runs Android. In this case it is really important to be careful with the reputation and sign an ecosystem before opening it completely. There will be a line of careful balance between the ecosystem and the need for your important apps that have not yet come. If this is implemented as well BLACKBERRY, may become a differential

Can't good programing basically layer on all the BlackBerry menus on top of the Android ones? They should really work hard on making it zero work for a developer to out there android app on Blackberry and I mean zero.

If the folks at BlackBerry can write a whole operating system in two years from scratch why can't they do what I'm saying. Don't know, just asking.

Posted via CB10

I suspect that there may indeed be some additional security issues involved in allowing that functionality.

For example, people in their lust for "More Android Stuph" probably don't typically stop to consider that since there is no Google Play support on the BB10 Android runtime, the main mechanism for updating Android apps (including plugging serious security vulnerabilities) is completely missing.

Same can be said about Android phones... If you can get a BlackBerry that can run android apps just as smoothly why get an Android?

The OS, the hub, the keyboard, call quality, security, reliability, form factor, build quality, screen, camera..and so on...the only thing BB10 lacks is its apps.

It lets you have a BB10 device if that's what you want, but also lets you overcome the app gap.
So someone waiting for a particular must-have app or two could potentially convert to BB and use an Android port to fulfill their need.

This is how you CB10, son!

Because they would rather have a BlackBerry for its great communication & security. Apps are a bonus & android has a lot of apps BlackBerry doesn't. By getting android apps on your BlackBerry phone you get the best of both worlds in 1 device. IMHO BlackBerry should really be the #1phone especially after more & more apps come. Great phone with apps coming weekly pretty awesome ... why even get any kind of android phone if BlackBerry 10 phones have all the same apps

Posted via CB10

Is there a Web page to download the bar file please ibwant and still don't know how to use these eyes software please help somebody especially y gta3 big fan here please send links etc

Posted via CB10

Doesn't matter how good an android port runs on BlackBerry10, they are not half as good as native apps. So, IMO they did it to encourage the native app development...

Posted via CB10

Um, is there a how-to- video for dummies? I've had success with most side loads, but I couldn't get Google Maps to work.thats not good being I work on an ambulance and need to figure out where to go. Lol thanks

Actually, that doesn't "beg the question." Raise it, maybe.

Posted via CB10 on my BlackBerry Z10 on Rogers.

agree have been using on wifes iphone 5 and ipad. not better at all and hard to figure out how to do anything. The UI is very bad waiting for oovoo use that on my Lenovo all the time.

lmao, I just read this whole post while listening to the man of steel soundtrack and it sounded so epic!! go blackberry :)

I think BlackBerry has a vested interest in pushing Native/Cascades apps out, I think if they made it too easy for Android developers to port their apps over, there would be less incentive to re-think how they develop apps for BB10. I think it's worth the effort, but the sooner we close the app-gap, the better.

Although I appreciate devs bringing over their android apps, I would much rather have a native app that takes advantage of the bb10 os gestures, etc.

BlackBerry may eventually enable Android Apps with Native Code to run - but remember, they're still running under emulation as BB10 isn't Binary Compatible with Android Apps.

Posted via CB10 from my Q10.

The Dalvik (Java) component is running identically to how it runs on an actual Android device.
That is, Dalvik VM is simply compiled for QNX instead of Linux. So that part will run as fast (if not faster) than if this was an Android device.

As for the native code, it acts a bit like Wine from what I understand. They have compiled a 'special' libc, a 'special' libbionic and so on for all of the Linux/Android binaries that are expected by native apps on the system. These apps hook to the native QNX libs where required.
Unlike wine (which translates Windows to Linux), QNX and Linux are not so different. So, in fact, the entire Android app (no matter what it is) is running natively. Just as it would on a real Android device.

That's what I figured. It's similar to how the iOS "app player" that appeared last year worked. The developer of that basically wrapped all iOS function calls to allow them to make native QNX calls. I would imagine that this method of sideloading and executing Android apps will soon be eliminated for the same reason that the iOS emulator (not so) mysteriously disappeared.

Yes. That's also how some hackers have managed to get Android native apps running on Meego. As long as there is no Java usage in the app.

Can I ask how you figured out that this exists?

Also, why is is that some apps seem to work perfectly yet something like Netflix still has a laggy UI?

Because Gingerbread is old and meant to run on lower resolution devices than what you see today. The Z10 is significantly higher in resolution than any Gingerbread device of its day.

Expect drastic performance increases when the run time is upgraded to Jellybean (aka BB10.2).

Thanks for the post. I think I should start converting apks again to get access to a lot more apps.

Posted via CB10

To people asking for bar files: You have to do the conversion yourself using the method from Bla1ze's article. This is because to run these apps you need to have a debug token on your device (and renew the token every 30 days). That means if I give you the bar it won't run because it will have my debug token.

So unless BB changes something developers/hackers can't give you these "new android ported apps that run really well"... Sorry.

What is the chance of one of you wonderful people posting bar files for Draw Something And Words with Friends? I got Words to sort of work but is very buggy and crashes more than it works. Can't get Draw to work at all. I'm learning new stuff every day but haven't quite figured out how to change apks to bars yet.

Posted via CB10

The playbook probably uses a less complicated android runtime but, if this could be made to work for it it would be amazing.

Guys what's the best website to get Android .apk files if I don't own an Android device to download based on my account? Particularly looking for:

-Yelp (Version that works, cause I tried a couple and failed)
-Safeway (Version that works, cause I tried a couple and failed)


At Royfakhry
Hi mate need some help in here I'm dumb when it come s to porting android games etc and that 1 mobile gas some awesome games so duties guide to download them and put on my z10 please much appreciate

Posted via CB10

My question is, then, is: can we potentially run android on bb10 devices with little difficulty (compared to, say, an iphone)? Don't flame me, this is a legitimate curiosity.

Posted via CB10

Both exciting and nerve wracking. I want to see developers make cascades apps, so I'm nervous as to how the runtime will turn out.

Well from what it looks to me it's full Android VM running on top of BBOS. You can creat links to almost anything in Android by making a link app for android and convert it to a bar file. Blackberry just forwards some systemlinks like sms and email to BBOS.
When 4.2 goes gold for BB we have everything + more :))

i wish i can check it out but i dont know how to do the steps so can anyone make a video about it and does subway surfers and head soccer work on it

The Android VM was supposed to be a stop gap measure which was supposed to let Android devs test the waters before switching to native.
Since Android apps started to represent a big chunk of the useful apps you find in BBW, BB had to improve the way they run so that users don't give up and wait for their next contract renewal to pick up a BB10 device.
There was no point in enabling native code if the rest of the components like hardware acceleration wasn't properly implemented.
10.2 will be really good with JB and HW accel, but it can be even better if they've completed the low level work and can enable native code.

Except what you consider useful and what others do varies. Android apps DO NOT represent a big chunk of the useful apps on my particular phone. Matter of fact, only Songza (who've already committed to going native), and possibly Stubhub are the only Android apps I personally have. What's true for you isn't true for everyone. There are lots of useful native apps available.

True, but I wasn't speaking about my needs per se, but thinking more of the top 50 apps on Android.

So could the Simpsons tapped out work in theory on the bb10 devices.....and if so would someone be able to check and see the most recent attempt?

Posted via CB10

Can anyone please try the Rogers One Number android app? I can't do it while away on business as I don't have my notebook anymore while using Z10 and Playbook... thanks

Posted via CB10

Blackberry should just give us full android runtime. This would give little incentive for the developers to make native bb10/cascade apps but it will surely help the app gap. what they can do is if developers sell their apps for a price on bbworld they should insist that its native, if not then it can run on the android runtime.

I actually got xbmc also working but it keeps saying no Internet connection whether it's on WiFi or lte. Did you change any specific settings for it to connect to the Internet?

Posted via CB10

I really really want inter gram can anyone help me really don't know how to change or get the it

Posted via CB10

ironic that the android apps that are supposed to work are java based, yet i thought the old BBOS was java based , obsolete and so hard for the programmer to write for/

The thing is that all the Android apps that people WANT don't use Java.
Things like Skype, Netflix, Instagram, Viber, Pinterest, every game.
They all use native code.

Java is terrible for doing any of that stuff, which is why they use C++ instead. And that's why it's awesome that we can now load native Android apps.

What if the blackberry OS 10 actually just android launcher.. we have been deceived! Lol

Posted via CB10

At Royfakhry
Hi mate need some help in here I'm dumb when it come s to porting android games etc and that 1 mobile gas some awesome games so duties guide to download them and put on my z10 please much appreciate

Posted via CB10

Dear CrackBerry,

Please do Videos on this.

Show how to install XBMC / GTA3 and how they run on the device !

Please do Video tutorial INcluding how to get signing keys, how to get Android SDK, complete installation of the required tools, and then the entire procedure and a small review of the app that we installed.

basically a start to finish tutorial

Does anybody know if it's possible to get "Eurosport Player" run with this under BlackBerry 10?

I am waiting eagerly for this app to have it on my Q10 and Z10!!!

This is the ONLY app where I am really envious to the Apple and Adroid users!

Posted via CB10 on Q10

X Sasha seems you the only person helps, I like my bb z10, and I am pretty jealous that so much out phones can do but I can't d any on that sort cause I am not a developer or near that field, would be kind the was a online app that could covert it for u, or a step by step video, cause that good reader convertor never worked for me and I feel sad though, cause I can See people talking about The Gta 3 and I so want please help await you personal reply thanks

Posted via CB10

I have made the tutorial quite simple. If you follow the steps, it should work for you.
If you get stuck anywhere just tell us what the error is and we can work it out.

Where is it xsacha? I am like AYUB HAZIZ1 at one point in my life took several courses of html/web design, etc at the university. I self taught a bit of JAVA. Because of my wonderful Z10 and people like you XSACHA, and Crackberry, I got inspired again. I am able to keep up with you all in Crackberry until you all started talking about the Android runtime and the Hybrid something, something...uuuuffff. I do not give up that easy. I leave it alone for a while and then continue until I get it. if you can. XSACHA: Do you have a channel I can subscribe? tnx

I think I'm sick and tired of hearing about things like this. It's like StreetFighter DLC all over again. We're told it's not there; you'll have to wait. But, some genius comes along and figures out that it's all there the whole time with minor changes.

I assume the motive might be different but if it's all there and can be used as is, then give folks the heads up.

The only thing I can think that would be a problem is how the apps integrate with BB. Are they integrated at all? Active frames?

So will this new method allow (almost) all Android Apps to work on the Q10 ?

(I presume Bla1ze was porting it to the full touch BB10 device, but I'm interested in the Q10 device!)

This works great!

I've ported my fitness pal and jefit with no issue.

But for some reason errors out on launching the app. Oh well 2/3 is good

Is there a list of apps people have successfully ported, I remember seeing one but can't find it again :(

Posted via CB10