Professional Tizen Application Development
Buy Rights Online Buy Rights

Rights Contact Login For More Details

More About This Title Professional Tizen Application Development

English

Create powerful, marketable applications with Tizen for the smartphone and beyond 

Tizen is the only platform designed for multiple device categories that is HTML5-centric and entirely open source. Written by experts in the field, this comprehensive guide includes chapters on both web and native application development, covering subjects such as location and social features, advanced UIs, animations, sensors and multimedia.

This book is a comprehensive resource for learning how to develop Tizen web and native applications that are polished, bug-free and ready to sell on a range of smart devices, beyond just smartphones. Tizen is an open source platform that is housed within the Linux Foundation and is fully supported by Intel, Samsung and the Tizen Association. 

Professional Tizen Application Development:

• Explains how web applications can combine HTML5 features with Tizen device APIs to unleash the full potential of the Tizen platform

• Provides detailed, practical explanations of the most important Tizen native APIs

• Demonstrates best practices for adding key features like location, contacts and calendars to your apps

• Shows you how to use advanced features such as animations, face recognition and sensors to help you create applications that stand out from the crowd

• Shares code on advanced topics including multi-threading and hybrid applications

• Includes numerous fully functional code examples, for both web and native applications, complete with hints and tips to get the most out of the Tizen APIs

Hojun Jaygarl, Yoonsoo Kim, Eunyoung Choi are Samsung engineers working on Tizen. Cheng Luo, Kevin Bradwick and Jon Lansdell are experienced professional developers.

 
Professional Tizen Application Development prepares you to start creating amazing apps for multiple devices with the Tizen platform.

English

Hojun Jaygarl, Yoonsoo Kim, and Eunyoung Choi are Samsung engineers working on Tizen. Cheng Luo, Kevin Bradwick, and Jon Lansdell are experienced professional developers.

English

Introduction xxiii

Part I: Getting Started

Chapter 1: An Introduction to Tizen 3

Discovering Tizen 3

The Tizen Association and Tizen Project 4

The Tizen Ecosystem 4

Reasons for Programming in Tizen 5

Tizen Is Based on Standards 5

Tizen Is Open 5

Tizen Is Heterogeneous 6

Tizen Has Industry Support 6

Installing the Tizen SDK 6

Prerequisites 6

Installing the SDK 7

Creating the Tizen Hello World Web Application 9

Creating the Hello World Tizen Native Application 13

Signing the Hello World Application 17

Summary 19

Chapter 2: Tizen App lication Packages 21

Packaging a Web Application 21

Packaging a Native Application 25

Packaging a Hybrid Application 29

Using Optional Features 31

Using Privileged APIs 35

Signing a Package 38

Summary 40

Chapter 3: Tizen Development Tools 41

The Tizen IDE 41

Tizen Emulator 42

Enabling Hardware Acceleration 45

Using the Tizen Emulator 45

Tizen Web Simulator 48

Smart Development Bridge 50

Debugging and Testing 53

Designing the UI with the UI Builder 56

Summary 58

Part II: Tizen Web APIs

Chapter 4: Web Application Fundamentals 61

The Web Runtime 62

Tizen Device APIs 63

Tizen Web UI Framework 65

Overview of the Tizen Web UI Framework 66

The Basics of jQuery Mobile 68

Using the UI Builder 69

Choosing Your Widgets 70

Implementing Events in the UI Builder 71

Summary 75

Chapter 5: Location-Based Services 77

Displaying a Map 78

Detecting a User’s Location 80

Monitoring the User’s Position 83

A Word of Caution 84

Adding Markers to a Map 84

Geocoding and Reverse Geocoding 85

Summary 87

Chapter 6: Multimedia 89

Discovering Multimedia Content 89

Embedding HTML5 Audio and Video 95

Capturing Images 96

Creating a Simple Camera Application 97

Capturing an Image 99

Summary 102

Chapter 7: Sensors and Other Hardware 103

Device Orientation 103

A Working Example 105

Near Field Communication (NFC) 110

Using NFC in Your Web Applications 111

Peer-to-Peer Mode 114

Summary 116

Chapter 8: Messaging Services 117

Messaging Service 117

E-Mail Client Example 124

Summary 131

Chapter 9: Contacts and Calendars 133

Setting Privileges 133

The Contact API 134

Address Book 134

Contacts 136

Person Objects 144

The Calendar API 146

Calendar Events 149

Calendar Tasks 149

Adding Events 151

Getting Events 153

Updating Events 153

Creating Recurring Events 154

Setting Alarms 157

Converting Events to iCalendar Format 158

Summary 159

Part III: Tizen Native APIs

Chapter 10: Native UI Applications 163

UI Framework Architecture 163

Types of Native UI Applications 166

Native UI Application Life Cycle 167

State Transition Flow 168

Initialisation and Termination 169

Application and Frame States 170

Creating a Form and Handling Events 171

Handling UI Events 175

Handling Hardware Keys 177

Handling Gestures 179

Summary 182

Chapter 11: Native Application fundamentals 183

Basic Idioms and Styles 184

Error Handling 184

Debugging Macro Functions 189

Two-Phase Construction 192

The RAII Idiom 193

Transferring Object Ownership 199

Fundamental Data Types 200

Object 200

String 201

Collection 206

STLConverter 214

DateTime and TimeSpan 218

ByteBuffer 221

Summary 223

Chapter 12: Native UI Controls 225

An Overview of UI Controls 225

Using Containers 227

Popups 228

Panels 229

Layout 230

Coordinate System 231

Using UI Controls 232

Button 232

EditArea, EditField, Textbox, and ExpandableEditArea 232

Keypad 233

Gallery 234

SearchBar 234

CheckButton 235

Slider and Progress 236

EditTime and EditDate 237

ContextMenu and OptionMenu 238

TabBar 239

ColorPicker 240

Header and Footer 240

ListViews 243

TableViews 244

Summary 247

Chapter 13: Multimedia and Content 249

Content and Content Information 250

Searching for Content 252

Managing Playlists 254

Playing Media Content 254

Playing Audio 256

Seeking in the Audio Player 257

Playing Video 258

Capturing Video in the Player 260

Playing Multiple Audio Sources 261

Recording Media Content 263

Recording Audio 263

Recording Video 265

Capturing Images from the Camera 268

Working with Images 269

Decoding Images 269

Editing Images 271

Encoding Images 271

Decoding Audio and Video 272

Decoding Audio Content 272

Decoding Video Content 272

Encoding Audio and Video 273

Encoding Audio Content 273

Encoding Video Content 273

Extracting Frames from Video 274

Media Application Controls 274

Music Player Application Control 275

Video Player Application Control 277

Camera Application Control 277

Image Viewer Application Control 279

Summary 281

Chapter 14: Telephony and Networking 283

Telephony 284

Phone and Call Application Controls 284

Getting the Current Call Information 286

Checking the Telephony Network and SIM State 289

Messages 291

SMS Messages 291

MMS Messages 298

E-mail 300

Push Messages 303

Networking 307

Network Connection Management 308

HTTP 312

Wi-Fi and Wi-Fi Direct 314

Bluetooth 320

NFC 325

Summary 331

Chapter 15: Location and Social Services 333

The Location Service 334

Location Settings 334

Location Criteria 336

Getting the Location 336

Monitoring Locations 337

Using a Map 343

The Social Service 343

Social Privacy Setting 344

Account Management 344

The Address Book 349

The Calendar Book 358

Summary 366

Chapter 16: Advanced UI and Graphics 367

Advanced UIs 367

Animations 368

Scene Management 377

Graphics 380

UI Extensions 382

Vision 383

Sensors 386

Speech 388

Summary 390

Chapter 17: I/O and Internationalisation 391

Predefined Directories 392

Handling File I/O 396

Basic File Operations 396

Getting File Attributes 399

Copying, Moving, and Deleting Files 401

Handling Directories 402

Locking Files 405

Observing File and Directory Changes 406

Building a Database 409

Creating a Table 409

Creating a Row 410

Updating a Row 412

Deleting a Row 413

Querying a Table 414

Monitoring Storage Events 415

Internationalising Your Applications 417

Handling Different Text Encodings 417

Handling Locale-Sensitive Information 425

Summary 430

Part IV: Advanced Tizen

Chapter 18: Multithreading 433

Worker Threads 434

Making an Asynchronous Worker 437

Using Timers 443

Asynchronous Inter-thread Communication 445

Summary 455

Chapter 19: Inter-Application Communication and Hybrid Applications 457

Inter-Application Communication 458

Message Ports 458

Creating a LocalMessagePort in a Native Application 459

Sending a Message to Another Application 461

Receiving a Message Response 461

Defining a Message Protocol 463

Sending Requests to a Native Application from a Web Application 467

Using a Trusted Message Port 474

Making a Hybrid Package 475

Summary 477

Index 479

loading