Ionic on BlackBerry 10

As stated by @mhartington in this forum post, BlackBerry 10 devices should run Ionic without major issues.
Has anybody tried it? Are there any quirks like in Windows Phone?

Thanks,
Rafa.

Blackberry 10 uses webkit for its webview, so it “should” be good, but we haven’t focused on blackberry to thoroughly test it.

From experience, the only quirk I have run across was some routing issues if you had a master-detail pattern. I believe there have been fixes posted for it.

Other than that, pretty smooth sailing.

1 Like

What is the process to compile for BB10? Is there an SDK and can we target a build like we do for android?

That’s at Cordova level. Check http://cordova.apache.org/docs/en/4.0.0/guide_platforms_blackberry10_index.md.html

1 Like

OK, almost there, now I get an error if I try to build, does anyone have a clue what this means and how to fix it?
C:\development\menu\platforms\blackberry10\cordova\lib\logger.js:28
console.error("[ERROR] " + msg.replace(/error: /i, “”));
^
TypeError: Object Error: Invalid URI attribute in the access element - protocol
required(tel:*) has no method 'replace’
at Object.module.exports.error (C:\development\menu\platforms\blackberry10\c
ordova\lib\logger.js:28:42)
at Object.module.exports.start (C:\development\menu\platforms\blackberry10\c
ordova\lib\packager.js:69:24)
at build (C:\development\menu\platforms\blackberry10\cordova\lib\build.js:12
3:39)
at C:\development\menu\platforms\blackberry10\cordova\node_modules\async\lib
\async.js:548:21
at C:\development\menu\platforms\blackberry10\cordova\node_modules\async\lib
\async.js:224:13
at iterate (C:\development\menu\platforms\blackberry10\cordova\node_modules
async\lib\async.js:131:13)
at C:\development\menu\platforms\blackberry10\cordova\node_modules\async\lib
\async.js:142:25
at C:\development\menu\platforms\blackberry10\cordova\node_modules\async\lib
\async.js:226:17
at C:\development\menu\platforms\blackberry10\cordova\node_modules\async\lib
\async.js:553:34
at C:\development\menu\platforms\blackberry10\cordova\lib\build.js:105:64

Did you build as the BlackBerry platform or Android? Last time I tried for Android none of the UI worked

I believe we use the BlackBerry SDK.

Another option is to do a normal Android build to APK… you can just APKs on BB10 :smile:

When I built an APK and installed on my BB10 device, the UI was a mess. I’ll try it again to see if anything changed.

A colleague and I are new to Ionic and have been using it for about 2 weeks. So far we have created a prototype project that runs on both Android and (almost on) BlackBerry. We’re both very impressed.

The issue we’ve found so far is with the Select element. It works fine on Android, but on the BlackBerry there is a problem (bug?). With the Ripple emulator the Select element opens to a click event. On the BlackBerry Simulator we cannot get the Select element to open at all. On a BlackBerry Leap the Select element only opens by tapping, holding and dragging the Select element’s text to the left (we stumbled upon this).

We created the Select element using the post here: http://ionicframework.com/docs/components/#select. We have tried using both label and div as wrappers, but to no avail. Even if we just display the Select element with no other controls on the page it doesn’t work. I’d like to raise a bug against this, how should I do that?

Hello - ive noticed this too - did you discover the problem / fix?
Ive tested seelct elements on webpages in the browser, and they work fine. but they only work for me on blackberry if i hold down on the select element, and then swipe to the left (like you explained)
Thanks

No bud, we never did find a “proper” fix to this. We had to implement a work around for the BlackBerry by using $ionicModal and the ion-modal-view element. It really was just a hack given we were only working on a proof of concept. Had we had more time then we could have taken it further and done a better job.

Still looking for a proper solution though.

Hey.
After a bit of messing round i found that theres something in the tapHandleFocus function on line 3021 of ionic.bundle.js that seems to be messing with it, specifically the variable triggerFocusIn

I had to comment out lines 3024 and 3030 to make the select element work in my app on blackberry10

only trouble is that now it wont work on android :frowning:
Still, its progress…

Thanks

Nice one, it certainly is progress. As I said in my original post, I’m still pretty new to Ionic, but I think it should be possible to make the changes only to the platform specific version of the bundle so that the Android version isn’t impacted.

That said, what you’ve discovered seems to confirm it as a definite bug that needs raising.

please has anyone found out a push plugin for blackberry10 os and android??

No, we released our Blackberry10 version a month ago and we needed to follow their instructions (https://developer.blackberry.com/html5/documentation/v2_2/develop_a_push-enabled_app.html).

Honestly, It’s quite a pain to make it work.

Really sad!! But is there any form of development going forward or we’ll just maintain the status quo?? And how easy is it to port android apps to BlackBerry bar file.
Thanks in anticipation!!