• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Porting Android Apps To BlackBerry 10
 

Porting Android Apps To BlackBerry 10

on

  • 270 views

 

Statistics

Views

Total Views
270
Views on SlideShare
268
Embed Views
2

Actions

Likes
0
Downloads
0
Comments
0

2 Embeds 2

https://www.facebook.com 1
http://www.slideee.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Porting Android Apps To BlackBerry 10 Porting Android Apps To BlackBerry 10 Presentation Transcript

    • Android Onboarding & Virtual Office Hours Android Developer Onboarding & Virtual Office Hours
    • Android Onboarding & Virtual Office Hours  What is BlackBerry 10?  How does BlackBerry 10 run Android apps?  Repacking & testing your Android app on BlackBerry 10  Submitting your Android app to BlackBerry World 2developer.blackberry.com/android
    • BlackBerry 10  New mobile computing platform and hardware  Brand new hardware/software based on QNX  Best-in-class browser (491 HTML5 Test score)  Cutting-edge multimedia capabilities  More apps than any first-generation platform at launch  Full-touchscreen and keyboard-based smartphones  Bringing your Android app to BlackBerry 10 can take as little as 3 minutes 3developer.blackberry.com/android What is BlackBerry 10? BlackBerry Z10
    • BlackBerry Runtime for Android Apps  Open-source Jelly Bean (Android 4.2.2) Application Framework running on top of BlackBerry 10 OS and Libraries  Enables repackaged Android apps to be installed and run inside it  Deep integration with BB native framework to make Android apps indistinguishable from native apps  Repackaging your Android app can take as little as 3 minutes 4developer.blackberry.com/android BlackBerry 10 OS QNX Android Runtime Dalvik VM
    • BlackBerry Runtime for Android Apps 5 Increased Compatibility: Over 80% of converted Android apps work without any changes to source code Support for Android Native, Accessibility, Bluetooth, MapView v1, Share Framework, Spellcheck, Wi-Fi Scanning Broader Reach Integrate with the BlackBerry ecosystem and get access to the BlackBerry World distribution channel, more customers, and additional revenue opportunities.
    • 6 The Android Runtime In Action ► Songza
    • The Android Runtime In Action SkyArabiaNews 7
    • 8 The Android Runtime In Action ► Flipboard
    • 9 The Android Runtime In Action ► Deezer & WordPress
    • 10.2 - August 2013  Android 4.2.2 (Jelly Bean/API 17)  Improved Stability  Support for the end-user to hide/show back bar 11 Android Roadmap
    • 10.2.1 Gold– January 2014 12 Android Roadmap
    • Unsupported APIs 14  Around 80% of all Android apps are compatible today on BlackBerry 10.2.1 requiring no changes to source code  Not all Android APIs are supported  Hardware and OS dependencies  Limited to the personal perimeter  Full compatibility list is available at developer.blackberry.com/android/apisupport
    • Push Support Both c2dm and GCM are supported: Client  Register with BlackBerry Push Services  Create android.cfg file  Package the android.cfg file within BAR  Sign app Server  Push JSON payload to both Google & BlackBerry app servers  Pushes are queued until app is open 15developer.blackberry.com/android/apisupport/creating_push-enabled_android_apps.html <?xml version="1.0" encoding="utf-8"?> <android> <push> <appid>some_appID</appid> <ppgurl>http://cpXXX.pushapi.eval.blackberry.com</ppgurl> <tokenprefix>bb-</tokenprefix> </push> </android>
    • In-App Billing Support  Test using BlackBerry World sandbox  Use the same ItemID values for your digitalSKU items in vendor portal  One-time purchases, no subscriptions, no refunds through API  Transactions are not signed java.lang.System.getProperty("os.name") returns ("qnx") android.os.Build.DEVICE returns “Q10”, “Q5”, “Z10”, or “Z30” 16developer.blackberry.com/android/apisupport/apisupport_inapp_payments_support.html
    • Android Native Code  Android NDK lets you write parts of your app in C/C++  Meant for self-contained, CPU-intensive operations, shared x-platform libraries, third-party libraries  When moving between Java and Native code, the Java Native Integration (JNI) bridge is crossed, requiring Android system resources  Android only provides header support for the following: o libc (C library) headers o libm (math library) headers o JNI interface headers o libz (Zlib compression) headers o liblog (Android logging) header o OpenGL ES 1.1/2.0 o libjnigraphics (Pixel buffer access) header o A Minimal set of headers for C++ support o OpenSL ES native audio libraries o Android native application APIS 18developer.blackberry.com/android/
    • Android Native Code  BlackBerry 10.2.1 OS o Both the ARMv5TE and ARMv7-A machine code instruction sets are supported  Android Tooling 2.0 o New toolset to account for various IDEs via Device Profiler o Simple GUI o Tooling will no longer report *.WRN file errors related to Native code, Bluetooth or Google Maps v1 o Native on-device debugging  Support o Same level support for libraries as Google publicly offers (9) 19developer.blackberry.com/android/apisupport/unsupported_api_android_ndk.html
    • Verify Repackage Deploy Repackaging Android Apps developer.blackberry.com/android Verify - Run blackberry-apkpackager to generate a *.WRN file which will call out unsupported APIs and repackage the APK to a BAR file Repackage - Run blackberry-signer to sign the BAR file Deploy - Run blackberry-deploy on an up-to-date OS, testing functions called out in the *.WRN file
    • Repackage your APK to a BAR file in 3 easy steps… 1) blackberry-apkpackager - runs a compatibility check on your APK file - packages your APK file as a BAR file 2) blackberry-signer - sign your application 3) blackberry-deploy - test your app 22 C:Androidandroid-sdkbin> blackberry-apkpackager HelloWorld.apk C:Androidandroid-sdkbin> blackberry-signer –storepass pass123 HelloWorld.bar C:Androidandroid-sdkbin> blackberry-deploy –installApp – device 169.254.0.1 –package HelloWorld.bar –password pass123 Repackaging APK Files ► Option 1: Command-line SDK
    • 23 bin>blackberry-apkpackager –gui  Append the –gui parameter to use a GUI window for point-and-click repackaging blackberry-apkpackager –gui  Provide the APK file location, target location and select Package  Sign and deploy within the same step! Repackaging APK Files ► Option 2: GUI-based SDK
    • 24 bin>blackberry-apkpackager –gui Repackaging APK Files ► Option 2: GUI-based SDK
    • 25 bin>blackberry-signer -gui Signing Your Application  Sign your resultant BAR file, or configure your BlackBerry ID signing account Repackaging APK Files ► Option 2: GUI-based SDK
    • 26 bin>blackberry-signer -gui Setting Up Your BlackBerry ID Signing Account  From the BlackBerry Signer window, select Configure Signing  Provide what will be your CSK Password (signing password) and Author Name  Select Request and log into/create your BlackBerry ID account  Select Create Repackaging APK Files ► Option 2: GUI-based SDK
    • 27 bin>blackberry-deploy -gui Deploying Your App  Deploy your resultant BAR file to a BlackBerry 10 simulator or device  Provide the BAR file location, device IP address and password10 simulator or device  Ensure that your physical device has Development Mode enabled Repackaging APK Files ► Option 2: GUI-based SDK
    •  Icon: 114 x 114 pixels  Resolution: 1280 x 768 (15:9)  Screen size: 4.2” diagonal  Project structure: res/drawable-xhdpi  Current OS: BlackBerry 10.2.1  Testing: BlackBerry 10 Device Simulator developer.blackberry.com/android/documentation/port_android_app_to_bb_device.html BlackBerry 10 Devices ► BlackBerry Z10
    •  Icon: 114 x 114 pixels  Resolution: 1280 x 720 (16:9)  Screen size: 5” diagonal Super AMOLED  Project structure: res/drawable-xhdpi  Current OS: BlackBerry 10.2.1  Testing: BlackBerry 10 Device Simulator developer.blackberry.com/android/documentation/port_android_app_to_bb_device.html BlackBerry 10 Devices ► BlackBerry Z30
    •  Icon: 114 x 114 pixels  Resolution: 720x 720 (1:1)  Screen size: 3.1” diagonal  Project structure: res/drawable-square  Current OS: BlackBerry 10.2.1  Testing: BlackBerry 10 Device Simulator developer.blackberry.com/android/documentation/port_android_app_to_bb_device.html BlackBerry 10 Devices ► BlackBerry Q10
    •  Icon: 114 x 114 pixels  Resolution: 720x 720 (1:1)  Screen size: 3.1” diagonal  Project structure: res/drawable-square  Current OS: BlackBerry 10.2.1  Testing: BlackBerry 10 Device Simulator developer.blackberry.com/android/documentation/port_android_app_to_bb_device.html BlackBerry 10 Devices ► BlackBerry Q5
    •  Device OS autoloaders https://developer.blackberry.com/blackberry10devalphas/update/  Simulator & SDK download https://developer.blackberry.com/android/tools/  Pulling Android logs http://devblog.blackberry.com/2013/11/pull-android-logs-from-your-blackberry/  Programmatically disabling the back bar http://devblog.blackberry.com/2013/12/android-developers-eliminate-the-back-bar-in- your-10-2-1-app/ developer.blackberry.com/android/ Additional Resources