Description
HP webOS training (HP webOS 3.0) introduces mobile app development based on HP's web-based operating system. The course builds the foundation to develop webOS applications composed of one or more distinct scenes, rendered on a stage.
The webOS Mojo Framework and webOS enyo framework are introduced along with the Services API that provides access to system and hardware capabilities.
Using services, mobile applications can send and receive messages from a remote server, communicate with other applications on the device, set alarms and calendar events, and play media files.
Course Outline
Overview of webOS framework
- HP webOS SDK
- Command line tools for creating, packaging, installing
- Debugging the applications
- Oracle® VirtualBox™, a virtual machine environment
- HP command line tools
- Using Eclipse™ with the webOS plug-in
- Debugging, packaging, installing, and running webOS applications
- The Mojo framework
- The Enyo Framework
webOS Application Basics
- Core of webOS apps
- The structure, framework, and functions that make up the core of webOS apps
- Building Your First App
- Create your first webOS application
- webOS UI design
- Canvas Game Development
- Menus
- Designing and coding the various menu types
- All About Widgets
- Developing and Distributing with Palm
ENYO FRAMEAORK FEATURES
- Overview of Javascript App Frameworks
- Support for multiple form factors/aspect ratios
- Faster performance
- Modern, modular design - easier to maintain and reuse code
- Hardware acceleration built-in
- Browser-based development
- webGL
- CSS3
- Hardware-accelerated animations and transformations
- HTML5 video
- Multitasking
- Notification
Enyo Framework Application Model
- HTML/CSS/JavaScript code
- Server-Side Systems
- Software Logic Data
- Web Server
- HTTP
- HTML/CSS
- User Interface
- Navigation
- Launcher
- Card View
ENYO FRAMEAORK COMPONENTS
- Enyo Application Framework
- HTML, CSS, and JavaScript
- Enyo Basics
- Enyo and HTML (Controls)
- Kinds, Components, Controls
- Enyo API Reference
- Development Process
- Working with the Emulator
- Application Structure
- Globalization
- Services
- Layout and Containers
- Controls
- Multimedia
- Events and Objects
- Utilities
Application Development Checklist
-
App Submission Guide
-
Developing Web Content for webOS
-
Plug-in Development
-
Creating an Application Package
-
Combining JavaScript and PDK apps
-
PDK App Submission Guide
-
web-hosted development environment for creating webOS apps
-
Eclipse Plug-in
-
Emulator
-
Command Line Tools
-
Developing on an Unactivated Device
-
Debugger
-
Palm Inspector
-
Radio Simulator
-
palm-log
-
webOS Resource Monitor
-
Third-party Tools
-
Services Overview
-
Access core applications, hardware, system services, and cloud services
-
Advanced Application Guidelines
-
Application Assistant, Command Handler, Launch Handler, and the Notification Chain.
-
Client-server
-
Create a webOS Wiki that synchronizes between the device and the server
-
Dashboards and Notifications
-
Custom Feeds
-
Background Applications
-
Localization
-
Specialized Topics
-
Garbage Collection
Widget Models
- Button
- CheckBox
- DatePicker
- Drawer
- FilterField
- FilterList
- ImageView
- IntegerPicker
- List
- ListSelector
- PasswordField
- ProgressBar
- ProgressPill
- ProgressSlider
- RadioButton
- RichTextEdit
- Scroller
- Slider
- Spinner
- TextField
- TimePicker
- ToggleButton
- WebView
PLUG-IN DEVELOPMENT BASICS
- Writing applications in C/C++ or a combination of C/C++ and JavaScript
- The Plug-In Development Kit (PDK)
- New in webOS 3.0
- Plug-In Development Kit (PDK) apps
- Core Technologies
- GCC for compiling C/C++ code to ARM native code
- OpenGL ES 1.1 or 2.0.
- Simple DirectMedia Library (SDL) Compass struct
- Application Development
- Display Access
- Input Handling
- Media Handling
- Device File System Access
- Accessing Services
- Application Interrupt Handling
- Memory Management
- Accessing the Network on the Device
- Linking for the Device
Services APIs
- Calls
- PDL_CallJS
- PDL_GetJSParamDouble
- PDL_GetJSParamInt
- PDL_GetJSParamString
- PDL_GetNumJSParams
- PDL_JSException
- PDL_JSRegistrationComplete
- PDL_JSReply
- PDL_RegisterJSHandler
Plug-in APIs
- Palm PDK Library
- OpenGL
- SDL library
- Call
- PDL_BannerMessagesEnable
- PDL_CustomPauseUiEnable
- PDL_EnableLocationTracking
- PDL_GesturesEnable
- PDL_GetAppinfoValue
- PDL_GetCallingPath
- PDL_GetDataFilePath
- PDL_GetDeviceName
- PDL_GetErr
- PDL_GetHardware
- PDL_GetKeyName
- PDL_GetLanguage
- PDL_GetLocation
- PDL_GetNetInfo
- PDL_GetOSVersion
- PDL_GetPDKVersion
- PDL_GetScreenMetrics
- PDL_GetUniqueID
- PDL_Init
- PDL_isAppLicensedForDevice
- PDL_IsPlugin
- PDL_LaunchBrowser
- PDL_LaunchEmail
- PDL_NotifyMusicPlaying
- PDL_Quit
- PDL_ScreenTimeoutEnable
- PDL_SetFirewallPortStatus
- PDL_SetOrientation
- PDL_SetTouchAggression
- PDLNet_Get_Info
Labs
- Building Your First App
- Application Launch Cycle
- Create your first HP webOS application
- The Application Directory
- Set up the application directory structure
- Assistants and Controllers
- Events
- Application Information
- Setting the Stage
- Starting the Emulator
- Running Applications on the Emulator
- Package and install the application on the emulator
- First screen shot
- Creating a Scene
- Create and edit the first scene
- Stage Assistant
- Push the application scene
- Script Writing
- Add a button handler function
- Bind and register the handler