Developing Android Apps for BlackBerry 10 - Capture

6 downloads 67 Views 2MB Size Report
Enables ported Android apps to be installed and integrate with BlackBerry PlayBook .... to get apps converted. ▻ Eclipse Plug-in - For most Android developers.
Developing Android Apps for BlackBerry 10 JAM 354 Matthew Whiteman - Product Manager

February 6, 2013

Overview  What is the BlackBerry Runtime for Android Apps?

 BlackBerry 10 Features  New Features Demo  Development Basics 

Converting Existing Android Apps



Signing and Publishing to BlackBerry World

 Q&A

2

What is the Android Runtime? 5 Minute Overview

3

What is the Android Runtime? Overview

 Android open source version 2.3.3 aka “Gingerbread” application framework running on top of BlackBerry PlayBook and BlackBerry 10  Enables ported Android apps to be installed and integrate with BlackBerry PlayBook OS and BlackBerry 10  Deep integration with BlackBerry native framework with the objective to make Android apps almost indistinguishable from native applications 4

What is the Android Runtime? Compatibility & Limitations • About 70% of all Android apps are compatible today • Not all Android APIs are supported ►

Hardware and OS limitations

• Android Apps are limited to the personal perimeter ►

No Enterprise support

• Full compatibility list see: ►

http://developer.blackberry.com/android/apisupport 5

BlackBerry 10 Features Usability and Compatibility

6

BlackBerry 10 Features Improved Usability  Text input controls are now integrated with the BlackBerry 10 virtual keyboard

 Support for notifications 

Integrated with BlackBerry Hub and as a splat on your application icon

 Multimedia sync 

Multimedia created using Android apps is visible to native BlackBerry 10 multimedia applications. This includes pictures and videos 7

BlackBerry 10 Features Improved Usability  New intent support for BlackBerry 10 apps and cards 

 

 

 

Share via Email or SMS Create Calendar appointments Add information to Contacts Contact Picker Launch links via native Browser Dialer Support File Picker 8

BlackBerry 10 Features Improved Compatibility  New API support in BlackBerry 10 Runtime for Android Apps 

 

 

  

Camera API Camera Flash API Camera AutoFocus API In-App Payment API C2DM/GCM Support Ambient Light API Proximity sensor API Telephony APIs* (Not all supported) 9

BlackBerry 10 Features BlackBerry Runtime for Android Apps  What’s coming with Keyboard devices?  



Continued support for Android Runtime Support for 720x720 screen resolution QWERTY keyboard support

10

BlackBerry 10 Features Want to use Maps?  Support for location based intents to display maps  Use WebView + web services (Google, Bing, etc.) to display map content within apps  More details on mapping support can be found on the API Support Page 

http://developer.blackberry.com/android/apisupport

11

BlackBerry 10 Features Want to use Maps? @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main);

WebView webView = (WebView) findViewById(R.id.mywebview); webView.getSettings().setJavaScriptEnabled(true); webView.loadUrl("http://maps.google.com/?ll=36.97,122&lci=bike&z=13&t=p"); } 12

BlackBerry 10 Features Want to use In-App Payments?  In-App Payments supported through BlackBerry World  Use the same Digital Good SKUs used for Item IDs in the Android payment system  Couple of items to remember: 

  

Only one purchase can be made at a time (No concurrent transactions) Refunds are not supported Subscriptions are not supported Transaction responses are not signed

 http://developer.blackberry.com/android/apisupport 13

BlackBerry 10 Features Want to use Push?  Push support for Cloud to Device Messaging(C2DM) and Google Cloud Messaging(GCM)  To create a push-enabled Android app, you need to:   



Register with the Push Service Create the configuration file Specify Push as a required permission in the .bar file's manifest file On the push-initiator server side, format the data to be sent to BlackBerry application servers instead of Google application servers

 http://developer.blackberry.com/android/apisupport 14

Demo New features

15

Development Basics Convert, Sign and Submit!

16

Development Basics Simple Process  Tools    

Online Conversion Tool - Quickest way to get apps converted Eclipse Plug-in - For most Android developers Command-line Tools - Advanced development options Simulators - BlackBerry PlayBook and BlackBerry 10

 Basic concepts  

Code Signing Development Debug Tokens 17

Converting Existing Apps Online Conversion Tool



Select the location of your APK file



Select the location of your Android SDK folder

18

Converting Existing Apps Online Conversion Tool

19

Converting Existing Apps Online Conversion Tool

Warnings range from mild (level 1) to severe (level 5) ► Apps that receive warnings less than level 2 are considered compatible ► Apps which receive warnings of level 2 or higher are generally considered to be incompatible ►

20

Converting Existing Apps Eclipse Plug-in for Android 1.5 • ADT Plug-in for Eclipse + BlackBerry Plug-in for ADT ►

BlackBerry PlayBook, BlackBerry 10 and simulators are just another device target for your existing Android project



Debugging applications on BlackBerry just like on other Android devices

21

Converting Existing Apps Eclipse Plug-in for Android 1.5.1  What’s new in BlackBerry Plug-in for ADT 

Support for Windows 8, Mountain Lion 10.8, Ubuntu 12.04



Added support for ADT 21.0.1



Icon size now includes support for xhpdi and hdpi Android icons  High resolution icons will be converted to 114x114 for BlackBerry 10  xhdpi 96x96 icons will be resized for PlayBook or BlackBerry 10 if higher resolution icon is not present



Support for BAR manifest additions

22

Development Basics Command-line SDK Repackage your APK to a BAR file in 4 easy steps… 1) Check your APK for compatibility apk2barVerifier

2) Repackage your APK file as a BAR apk2bar

3) Sign your application batchbar-signer

4) Deploy your application

C:\Program Files\Android\android-sdk\bin> apk2barVerifier HelloWorld.apk C:\Program Files\Android\android-sdk\bin> apk2bar HelloWorld.apk C:\Program Files\Android\android-sdk\bin> batchbar-signer HelloWorld.bar author.p12 p12password rdkpassword C:\Program Files\Android\android-sdk\bin> blackberry-deploy –installApp –device 169.254.0.1 –package HelloWorld.bar –password devicepassword

blackberry-deploy 23

Development Basics Common Verification Errors  When you run verification on your application, you might see warnings or errors  These not errors. Features requiring minimal OS verison   

uses-feature: android.hardware.camera:required minimal OS version=2.1:impact=2 uses-permission: com.google.android.c2dm.permission.RECEIVE:required minimal OS version=10.0.9:impact=2 uses-feature: android.hardware.telephony:required minimal OS version=10.0.6:impact=2

 These are features not supported   



native-code: armeabi:impact=5 uses-library: android.test.runner:impact=4 uses package: com.google.android.maps:impact=3 targetSdkVersion: 14 is higher than 10:impact=1

24

Converting Existing Apps Sign Apps for BlackBerry World 

A code signing key is required to test your app and to publish your app to BlackBerry World



They can also be used to generate a debug token for your BlackBerry PlayBook or BlackBerry 10 Device



Request code signing keys here 

http://developer.blackberry.com/android/signingkey

25

Development Basics Submit to BlackBerry World  FREE to register 

No registration/submission fees. None. $0.00

 Global marketplace  70/30 revenue share  Credit card, PayPal, carrier billing  Free and paid apps catalog  Integrated barcode scanning 26

Development Basics Submit to BlackBerry World  What do you need to submit your application  

 

Application for membership Account Application and a great app name Great description and details about your application Create an icon, screen shots, vendor logo  App Icon – 480x480  App Screen Shots – 1280x720 or 720x720

 Submit your app!  developer.blackberry.com/devzone/blackberryworld/prepar ing_your_app_for_blackberry_world.html 27

Success Stories • PineLake Communications on Porting Cubifice to BlackBerry 10 

Ported existing OpenGL Android application



Porting process took 1 hour



25x more downloads in BlackBerry World versus Google Play 28

Success Stories

Songza

29

Success Stories

30

Success Stories

Photo Studio

31

Success Stories

32

For More Information…  BlackBerry Runtime for Android apps homepage 

http://developer.blackberry.com/android/

 BlackBerry Runtime for Android apps Roadmap 

http://developer.blackberry.com/android/tools/roadmap/

 Repackaging and Development Tools 

http://developer.blackberry.com/android/tools/

 Getting started tutorial 

http://developer.blackberry.com/android/documentation/gettingstarted.html

33

Don’t Forget…  Download the Mobile Conference Guide from BlackBerry World. Search for BlackBerry Jam Europe!  Complete your session surveys in your conference portal or on your BlackBerry 10 device using the Mobile Conference Guide.  Join us at the BlackBerry Jam Europe Appreciation event tonight in the Europa Foyer on the RAI’s ground floor.

34

THANK YOU JAM 354 Matthew Whiteman - Product Manager

February 6, 2013