SlideShare une entreprise Scribd logo
1  sur  34
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
Porting Android Apps To BlackBerry 10

Contenu connexe

Dernier

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 

Dernier (20)

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 

En vedette

Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 

En vedette (20)

Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 

Porting Android Apps To BlackBerry 10

  • 1. Android Onboarding & Virtual Office Hours Android Developer Onboarding & Virtual Office Hours
  • 2. 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
  • 3. 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
  • 4. 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
  • 5. 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. 6 The Android Runtime In Action ► Songza
  • 7. The Android Runtime In Action SkyArabiaNews 7
  • 8. 8 The Android Runtime In Action ► Flipboard
  • 9. 9 The Android Runtime In Action ► Deezer & WordPress
  • 10.
  • 11. 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
  • 12. 10.2.1 Gold– January 2014 12 Android Roadmap
  • 13.
  • 14. 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
  • 15. 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>
  • 16. 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
  • 17.
  • 18. 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/
  • 19. 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
  • 20.
  • 21. 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
  • 22. 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. 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. 24 bin>blackberry-apkpackager –gui Repackaging APK Files ► Option 2: GUI-based SDK
  • 25. 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. 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. 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
  • 28.
  • 29.  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
  • 30.  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
  • 31.  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
  • 32.  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
  • 33.  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