introduction to nokia asha sdk 1.0
TRANSCRIPT
INTRODUCTION TO NOKIA ASHA SDK 1.0
Attila Csipa Technology Wizard Twitter: @achipa Nokia
CONTENTS Introduction Nokia Asha developer offering Nokia Asha SDK Installation SDK Contents Nokia IDE for Java Emulator Remote device access APIs (new and updated) Bundled libraries LWUIT Tantalum Tips (and unsupported tricks)
NOKIA ASHA DEVELOPER OFFERING
Nokia Asha SDK 1.0 (Java ME) Nokia Asha web app tools 3.0.0 Xpress Web App Builder 1.0
© 2013 Nokia DevelopingForTheNewAshaPlatform.pptx v. 0.2 2013-04-20 Attila Csipa
NOKIA ASHA SDK 1.0 INSTALLATION Nokia Asha SDK 1.0 offline/online installers from http://www.developer.nokia.com/java Prerequisite: 32bit Java 7 (now works with latest update, too!)
NOKIA ASHA SDK 1.0 - Nokia IDE 2.0 for Java
(Eclipse based IDE adapted for Asha development)
- Now with bundled libraries LWUIT, HERE Maps, Tantalum
- Documentation, Design Guidelines & Examples - Nokia Asha Emulator - On-Device Debugger (via WiFi) - SDK Manager
(Making the SDK itself and it’s components updatable)
5 © 2013 Nokia DevelopingForTheNewAshaPlatform.pptx v. 0.2 2013-04-20 Attila Csipa
JAD Editor
NOKIA IDE FOR JAVA
© 2012 Nokia Asha 2013 technical briefing v1.2 November 14, 2012 Attila Csipa
Device SDK Manager
Integrated SDK + Toolchain
App Templates App Templates
JAD Editor
EMULATOR – ALMOST A REAL DEVICE - Speeds up development cycle - Use for screenshots!
- Customize input
- Keyboard/touch (pinch) - Sensors (accelerometers, network, location) - Multimedia (webcam)
- Content is at - C:\Nokia\Devices\Nokia_Asha_SDK_1_0\bin\Storage\10000
- Needs emulator restart if filesystem updated directly - The number will increase (10002, etc) if multiple simultaneous emulators run
REMOTE DEVICE ACCESS When the emulator is not enough http://developer.nokia.com/Devices/Remote_device_access/ Now with the Asha 501(s)! Caveats: - choose modem connection if prompted - install via memory (not via RDA)
PLATFORM COMPATIBILITY (GOOD!)
UX EVOLUTION
3” QVGA screen
© 2013 Nokia DevelopingForTheNewAshaPlatform.pptx v. 0.2 2013-04-20 Attila Csipa
API OFFERING: EXTENDING THE PLATFORM
CLDC 1.1 (JSR-139)
MIDP 2.1 (JSR-118)
File Connection and PIM API (JSR-75)
Bluetooth and OBEX API (JSR-82)
Wireless Messaging API 1.0 (JSR-120)
Wireless Messaging API 2.0 (JSR-205)
Mobile Media API (JSR-135)
Web Services API (JSR-172)
SATSA-CRYPTO API (JSR-177)
Location API (JSR-179)
Mobile 3D Graphics API v1.0 (JSR-184)
Content Handler API (JSR-211)
Scalable Vector Graphics API (JSR-226)
Advanced Multimedia Supplements (JSR-234)
Mobile Sensor API (JSR-256) com.nokia.mid.media com.nokia.mid.ui com.nokia.mid.ui.frameanimator com.nokia.mid.ui.gestures com.nokia.mid.ui.locale com.nokia.mid.ui.orientation
Mobile Internationalization API (JSR-238) File Select API Image Scaling API Network State API Phone Info API Contact API Nokia Notification API (NNA)
© 2013 Nokia DevelopingForTheNewAshaPlatform.pptx v. 0.2 2013-04-20 Attila Csipa
NEW ASHA JAVA APIS
Contact File select Network state Phone settings
Moving from Service APIs to a PUBLIC PLATFORM OFFERING
LIBRARIES NOW BUNDLED WITH THE SDK - HERE Maps API - Lightweight UI Toolkit – LWUIT - Tantalum
13 © 2013 Nokia DevelopingForTheNewAshaPlatform.pptx v. 0.2 2013-04-20 Attila Csipa
LWUIT FOR NOKIA ASHA SOFTWARE PLATFORM 1.0
• New port of LWUIT, targeting specifically new Asha platform
• Based on the LWUIT for Series 40 v1.0 • Adds Nokia Asha Software Platform 1.0 Theme • Adds 8 new components • Changes and adaptations of existing
components to new Asha platform • Improved performance especially in themes
memory usage. • 24 Examples in SDK • Double-check you’re including the right JAR!
LWUIT SDK PLUGIN AND DEV GUIDES LWUIT plugin and examples in Asha SDK 1.0 Beta: C:\Nokia\Devices\Nokia_Asha_SDK_1_0\plugins\lwuit Brand new LWUIT Developer’s Library, covering Asha, Series 40 and UX: https://www.developer.nokia.com/Resources/Library/LWUIT
THE NEW LWUIT UI COMPONENTS FOR THE NOKIA ASHA SOFTWARE PLATFORM:
• ContextMenu • DatePicker • GroupHeader • HeaderBar • InfiniteProgressIndicator • NotificationBar • PopupChoiceGroup • RefreshLoadBar
NOKIA NOTIFICATIONS API - Push based solution - Optimized to be data cost and battery-life friendly - Requires a data connection - Shared channel across multiple applications - Works even if application is not running - Environment selector provided for switching between Sandbox and Production
environments (present in SDK/Emulator by default, but not on devices) - Unlike Full Touch devices, in the Nokia Asha SDK 1.0 it’s a public API
TANTALUM
- Thread pooling (worker pattern, asynchronous processing) - Fork-Join (rich UI threading) - Weakreference hashtables (for optimal memory footprint) - HTTP networking with caching (transparent caching on flash or RMS) - Logging - JSON support from org.json.me library - Simplified XML parsing
- … and it’s small!
LINUX DEVELOPMENT OPTIONS - No official support - …but development is very much possible (with SDK integration even) !
- Installing the SDK - http://developer.nokia.com/Community/Wiki/Developing_Nokia_Asha_apps_on_Linux
- Integrating with NetBeans - http://developer.nokia.com/Community/Wiki/Developing_Nokia_Asha_apps_on_Linux
_with_Netbeans
© 2013 Nokia DevelopingForTheNewAshaPlatform.pptx v. 0.2 2013-04-20 Attila Csipa
SUMMARY
© 2013 Nokia DevelopingForTheNewAshaPlatform.pptx v. 0.2 2013-04-20 Attila Csipa
New UX paradigm Backwards Java and web apps compatibility Integrated and extended platform API approach
MORE INFORMATION Overview
– www.developer.nokia.com/Develop/asha/java/start/ Downloads
– SDK: www.developer.nokia.com/Develop/asha/java/tools.xhtml – LWUIT: projects.developer.nokia.com/LWUIT_for_Series_40
Guides – Nokia Asha Design Guidelines:
www.developer.nokia.com/Resources/Library/Asha_UI/ – Porting guide: www.developer.nokia.com/Resources/Library/Porting_to_Series_40/ – Documentation: www.developer.nokia.com/Develop/asha/java/resources/docs/ – Training Videos: www.developer.nokia.com/Develop/asha/learning.xhtml – Code Examples: www.developer.nokia.com/Develop/asha/java/resources/code/
THANK YOU