Implement minor quality enhancements in Training 27/133427/4
authorEditor Lionbridge <TizenEditor.SEL@lionbridge.com>
Mon, 12 Jun 2017 07:12:53 +0000 (10:12 +0300)
committerEditor Lionbridge <TizenEditor.SEL@lionbridge.com>
Wed, 12 Jul 2017 13:27:27 +0000 (16:27 +0300)
This is a manual cherry-pick from the #130737 change in the tizen_3.0
branch.

The cherry-pick is not absolutely identical, because the branches have some synch
differences, but similar issues have been fixed.

PS2: Rebase
PS3: Added missing Convergence API info to native "Tizen APIs" topic
PS4: Rebase

Change-Id: I8c143a07672622d634a3f571ef6770a0547b4c61

38 files changed:
org.tizen.training/html/cover_page.htm
org.tizen.training/html/images/emulator_template.png [deleted file]
org.tizen.training/html/images/signature_flow.png
org.tizen.training/html/index.htm
org.tizen.training/html/native/app_model/application_model_n.htm
org.tizen.training/html/native/cover_page_n.htm
org.tizen.training/html/native/details/app_filtering_n.htm
org.tizen.training/html/native/details/deprecation_policy_n.htm
org.tizen.training/html/native/details/error_handling_n.htm
org.tizen.training/html/native/details/event_handling_n.htm
org.tizen.training/html/native/details/io_overview_n.htm
org.tizen.training/html/native/details/sec_privileges_n.htm
org.tizen.training/html/native/details/sign_certificate_n.htm
org.tizen.training/html/native/details/tizen_apis_n.htm
org.tizen.training/html/native/feature/app_connectivity_n.htm
org.tizen.training/html/native/feature/app_connectivity_operation_n.htm
org.tizen.training/html/native/feature/app_connectivity_p2p_n.htm
org.tizen.training/html/native/feature/app_contacts_group_n.htm
org.tizen.training/html/native/feature/app_contacts_management_n.htm
org.tizen.training/html/native/feature/app_contacts_n.htm
org.tizen.training/html/native/feature/app_graphics_polygon_n.htm
org.tizen.training/html/native/feature/app_multimedia_audio_n.htm
org.tizen.training/html/native/feature/app_multimedia_video_n.htm
org.tizen.training/html/native/feature/app_sensor_accelerator_n.htm
org.tizen.training/html/native/feature/app_sensor_proximity_n.htm
org.tizen.training/html/native/feature/best_practice_battery_n.htm
org.tizen.training/html/native/feature/ui_builder_app_design_mn.htm
org.tizen.training/html/native/feature/ui_builder_overview_mn.htm
org.tizen.training/html/native/getting_started_n.htm
org.tizen.training/html/web/app_model/application_model_w.htm
org.tizen.training/html/web/cover_page_w.htm
org.tizen.training/html/web/details/app_filtering_w.htm
org.tizen.training/html/web/details/deprecation_policy_w.htm
org.tizen.training/html/web/details/event_handling_w.htm
org.tizen.training/html/web/details/sign_certificate_w.htm
org.tizen.training/html/web/details/tizen_apis_w.htm
org.tizen.training/html/web/details/web_runtime_w.htm
org.tizen.training/html/web/getting_started_w.htm

index 90d3ab4..68501b6 100644 (file)
@@ -56,7 +56,7 @@
 <p>The native applications use the Native API, which provides all of the memory management and performance benefits that come with building applications for Linux in C. The Native API is extremely helpful, as it includes dozens of API modules that cover a large range of capabilities. It provides numerous interfaces to much of the hardware that is found in modern mobile and wearable devices, and does so in an environment that is tailored for limited resources.</p></li>
 <li><a href="web/cover_page_w.htm">Web application</a> is essentially a Web site stored on your device and built using Web-native languages, such as HTML5, CSS, and JavaScript. The Web application uses the Tizen Web Framework to interact with the native subsystems.
 <p>The Web applications use the Web API, which is a standard Web application project structure with basic elements. The Web API is designed to allow you to easily build applications using Web-native languages.</p>
-<p>A program built using the Web API is laid out much like a standard Web site with an <code>index.html</code> file that serves as the root, and separate directories for resources, such as JavaScript, CSS, images, and sound resources. This approach makes Web application development in Tizen extremely intuitive for developers with a background in Web development, and makes it easy to quickly write simple applications using high-level languages.</p></li>
+<p>A program built using the Web API is laid out much like a standard Web site. It has an <code>index.html</code> file that serves as the root, and separate directories for resources, such as JavaScript, CSS, images, and sound resources. This approach makes Web application development in Tizen extremely intuitive for developers with a background in Web development, and makes it easy to quickly write simple applications using high-level languages.</p></li>
 </ul>
 <p>The following figure illustrates the Tizen architecture model supporting the 2 application types.</p>
 <p align="center"><strong>Figure: Tizen architecture</strong></p>
@@ -83,7 +83,7 @@
 
 <ul>
        <li>Training
-       <p>The training section provides overall information you need to become familiar with Tizen programming and application model. Its Getting Started sections also walk you through creating your first Tizen application.</p>
+       <p>The training section provides overall information you need to become familiar with Tizen programming and the Tizen application model. Its Getting Started sections also walk you through creating your first Tizen application.</p>
        </li>
        <li><a href="../../org.tizen.guides/html/cover_page.htm">Guides</a>
        <p>The Tizen guides introduce the various features that you can use in creating Tizen applications, and teach you how to incorporate them into your application. They also instruct you in planning and developing a user interface for your application. The guides contain detailed code examples to help you write the required code in practice.</p>
diff --git a/org.tizen.training/html/images/emulator_template.png b/org.tizen.training/html/images/emulator_template.png
deleted file mode 100644 (file)
index 8d6a35d..0000000
Binary files a/org.tizen.training/html/images/emulator_template.png and /dev/null differ
index 812695f..a8c5c53 100644 (file)
Binary files a/org.tizen.training/html/images/signature_flow.png and b/org.tizen.training/html/images/signature_flow.png differ
index de0bed5..7c223b4 100644 (file)
                <li>
                        <a href="native/getting_started_n.htm" target="content">Getting Started</a>
                        <ul>
-
-                       <li><a href="native/mobile/first_app_mn.htm" target="content">Creating Your First Tizen Mobile Native Application</a></li>
-                       <li><a href="native/wearable/first_app_wn.htm" target="content">Creating Your First Tizen Wearable Native Application</a></li>
-                       <li><a href="native/wearable_watch/first_app_watch_wn.htm" target="content">Creating Your First Tizen Wearable Native Watch Application</a></li>
-                       <li><a href="native/wearable_widget/first_app_widget_wn.htm" target="content">Creating Your First Tizen Wearable Native Widget Application</a></li>
+                               <li><a href="native/mobile/first_app_mn.htm" target="content">Creating Your First Tizen Mobile Native Application</a></li>
+                               <li><a href="native/wearable/first_app_wn.htm" target="content">Creating Your First Tizen Wearable Native Application</a></li>
+                               <li><a href="native/wearable_watch/first_app_watch_wn.htm" target="content">Creating Your First Tizen Wearable Native Watch Application</a></li>
+                               <li><a href="native/wearable_widget/first_app_widget_wn.htm" target="content">Creating Your First Tizen Wearable Native Widget Application</a></li>
                        </ul>
                </li>
                <li><a href="native/process/app_dev_process_n.htm" target="content">Application Development Process</a>
        </ul>
 
 <div class="treeheader">
-       <h2><a href="web/cover_page_w.htm" target="content">Web Application</a></h2>
+<h2><a href="web/cover_page_w.htm" target="content">Web Application</a></h2>
 </div>
 
 <div id="sidetreecontrol2">
index dec0c8c..256884d 100644 (file)
@@ -43,7 +43,7 @@
 <div id="container"><div id="contents"><div class="content">
  <h1>Tizen Native Application Model</h1>
 <p>The Tizen native application model handles application life-cycle and system events. Tizen native application life-cycle is handled by the Application API (in <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__APPLICATION__MODULE.html">mobile</a> and <a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__APPLICATION__MODULE.html">wearable</a> applications). It provides functions to manage the main event loop, the application state change events, and basic system events.</p>
-<p>Tizen supports both UI applications (which have a graphical user interface) and service applications (which have no graphical user interface). The UI and service applications can be packaged together, if necessary; however, a combined application package must contain only 1 UI application, while it can have several service applications. </p>
+<p>Tizen supports both UI applications (which have a graphical user interface) and service applications (which have no graphical user interface). The UI and service applications can be packaged together, if necessary; however, a combined application package must contain only 1 UI application, while it can have several service applications.</p>
 <p>Applications in the same package follow the same installation life-cycle, which is handled by the application package manager. Each application in the package follows its own application life-cycle. Each application (UI application or service application) in an application package can be identified by its own ID.</p>
 
 <p>The following figure shows the UI and service application life-cycle.</p>
@@ -83,10 +83,9 @@ These devices have constraints, such as relatively small screen sizes and lack o
     <li><p>The low memory killer is terminating your application in a low memory situation.</p></li>
   </ul>
 
- <p>Because the service application has no UI, it neither has a pause state. Since Tizen 2.4, the service application can go into the suspended state. Basically, the service application is running on the background by its nature; so the platform does not allow the running of the service application unless it is designated as a background category application. However, when the UI application that is packaged with the service application is running in the foreground, the service application is also regarded as a foreground application and it can be run without a designated background category.</p>
+ <p>Because a service application has no UI, neither does it have a pause state. Since Tizen 2.4, a service application can go into the suspended state. Basically, the service application is running in the background by its nature; so the platform does not allow the running of the service application unless it is designated as a background category application. However, when the UI application that is packaged with the service application is running on the foreground, the service application is also regarded as a foreground application and it can be run without a designated background category.</p>
 
-<p>Application state changes are managed by the underlying framework.
-       For more information about application state transitions, see <a href="../../../../org.tizen.guides/html/native/app_management/efl_ui_app_n.htm#state_trans">Application States and Transitions</a>.</p>
+<p>Application state changes are managed by the underlying framework. For more information on application state transitions, see <a href="../../../../org.tizen.guides/html/native/app_management/efl_ui_app_n.htm#state_trans">Application States and Transitions</a>.</p>
 
 
 <h2 id="start" name="start">Starting the Tizen Native Application</h2>
@@ -101,7 +100,7 @@ These devices have constraints, such as relatively small screen sizes and lack o
 <li>Package ID
 <p>The package ID, such as <code>org.tizen.message</code> or <code>org.tizen.call</code>, is the application package identifier.</p>
 
-<p>The package ID functions as a unit for package installation, uninstallation, and upgrades. It is also the unit of the application package DRM, sandboxing, and privilege.</p></li>
+<p>The package ID functions as a unit for package installation, uninstallation, and updates. It is also the unit of the application package DRM, sandboxing, and privilege.</p></li>
 
 <li>Application ID
 <p>The application ID (<code>appid</code>) is the application identifier. Multiple applications are allowed in a package and the application ID is used to identify the different applications.</p>
@@ -262,7 +261,7 @@ uid(root, app) is applied to directories and files.</p></li>
   <p align="center"><img src="../../images/installer.png" alt="Installer" style="display: block; text-align: center; margin-left: auto; margin-right: auto" /></p>
 
   <p>The installer applies smack according to the privileges that are specified in the <code>tizen-manifest.xml</code> file.</p>
-<p>An application can only access the resources that are allowed by the privileges. The privileges are used in Tizen Store to show the permissions and receive user consent.</p>
+<p>An application can only access the resources that are allowed by the privileges. The privileges are used in the Tizen Store to show the permissions and receive user consent.</p>
 
 
 <h2 id="commands" name="commands">Package Commands</h2>
index 62babea..b1a2bce 100644 (file)
@@ -27,7 +27,7 @@
 <h1>Introduction to Native Applications</h1>
 
 
-<p>The introduction to native applications documentation provides overall information you need to become familiar with native-specific Tizen programming and application model:</p>
+<p>The introduction to native applications documentation provides overall information you need to become familiar with native-specific Tizen programming and the Tizen application model:</p>
 
 <ul>
 
@@ -69,7 +69,7 @@
 </li>
 
 <li><a href="feature/app_sensor_n.htm">Creating Applications with Sensors</a>
-<p>Demonstrates how you can create applications with the accelerator and proximity sensors to monitor user gestures and motions, such as phone tilting and accidental touch screen taps when held to the ear during call.</p>
+<p>Demonstrates how you can create applications with the accelerator and proximity sensors to monitor user gestures and motions, such as phone tilting and accidental touch screen taps when held to the ear during call.</p>
 </li>
 
 <li><a href="feature/best_practice_battery_n.htm">Best Practices for Location</a>
index 7c908a2..173a347 100644 (file)
 <li>When the application is running, check whether the device supports the needed features. If not, the application can use other features, which are supported by the device, as a workaround.
 <p>For example, if an application wants to use location information, it can check the device capability by using the <code>system_info_get_XXX()</code> function of the System Information API (in <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__SYSTEM__SYSTEM__INFO__MODULE.html">mobile</a> and <a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__SYSTEM__SYSTEM__INFO__MODULE.html">wearable</a> applications). If the device supports GPS, the application uses GPS information, and if the device supports WPS only, the application uses WPS information instead of GPS.</p>
 </li>
-<li>Use feature-based filtering to prevent your application from being shown in the application list on the Tizen Store, if the user's device does not support all the features of your application. This way you can prevent the application from being installed on an unsupportive device in the first place.
+<li>Use feature-based filtering to prevent your application from being shown in the application list on the Tizen Store, if the user's device does not support all the features of your application. This way you can prevent the application from being installed on an unsupported device in the first place.
 <p>Be careful when defining the feature list for feature-based filtering. The feature list can dramatically reduce your chances of getting the application downloaded by reducing the number of devices which can support the application.</p></li>
 </ul>
 
-<p>If the <code>tizen-manifest.xml</code> file of the application package includes a feature list, the Tizen Store compares the capabilities of the device with the required feature conditions of the application. The store only lists the applications whose conditions match the capabilities of the device, and thus prevents unsupported applications from being installed.</p>
+<p>If the <code>tizen-manifest.xml</code> file of the application package includes a feature list, the Tizen Store compares the capabilities of the device with the required feature conditions of the application. The store only lists the applications whose conditions match the capabilities of the device, and thus prevents incompatible applications from being installed.</p>
 
   <p align="center"><strong>Figure: Feature-based filtering</strong></p>
   <p align="center"><img align="center" alt="Feature-based filtering" src="../../images/app_filtering_basic_flow.png" /></p>
@@ -53,8 +53,8 @@
 
 <h3 id="screen_size" name="screen_size">Screen Size Feature</h3>
 <p>The screen size feature is the only exception to the normal feature handling process described above. When the screen size is defined in the feature list, the Tizen Store creates the filtering condition with the "OR" operation. For example, if the <code>http://tizen.org/feature/screen.size.normal.480.800</code> and <code>http://tizen.org/feature/screen.size.normal.720.1280</code> features are defined in your application feature list, a device that supports one or the other of those features can show the application on the Tizen Store application list.</p>
- <p>If you do not specify a proper screen size in the <code>tizen-manifest.xml</code> file, your application can be rejected from the Tizen store.</p>
- <p>The following table lists the available screen size features. </p>
+ <p>If you do not specify a proper screen size in the <code>tizen-manifest.xml</code> file, your application can be rejected from the Tizen Store.</p>
+ <p>The following table lists the available screen size features.</p>
 
  <p align="center" class="Table"><strong>Table: Available screen size features</strong></p>
  <table>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal</code></td>
                        <td>Specify this key, if the application supports all possible current and future resolutions on the normal screen size.
-                       <p>You cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored. For example, if you specify both <code>http://tizen.org/feature/screen.size.normal</code> and <code>http://tizen.org/feature/screen.size.normal.320.480</code> keys, only the <code>http://tizen.org/feature/screen.size.normal.320.480</code> key is applied.</p> <p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
+                       <p>You cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored. For example, if you specify both <code>http://tizen.org/feature/screen.size.normal</code> and <code>http://tizen.org/feature/screen.size.normal.320.480</code> keys, only the <code>http://tizen.org/feature/screen.size.normal.320.480</code> key is applied.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
                        </td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.240.400</code></td>
                        <td>Specify this key, if the application supports the 240 x 400 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
                        </td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.320.320</code></td>
                        <td>Specify this key, if the application supports the 320 x 320 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
                        </td>
                        <td>2.3</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.320.480</code></td>
                        <td>Specify this key, if the application supports the 320 x 480 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.360.360</code></td>
                        <td>Specify this key, if the application supports the 360 x 360 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.3.2</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.360.480</code></td>
                        <td>Specify this key, if the application supports the 360 x 480 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.3</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.480.800</code></td>
                        <td>Specify this key, if the application supports the 480 x 800 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.540.960</code></td>
                        <td>Specify this key, if the application supports the 540 x 960 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.600.1024</code></td>
                        <td>Specify this key, if the application supports the 600 x 1024 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.720.1280</code></td>
                        <td>Specify this key, if the application supports the 720 x 1280 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.1080.1920</code></td>
                        <td>Specify this key, if the application supports the 1080 x 1920 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.all</code></td>
                        <td>Specify this key, if the application supports all possible current and future screen sizes and all possible current and future resolutions per screen size.
-                       <p>You cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored.  For example, if you specify both <code>http://tizen.org/feature/screen.size.all</code> and <code>http://tizen.org/feature/screen.size.normal.320.480</code> keys, only the <code>http://tizen.org/feature/screen.size.normal.320.480</code> key is applied.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored.  For example, if you specify both <code>http://tizen.org/feature/screen.size.all</code> and <code>http://tizen.org/feature/screen.size.normal.320.480</code> keys, only the <code>http://tizen.org/feature/screen.size.normal.320.480</code> key is applied.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
        </tbody>
 
 <p>To enable filtering for your native application, add the feature list for the application <code>tizen-manifest.xml</code> file:</p>
   <ol>
-  <li>To open the manifest editor in the Tizen Studio, double-click the <code>tizen-manifest.xml</code> file in the <strong>Project Explorer</strong> view. </li>
-<li>In the <strong>Features</strong> tab, click <strong>Add</strong> and set the mandatory features for the application package. <p>The manifest file (<code>tizen-manifest.xml</code>) is updated automatically.</p>
-</li>
-   <li>Upload and publish the application package on the Tizen Store.</li>
-   <li>If a Tizen-powered device requests applications, the store displays a list containing only applications compatible with the user's device.</li>
+  <li>To open the manifest editor in the Tizen Studio, double-click the <code>tizen-manifest.xml</code> file in the <strong>Project Explorer</strong> view.</li>
+  <li>Select the features you need, one at a time:
+  <ol type="a">
+  <li>In the <strong>Features</strong> tab, click <strong>+</strong>.</li>
+       <li>Select a feature.</li>
+       <li>Click <strong>OK</strong>.</li>
+  </ol>
+  <p>The manifest file (<code>tizen-manifest.xml</code>) is updated automatically.</p></li>
   </ol>
 <p>The following tables show the available requirements for an application package. If you want to check which features are necessary for using a specific API, see the related feature in the native <a href="../../../../org.tizen.native.mobile.apireference/index.html">API Reference</a>.</p>
   <p align="center" class="Table"><strong>Table: Available mobile native requirements</strong></p>
 </table>
 
 <h2 id="profile_n" name="profile_n">Profile-based Filtering</h2>
-<p>A Tizen profile describes the requirements for a category of Tizen devices that have a common application execution environment. Applications are created for a single specific target profile, such as mobile, wearable, or TV, and can run on devices compliant to that profile.</p>
+<p>A Tizen profile describes the requirements for a category of Tizen devices that have a common application execution environment. Applications are created for a single specific target profile, such as mobile or wearable, and can run on devices compliant with that profile.</p>
 
 <p>Use profile-based filtering to ensure that your application is only downloaded on the appropriate device profile. To ensure this, declare the intended profile by adding the <code>profile name</code> element in the <code>tizen-manifest.xml</code> file.</p>
 
 <td>Wearable</td>
      <td><code>wearable</code></td>
     </tr>
-<tr>
-<td>TV</td>
-     <td><code>TV</code></td>
-    </tr>
 </tbody></table>
 
 <p>In a native application, the profile name element can be added to the <code>tizen-manifest.xml</code> file as follows:</p>
index 4eb2989..7fcfa1d 100644 (file)
@@ -41,7 +41,7 @@
 
 <h2 id="versioning">API Versioning</h2>
 
-<p>The version format used to identify the APIs of the Tizen platform is <strong>X.Y.Z</strong> (Major.Minor.Micro). All changes, including any kind of version upgrade, maintain the application binary interface (ABI) compatibility excepting only critical security reasons.</p>
+<p>The version format used to identify the APIs of the Tizen platform is <strong>X.Y.Z</strong> (Major.Minor.Micro). All changes, including any kind of version update, maintain the application binary interface (ABI) compatibility excepting only critical security reasons.</p>
 
 <h2 id="policy">Deprecation Policy and Schedule</h2>
 
index 45f31f9..48fdfc7 100644 (file)
@@ -63,7 +63,7 @@ BUNDLE_ERROR_OUT_OF_MEMORY /* Out of memory */
 
 <li>Obtaining a message for specific error code
 <p>Use the <code>get_error_message()</code> function to query the meaning of each error code.
-The pointer returned is a static variable, you must not free it.</p>
+The pointer returned is a static variable; you must not free it.</p>
 
 <p>For example:</p>
 <pre class="prettyprint">
index dd7521a..1f83f5c 100644 (file)
@@ -72,7 +72,7 @@
 <p>You can use the rotary events to change your application state (for example, change the value of the scroller or slider, change selected items, or zoom the image).</p>
 
 <p align="center"><strong>Figure: Rotary device</strong></p>
-<p align="center"><img alt="Rotary device" src="../../images/rotary_event.png" /> </p>
+<p align="center"><img alt="Rotary device" src="../../images/rotary_event.png" /></p>
 
 
 <h2 id="media" name="media">Media Key Events</h2>
index 33b6181..0bf79cf 100644 (file)
      <p>To get this directory path of your own application, call the <code>app_get_shared_resource_path()</code> function of the App common module.</p>
      <p>Files stored in the shared/res directory can be read by other applications. Do not pack application's private resource files in the shared/res directory.</p>
  </td>
- <td>Owner: Read<p> Others: Read</p></td>
+ <td>Owner: Read
+ <p>Others: Read</p></td>
 </tr>
 <tr>
  <td><code>shared/trusted</code></td>
  <td>Used to share data with family of trusted applications. The family applications signed with the same certificate can access data in the shared/trusted directory.
      <p>To get this directory path of your own application, call the <code>app_get_shared_trusted_path()</code> function of the App common module.</p>
  </td>
- <td>Owner: Read and Write<p>Family: Read and Write</p><p> Others: Access denied</p></td>
+ <td>Owner: Read and Write
+ <p>Family: Read and Write</p>
+ <p>Others: Access denied</p></td>
 </tr>
 </tbody>
 </table>
  <td>Used for Sound data.</td>
 </tr>
 <tr>
- <td><code>Vides</code></td>
+ <td><code>Videos</code></td>
  <td>Used for Video data.</td>
 </tr>
 <tr>
  <td>Used for Sound data.</td>
 </tr>
 <tr>
- <td><code>Vides</code></td>
+ <td><code>Videos</code></td>
  <td>Used for Video data.</td>
 </tr>
 <tr>
index 8976ee1..65e1026 100644 (file)
@@ -436,14 +436,16 @@ tr.partner-level, tr.platform-level { background-color: #cff }
 <td>public</td>
 <td></td>
 <td>2.3</td>
-<td>The application can save keys, certificates, and data to, and retrieve and delete them from, a password-protected storage. Checking the status of certificates while connected to a mobile network can result in additional charges depending on the user's payment plan. <p><strong>Deprecated since 3.0.</strong></p></td>
+<td>The application can save keys, certificates, and data to, and retrieve and delete them from, a password-protected storage. Checking the status of certificates while connected to a mobile network can result in additional charges depending on the user's payment plan.
+<p><strong>Deprecated since 3.0.</strong></p></td>
 </tr>
 <tr class="platform-level">
 <td><code>http://tizen.org/privilege/keymanager.admin</code></td>
 <td>platform</td>
 <td></td>
 <td>2.3</td>
-<td>The application can lock and unlock a password-protected storage, and manage password changes for it. <p><strong>Deprecated since 2.4.</strong></p></td>
+<td>The application can lock and unlock a password-protected storage, and manage password changes for it.
+<p><strong>Deprecated since 2.4.</strong></p></td>
 </tr>
 <tr>
 <td><code>http://tizen.org/privilege/led</code></td>
@@ -520,7 +522,8 @@ tr.partner-level, tr.platform-level { background-color: #cff }
 <td>public</td>
 <td></td>
 <td>2.4</td>
-<td>The application can show a small toolbar on the notification panel or lock screen while it is open. <p><strong>Deprecated since 3.0.</strong></p></td>
+<td>The application can show a small toolbar on the notification panel or lock screen while it is open.
+<p><strong>Deprecated since 3.0.</strong></p></td>
 </tr>
 <tr>
 <td><code>http://tizen.org/privilege/network.get</code></td>
@@ -1248,7 +1251,7 @@ tr.partner-level, tr.platform-level { background-color: #cff }
 <td>platform</td>
 <td></td>
 <td>2.3.1</td>
-<td>The application can restart the device. </td>
+<td>The application can restart the device.</td>
 </tr>
 <tr>
 <td><code>http://tizen.org/privilege/recorder</code></td>
@@ -1350,7 +1353,7 @@ tr.partner-level, tr.platform-level { background-color: #cff }
 <td>public</td>
 <td>2.3 / 2.3.1</td>
 <td>Most of the mobile and wearable devices use a cellular network for IP communication. However, the cellular network can cause data costs and an application that sends data through the Internet can be crucial for user privacy. Due to the importance of the functionality, a privilege for controlling application Internet access has been added.
-<p>The new privilege is coupled with IP addresses of the destination and source of the IP packets. If your socket is connecting to or listening for any IP address except 127.0.0.1, this privilege is required to communicate properly. If your application does not have this privilege, the connection is blocked in the kernel layer and returns an error in the <code>connect()</code> function as the permission is denied. If you are listening to a socket, you never receive any packets from the outside without errors on the socket functions.</p>
+<p>The new privilege is coupled with IP addresses of the destination and source of the IP packets. If your socket is connecting or listening to any IP address except 127.0.0.1, this privilege is required to communicate properly. If your application does not have this privilege, the connection is blocked in the kernel layer and returns an error in the <code>connect()</code> function as the permission is denied. If you are listening to a socket, you never receive any packets from the outside without errors on the socket functions.</p>
 <p>If you are using the <code>listen()</code> and <code>connect()</code> functions between the local loopback interface (127.0.0.1), you cannot connect to a random application (due to sandboxing) no matter how you add this privilege. However, you can connect between multiple processes of the same application binary.</p></td>
 </tr>
 <tr>
index c3f53c3..652e6a5 100644 (file)
@@ -35,7 +35,7 @@
 <h1>Application Signing and Certificates</h1>
 
 <p>Application signing is the process of digitally signing executables, scripts, and content of an application to confirm the application author and guarantee that the application has not been altered or corrupted since it was signed. The process employs the use of a cryptographic hash to validate authenticity and integrity.</p>
-<p>Tizen requires that all applications are digitally signed with a proper signing key and certificate before they call be installed.</p>
+<p>Tizen requires that all applications are digitally signed with a proper signing key and certificate before they can be installed.</p>
 
 <p>Through application signing, Tizen achieves the following goals:</p>
 <ul>
 <ul>
 <li>You sign the author signature with your own author signing key in the Tizen Studio.</li>
 <li>Applications with the same author signing key are regarded as developed by the same developer.</li>
-<li>Application upgrade is allowed only when the author signature of the old version and the new version are signed with a same author signing key.</li>
+<li>Application update is allowed only when the author signature of the old version and the new version are signed with a same author signing key.</li>
 <li>A set of applications with a same author's signing key can share secured resources as the author (developer) intended.</li>
 </ul>
 </li>
 <li>Distributor signature:
 <ul>
-<li>The distributor signature is signed by a distributor, such as Tizen store, as the proof of application validation.</li>
+<li>The distributor signature is signed by a distributor, such as the Tizen Store, as the proof of application validation.</li>
 <li>The distributor signature determines the API set that the application can use.</li>
 </ul>
 </li></ul>
 
        <h2 id="specification">Signature Specification</h2>
 
-<p>The application signing scheme of Tizen follows the specification of the <a href="http://www.w3.org/TR/widgets-digsig/" target="_blank">XML Digital signature for widget specified by W3C</a>.</p>
+<p>The application signing scheme of Tizen follows the specification of the <a href="http://www.w3.org/TR/2011/PR-widgets-digsig-20110811/" target="_blank">XML Digital Signatures for Widgets specified by W3C</a>.</p>
 
 <p>The following figure shows the signature file structure.</p>
 
index 4c285c3..e50fa32 100644 (file)
@@ -34,7 +34,7 @@
 
 <p>There are 2 types of submodules - Tizen native modules and open source modules. The integration of open source modules in the native API structure allows you to add additional features by using well-known open source libraries. This is particularly advantageous for developers who are familiar with certain libraries because they can quickly add features and use previously written code in certain cases.</p>
 
-<p>The following table defines the Tizen mobile native API layout. The table describes the API modules and the functionality of all their submodule APIs within that module. The table also acts as reference sources for when you are planning a new feature for your application and need a way to efficiently compare different API modules to decide which APIs to use.</p>
+<p>The following table defines the Tizen mobile native API layout. The table describes the API modules and the functionality of all their submodule APIs within that module. The table also acts as a reference source for when you are planning a new feature for your application and need a way to efficiently compare different API modules to decide which APIs to use.</p>
 
       <div class="note">
         <strong>Note</strong>
@@ -77,7 +77,7 @@
         </tr>
                <tr>
          <td><a href="../../../../org.tizen.native.mobile.apireference/group__OPENSRC__LIB__OAUTH__FRAMEK.html">libOAuth</a></td>
-         <td>Provides a library for using an open standard for secure authorization. This library enables users to securely log into an account on an application by using their logon credentials from another secondary account that they can have with another account provider or application. </td>
+         <td>Provides a library for using an open standard for secure authorization. This library enables users to securely log into an account on an application by using their logon credentials from another secondary account that they can have with another account provider or application.</td>
         </tr>
                <tr>
                        <td rowspan="12"><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__APPLICATION__FRAMEWORK.html">Application Framework</a></td>
         </tr>
         <tr>
                        <td><a href="../../../../org.tizen.native.mobile.apireference/group__NOTIFICATION__MODULE.html">Notification</a></td>
-                       <td>Creates, inserts, and updates notifications so that applications can relay information to users. Visuals, sounds, or vibrations can be used as notifications. </td>
+                       <td>Creates, inserts, and updates notifications so that applications can relay information to users. Visuals, sounds, or vibrations can be used as notifications.</td>
         </tr>
         <tr>
                        <td><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__PACKAGE__MANAGER__MODULE.html">Package Manager</a></td>
-                       <td>Stores and receives information related to packages installed on the device. This is information can be, for example, the package name, path to the icon image, or the application version. It can also be used to check whether 2 package certificates match. If they match, they have been created by the same developer and can share resources securely. </td>
+                       <td>Stores and receives information related to packages installed on the device. This is information can be, for example, the package name, path to the icon image, or the application version. It can also be used to check whether 2 package certificates match. If they match, they have been created by the same developer and can share resources securely.</td>
         </tr>
         <tr>
                        <td><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__SERVICE__APP__MODULE.html">Service Application</a></td>
         </tr>
                <tr>
                        <td><a href="../../../../org.tizen.native.mobile.apireference/group__OPENSRC__MINIZIP__FRAMEWORK.html">Minizip</a></td>
-                       <td>Provides a library to process files in the <code>.zip</code> format. It can be used to zip, unzip and compress files.</td>
+                       <td>Provides a library to process files in the ZIP format. It can be used to zip, unzip and compress files.</td>
         </tr>
                <tr>
        <td><a href="../../../../org.tizen.native.mobile.apireference/group__OPENSRC__OPENMP__FRAMEWORK.html">OpenMP</a></td>
-                       <td>Supports shared memory multiprocessing. This can be used for complex tasks on multicore processors. </td>
+                       <td>Supports shared memory multiprocessing. This can be used for complex tasks on multicore processors.</td>
         </tr>
                <tr>
                        <td><a href="../../../../org.tizen.native.mobile.apireference/group__OPENSRC__SQLITE__FRAMEWORK.html">Sqlite</a></td>
                <tr>
                        <td rowspan="3"><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__CONTENT__FRAMEWORK.html">Content</a></td>
                        <td><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__WEB__DOWNLOAD__MODULE.html">Download</a></td>
-                       <td>Creates and manages one or more download requests. Content is downloaded from servers through an HTTP connection.</td>
+                       <td>Creates and manages 1 or more download requests. Content is downloaded from servers through an HTTP connection.</td>
                        <td rowspan="3">The Content API module contains submodule APIs for managing the most common device media data types, such as image, audio, and video files. It provides operations to search for content, search for content information stored on the device, create playlists, download content from servers through an HTTP connection, and access the EXIF information in an image file.
                        <p>Guides:</p>
                        <ul>
                        <td>Detects user gestures on devices, such as tilt, snap, and double-tap.</td>
                </tr>
                <tr>
+                       <td rowspan="1"><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__CONVERGENCE__FRAMEWORK.html">Convergence</a></td>
+                       <td><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__D2D__CONVERGENCE__MANAGER__FRAMEWORK.html">Convergence Manager</a><p><strong>(since 4.0)</strong></p></td>
+                       <td>Allows you to manage device-to-device convergence services.</td>
+                       <td rowspan="1">The Convergence API module contains submodule APIs to discover, connect to, and execute services on remote devices.
+                       <p>Guides:</p>
+                       <ul>
+                       <li><a href="../../../../org.tizen.guides/html/native/connectivity/connectivity_cover_n.htm">Connectivity and Wireless</a></li></ul></td>
+        </tr>
+               <tr>
                        <td rowspan="3"><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__LOCATION__FRAMEWORK.html">Location</a></td>
                        <td><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__GEOFENCE__MANAGER__MODULE.html">Geofence Manager</a><p><strong>(since 2.4)</strong></p></td>
                        <td>Provides a service related to geofence (geo-fence).</td>
         <tr>
          <td rowspan="13"><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__NETWORK__FRAMEWORK.html">Network</a></td>
          <td><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__NETWORK__BLUETOOTH__MODULE.html">Bluetooth</a></td>
-         <td>Manages Bluetooth devices. This involves launching the Bluetooth adapter and discovering, connecting, and bonding with other Bluetooth devices. </td>
-                <td rowspan="13">The Network API module contains submodule APIs, which can be used for  data communication. It is responsible for managing connections, maintaining IP addresses, and connecting to the system through Bluetooth, Hypertext Transfer Protocol (HTTP), Near Field Communication (NFC), Sockets, and Wi-Fi. It also provides functions for retrieving information about a specific host from the Internet Domain Name System (DNS).
+         <td>Manages Bluetooth devices. This involves launching the Bluetooth adapter and discovering, connecting, and bonding with other Bluetooth devices.</td>
+                <td rowspan="13">The Network API module contains submodule APIs, which can be used for data communication. It is responsible for managing connections, maintaining IP addresses, and connecting to the system through Bluetooth, Hypertext Transfer Protocol (HTTP), Near Field Communication (NFC), Sockets, and Wi-Fi. It also provides functions for retrieving information about a specific host from the Internet Domain Name System (DNS).
                 <p>Guides:</p>
                        <ul>
                        <li><a href="../../../../org.tizen.guides/html/native/connectivity/connectivity_cover_n.htm">Connectivity and Wireless</a></li></ul>
         </tr>
                <tr>
          <td><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__SECURITY__FRAMEWORK__PRIVILEGE__INFO__MODULE.html">Privilege Info</a></td>
-         <td>Retrieves and displays privilege information. This can be used to show a user the privileges that an application contains when they are downloading it onto their device. This is so that they are aware of the resources which the application may access. </td>
+         <td>Retrieves and displays privilege information. This can be used to show a user the privileges that an application contains when they are downloading it onto their device. This is so that they are aware of the resources which the application may access.</td>
         </tr>
         <tr>
          <td><a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__YACA__MODULE.html">YACA</a><p><strong>(since 3.0)</strong></p></td>
         </tr>
                <tr>
          <td><a href="../../../../org.tizen.native.wearable.apireference/group__OPENSRC__LIB__OAUTH__FRAMEK.html">libOAuth</a></td>
-         <td>Provides a library for using an open standard for secure authorization. This library enables users to securely log into an account on an application by using their logon credentials from another secondary account that they can have with another account provider or application. </td>
+         <td>Provides a library for using an open standard for secure authorization. This library enables users to securely log into an account on an application by using their logon credentials from another secondary account that they can have with another account provider or application.</td>
         </tr>
                <tr>
                        <td rowspan="11"><a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__APPLICATION__FRAMEWORK.html">Application Framework</a></td>
         </tr>
         <tr>
                        <td><a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__PACKAGE__MANAGER__MODULE.html">Package Manager</a></td>
-                       <td>Stores and receives information related to packages installed on the device. This is information can be, for example, the package name, path to the icon image, or the application version. It can also be used to check whether 2 package certificates match. If they match, they have been created by the same developer and can share resources securely. </td>
+                       <td>Stores and receives information related to packages installed on the device. This is information can be, for example, the package name, path to the icon image, or the application version. It can also be used to check whether 2 package certificates match. If they match, they have been created by the same developer and can share resources securely.</td>
         </tr>
         <tr>
                        <td><a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__SERVICE__APP__MODULE.html">Service Application</a></td>
         </tr>
                <tr>
                        <td><a href="../../../../org.tizen.native.wearable.apireference/group__OPENSRC__MINIZIP__FRAMEWORK.html">Minizip</a></td>
-                       <td>Provides a library to process files in the <code>.zip</code> format. It can be used to zip, unzip and compress files.</td>
+                       <td>Provides a library to process files in the ZIP format. It can be used to zip, unzip and compress files.</td>
         </tr>
                <tr>
        <td><a href="../../../../org.tizen.native.wearable.apireference/group__OPENSRC__OPENMP__FRAMEWORK.html">OpenMP</a></td>
-                       <td>Supports shared memory multiprocessing. This can be used for complex tasks on multicore processors. </td>
+                       <td>Supports shared memory multiprocessing. This can be used for complex tasks on multicore processors.</td>
         </tr>
                <tr>
                        <td><a href="../../../../org.tizen.native.wearable.apireference/group__OPENSRC__SQLITE__FRAMEWORK.html">Sqlite</a></td>
                        <td>Detects user gestures on devices, such as tilt, snap, and double-tap.</td>
                </tr>
                <tr>
+                       <td rowspan="1"><a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__CONVERGENCE__FRAMEWORK.html">Convergence</a></td>
+                       <td><a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__D2D__CONVERGENCE__MANAGER__FRAMEWORK.html">Convergence Manager</a><p><strong>(since 4.0)</strong></p></td>
+                       <td>Allows you to manage device-to-device convergence services.</td>
+                       <td rowspan="1">The Convergence API module contains submodule APIs to discover, connect to, and execute services on remote devices.
+                       <p>Guides:</p>
+                       <ul>
+                       <li><a href="../../../../org.tizen.guides/html/native/connectivity/connectivity_cover_n.htm">Connectivity and Wireless</a></li></ul></td>
+        </tr>
+               <tr>
                        <td rowspan="2"><a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__LOCATION__FRAMEWORK.html">Location</a></td>
                        <td><a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__LOCATION__MANAGER__MODULE.html">Location Manager</a></td>
                        <td>Acquires information about the geographical location of the device. It also allows the receiving of notifications about position changes, velocity changes, and when a given geographical area is left.</td>
         </tr>
                <tr>
          <td><a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__SECURITY__FRAMEWORK__PRIVILEGE__INFO__MODULE.html">Privilege Info</a></td>
-         <td>Retrieves and displays privilege information. This can be used to show a user the privileges that an application contains when they are downloading it onto their device. This is so that they are aware of the resources which the application may access. </td>
+         <td>Retrieves and displays privilege information. This can be used to show a user the privileges that an application contains when they are downloading it onto their device. This is so that they are aware of the resources which the application may access.</td>
         </tr>
         <tr>
          <td><a href="../../../../org.tizen.native.wearable.apireference/group__CAPI__YACA__MODULE.html">YACA</a><p><strong>(since 3.0)</strong></p></td>
index f3aa4ea..a6bb166 100644 (file)
@@ -42,7 +42,7 @@
 <li><a href="app_connectivity_operation_n.htm">Network operations</a>
 <ul><li>To handle network operations, you must know which networks are currently available and in use. You can access the network connection state through a connection handle.</li>
 <li>You can download HTTP content from the Internet through a network connection. You can use an open source <a href="http://curl.haxx.se/libcurl/" target="_blank">libcurl</a> library, or a Tizen <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__WEB__DOWNLOAD__MODULE.html">Download</a> API for the download tasks.</li>
-<li>When you use the data services of various networks, the responses are often composed in the XML or JSON format. To handle the data in the responses, you need to parse XML and JSON.</li>
+<li>When you use the data services of various networks, the responses are often composed in XML or JSON format. To handle the data in the responses, you need to parse XML and JSON.</li>
 </ul>
 </li>
 <li><a href="app_connectivity_usage_n.htm">Network usage</a>
index 8a46b94..59aa23e 100644 (file)
@@ -38,7 +38,7 @@
 <div id="container"><div id="contents"><div class="content">
 <h1>Network Operations</h1>
 
-<p>The basic tasks involved in network operations are connecting to the network, downloading HTTP content, and parsing data in the XML and JSON format. The following sections provide you with the fundamental building blocks for creating Tizen applications that download content and parse data efficiently.</p>
+<p>The basic tasks involved in network operations are connecting to the network, downloading HTTP content, and parsing data in XML and JSON formats. The following sections provide you with the fundamental building blocks for creating Tizen applications that download content and parse data efficiently.</p>
 
 <h2 id="connection">Connecting to the Network</h2>
 
@@ -64,7 +64,7 @@
 
 <h3>Network Selection</h3>
 
-<p>The supported network connections differ based on the device. When Wi-Fi on your device is available, the device tries to first use the Wi-Fi network to connect to the Internet, and only selects the mobile (cellular) network if the Wi-Fi network is not available. If the device does not support Wi-Fi, you must check whether it supports the mobile network and whether mobile data is switched on.</p>
+<p>The supported network connections vary depending on the device. If Wi-Fi is available on your device, the device tries first to use a Wi-Fi network to connect to the Internet, and only selects the mobile (cellular) network if a Wi-Fi network is not available. If the device does not support Wi-Fi, you must check whether it supports the mobile network and whether mobile data is switched on.</p>
 
 <h3>Checking the Network Connection</h3>
 
@@ -151,7 +151,7 @@ main(int argc, char* argv[])
 
 <h3>Required Privileges</h3>
 
-<p>To download HTTP content, the application must declare the required privileges in the <code>tizen-manifest.xml</code> file. The files that the application downloads from the Internet are stored in the storage of a device. The privileges are required to access the resources for downloading content and to save them to the media storage. For more information on the Tizen privileges, see <a href="../details/sec_privileges_n.htm">Security and API Privileges</a>.</p>
+<p>To download HTTP content, the application must declare the required privileges in the <code>tizen-manifest.xml</code> file. The files that the application downloads from the Internet are stored in the device storage. The privileges are required to access the resources for downloading content and to save them to the media storage. For more information on the Tizen privileges, see <a href="../details/sec_privileges_n.htm">Security and API Privileges</a>.</p>
 
 <p>To perform the HTTP download operations, the application manifest must include the following privileges:</p>
 
@@ -338,7 +338,7 @@ download_thread_cancel_cb(void *data, Ecore_Thread *thread)
 
 <h3>Downloading HTTP Content with the Download API</h3>
 
-<p>You can download content asynchronously from a given URL into the device storage. The <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__WEB__DOWNLOAD__MODULE.html">Download</a> API provides functions to create and manage one or more download requests.</p>
+<p>You can download content asynchronously from a given URL into the device storage. The <a href="../../../../org.tizen.native.mobile.apireference/group__CAPI__WEB__DOWNLOAD__MODULE.html">Download</a> API provides functions to create and manage 1 or more download requests.</p>
 
 <p>This feature is supported in mobile applications only.</p>
 
@@ -491,7 +491,7 @@ main(int argc, char* argv[])
 
 <h3>Parsing JSON</h3>
 
-<p><a href="https://developer.gnome.org/json-glib/stable/" target="_blank">JSON-GLib</a> is a library aimed at providing an API for efficient parsing and writing of JSON (JavaScript Object Notation) streams, using GLib data types and API. As Tizen supports JSON-GLIB natively, you do not need to manually download this library and install it on your project. </p>
+<p><a href="https://developer.gnome.org/json-glib/stable/" target="_blank">JSON-GLib</a> is a library aimed at providing an API for efficient parsing and writing of JSON (JavaScript Object Notation) streams, using GLib data types and API. As Tizen supports JSON-GLIB natively, you do not need to manually download this library and install it on your project.</p>
 
 <p>The following example demonstrates how to parse a JSON file:</p>
 
index 6b93cfd..7171618 100644 (file)
@@ -86,7 +86,7 @@
 
 <h2 id="implement">Implementing Wi-Fi Direct</h2>
 
-<p>To use Wi-Fi P2P, you must activate Wi-Fi Direct and start the service. If you want to listen to Wi-Fi Direct states, you must also set a callback function.</p>
+<p>To use Wi-Fi P2P, you must activate Wi-Fi Direct and start the service. If you want to listen for Wi-Fi Direct states, you must also set a callback function.</p>
 
 <p>To implement a Wi-Fi Direct connection:</p>
 
index 333bb0e..ce6c8a6 100644 (file)
@@ -57,7 +57,7 @@ if (error_code != CONTACTS_ERROR_NONE)
     dlog_print(DLOG_ERROR, LOG_TAG, "failed to get record: error code = %d", error_code);
 </pre>
 
-<p>The following example retrieves a list of groups, whose name contains the strings "neighbors" or "friend". You can search the groups meeting the condition using queries and filters:</p>
+<p>The following example retrieves a list of groups, whose name contains the strings "neighbors" or "friend". You can search for the groups meeting the condition using queries and filters:</p>
 
 <ol>
 <li>Create a filter handle.</li>
index 68ec446..e3dab37 100644 (file)
@@ -207,7 +207,7 @@ _get_default_phone_number(contacts_record_h record, char **default_phone_number)
 <p>To update the information for existing contacts, you must retrieve, change, and save the information you want to update:</p>
 
 <ol>
-<li>Retrieve the contact you want to update using the <code>contacts_db_get_record()</code> function with the contact ID as the second parameter. Alternatively, you can also retrieve the contact using a search function, such as <code>contacts_db_get_records_with_query()</code>.
+<li>Retrieve the contact you want to update using the <code>contacts_db_get_record()</code> function with the contact ID as the second parameter. Alternatively, you can retrieve the contact using a search function, such as <code>contacts_db_get_records_with_query()</code>.
 <pre class="prettyprint">
 int contact_id = ... /* Get the contact ID */
 contacts_record_h contact = NULL;
@@ -226,7 +226,7 @@ error_code = contacts_record_get_child_record_at_p(contact, _contacts_contact.na
 error_code = contacts_record_set_str(name, _contacts_name.first, "Mark");
 </pre>
 </li>
-<li>The following example set a new birthday event for the contact by updating another child record.
+<li>The following example sets a new birthday event for the contact by updating another child record.
 <p>The example assumes that the birthday is the only event for the contact, meaning that the event record can be retrieved using the <code>contacts_record_get_child_record_at_p()</code> function with index 0 as the second parameter. If the contact has multiple events, you must iterate through them.</p>
 <pre class="prettyprint">
 contacts_record_h event = NULL;
index a7346ce..d7164e1 100644 (file)
@@ -48,7 +48,7 @@
 <li><a href="app_contacts_management_n.htm">Contact management</a>
 <ul>
 <li>You can manage contacts by creating and updating them.</li>
-<li>You can retrieve person information from the database with various filtered queries, and delete persons and their related contacts, when no longer needed.</li>
+<li>You can retrieve person information from the database with various filtered queries, and delete persons and their related contacts when no longer needed.</li>
 <li>You can manage the linking between contacts and persons to ensure that each person has all related contacts attached to it.</li>
 </ul>
 </li>
index 0979689..73485e7 100644 (file)
@@ -33,7 +33,7 @@
 <div id="container"><div id="contents"><div class="content">
 <h1>Polygons on the Canvas</h1>
 
-<p>You can draw various polygons, such as triangles and pentagons, on a canvas. </p>
+<p>You can draw various polygons, such as triangles and pentagons, on a canvas.</p>
 
 <p>The following example uses the same <strong>Basic UI</strong> template as the square drawing example. For more information on how to create the project with the template, see <a href="app_graphics_square_n.htm">Squares on the Canvas</a>.</p>
 
index 2a1bc33..3e43ee4 100644 (file)
@@ -415,11 +415,11 @@ error_code = recorder_attr_set_audio_samplerate(g_recorder, 44100);
 
 <p>When the recorder handle is created, the audio recorder is in the <code>RECORDER_STATE_CREATED</code> state. To start recording, the audio recorder must be in the <code>RECORDER_STATE_READY</code> state.</p>
 
-<p>To manage playback:</p>
+<p>To manage recording:</p>
 
 <ol>
 <li>
-<p>Change the player state from <code>RECORDER_STATE_CREATED</code> to <code>RECORDER_STATE_READY</code> by calling the <code>recorder_prepare()</code> function:</p>
+<p>Get the recorder ready by calling the <code>recorder_prepare()</code> function, which changes the player state from <code>RECORDER_STATE_CREATED</code> to <code>RECORDER_STATE_READY</code>:</p>
 <pre class="prettyprint">
 error_code = recorder_prepare(g_recorder);
 </pre>
index 0cbb2bf..e607653 100644 (file)
@@ -487,11 +487,11 @@ error_code = recorder_set_filename(rec_data.recorder, filename);
 
 <p>When the recorder handle is created, the video recorder is in the <code>RECORDER_STATE_CREATED</code> state. To start recording, the video recorder must be in the <code>RECORDER_STATE_READY</code> state.</p>
 
-<p>To manage playback:</p>
+<p>To manage recording:</p>
 
 <ol>
 <li>
-<p>Change the player state from <code>RECORDER_STATE_CREATED</code> to <code>RECORDER_STATE_READY</code> by calling the <code>recorder_prepare()</code> function:</p>
+<p>Get the recorder ready by calling the <code>recorder_prepare()</code> function, which changes the player state from <code>RECORDER_STATE_CREATED</code> to <code>RECORDER_STATE_READY</code>:</p>
 <pre class="prettyprint">
 error_code = recorder_prepare(rec_data.recorder);
 </pre>
index e496020..de20583 100644 (file)
@@ -147,7 +147,7 @@ show_is_supported(ad);
 </li>
 
        <li>Build (in <a href="../mobile/first_app_mn.htm#build">mobile</a> and <a href="../wearable/first_app_wn.htm#build">wearable</a> applications) and run (in <a href="../mobile/first_app_mn.htm#run">mobile</a> and <a href="../wearable/first_app_wn.htm#run">wearable</a> applications) the application. If the accelerator sensor is supported, the <strong>Accelerator Sensor is support</strong> message is shown on the device screen.
-<p>All smartphones do not support this sensor. In that case, test the application on the emulator.</p>
+<p>Not all smartphones support this sensor. In that case, test the application on the emulator.</p>
 <p align="center"><img alt="Accelerator Sensor is supported" src="../../images/sensor_accelerator_supported.png" /></p>
        </li>
 </ol>
@@ -273,7 +273,7 @@ static float max_acc_value[3] = {0.f, 0.f, 0.f};
        </li>
 
        <li>To create the third label and a button, add new code to the <code>create_base_gui()</code> function.
-       <p>The button resets the maximum value to 0, when clicked.</p>
+       <p>When clicked, the button resets the maximum value to 0.</p>
 
 <pre class="prettyprint">
 /* Second label (for the current acceleration value) */
index 49d8d2b..1cc15bf 100644 (file)
@@ -143,7 +143,7 @@ show_is_supported(ad);
        </li>
 
        <li>Build (in <a href="../mobile/first_app_mn.htm#build">mobile</a> and <a href="../wearable/first_app_wn.htm#build">wearable</a> applications) and run (in <a href="../mobile/first_app_mn.htm#run">mobile</a> and <a href="../wearable/first_app_wn.htm#run">wearable</a> applications) the application. If the proximity sensor is supported, the <strong>Proximity Sensor is support</strong> message is shown on the device screen.
-<p>All smartphones do not support this sensor. In that case, test the application on the emulator.</p>
+<p>Not all smartphones support this sensor. In that case, test the application on the emulator.</p>
 
 <p align="center"><img alt="Proximity Sensor is supported" src="../../images/sensor_proximity_supported.png" /></p>
        </li>
index 85cd13d..6b8883b 100644 (file)
 </tbody>
 </table>
 
-<p>The running state is identified as all states except idle and terminated. In the running state, the power consumption is higher than in the other states because the server is working to find the location using the various positioning sources.</p>
+<p>The running state is defined as all states except idle and terminated. In the running state, power consumption is higher than in the other states because the server is working to find the location using various positioning sources.</p>
 <p>The following figure illustrates the location service state changes.</p>
 
 <p align="center"><strong>Figure: Location state changes</strong></p>
 <p align="center"><img src="../../images/location_states.png" alt="Location state changes" /></p>
 
 
-<p>The location service can miss the current position temporarily although it provides continuous location information. For instance, when the device goes through a tunnel or across an area where there are many buildings and skyscrapers. This is known as the multipath phenomenon, which means that the signals coming from the positioning satellites bounce back and forth by bumping into the walls of the buildings and make it hard to fix the current location. The device can also lose the current location when it goes underground, where there are no Wi-Fi access points or mobile network cell tower information available. At this moment, the location state changes to unavailable.</p>
+<p>The location service can lose the current position temporarily although it provides continuous location information, for example, when the device goes through a tunnel or across an area where there are many buildings and skyscrapers. The device encounters the multipath phenomenon, which is when the signals coming from the positioning satellites bounce back and forth off building walls, making it difficult to fix the current location. The device can also lose the current location when it goes underground, where there are no Wi-Fi access points or mobile network cell tower information available. In this situation, the location state changes to unavailable.</p>
 
 <h3 id="synch">Life-cycle Synchronization</h3>
 
-<p>One good approach to optimizing power consumption is to synchronize the life-cycles of the application and the location service. When the application is paused, make sure that the location service is paused too. And when the application is resumed, resume the location service also.</p>
+<p>One good approach to optimizing power consumption is to synchronize the life-cycles of the application and the location service. When the application is paused, make sure that the location service is paused too. When the application is resumed, also resume the location service.</p>
 
 <p>The following table shows how to synchronize the states between an application and location service.</p>
 
 
 <p>To reduce power consumption, you must select the optimal location method for the location service to determine the device location. You must also carefully synchronize the application and location service states to ensure that the location service is only running when the application is on the foreground.</p>
 
-<p>It is hard for the device to detect the location, when the device is underground or there are no Wi-Fi APs and mobile network cell towers near the device. In those situations, it is better to stop the location service to save battery life. Otherwise, the life time of the device is dramatically reduced by consuming power in the hybrid or GPS mode.</p>
+<p>It is hard for the device to detect the location when the device is underground or there are no Wi-Fi APs or mobile network cell towers near the device. In those situations, it is better to stop the location service to save battery life. Otherwise, the life time of the device is dramatically reduced by consuming power in the hybrid or GPS mode.</p>
 
 <h3 id="select">Selecting the Location Method</h3>
 
-<li>The power consumption and location accuracy differ based on the location source. It is important for you to select the location method, as the location method decides which location sources are used to determine the device location.</li>
+<li>The power consumption and location accuracy vary depending on the location source. It is important for you to select the location method, as the location method decides which location sources are used to determine the device location.</li>
 <p>The location service provides different methods for determining the location, as illustrated in the following table.</p>
 
 <p align="center" class="Table"><strong>Table: Location service methods</strong></p>
  <tr>
  <td><code>LOCATIONS_METHOD_WPS</code></td>
  <td>Wi-Fi AP, cell information</td>
- <td>This method receives location information from an external positioning server that computes the approximate location based on the Wi-Fi or mobile network cell tower. It provides the lowest power consumption, and the weakest location accuracy.</td>
+ <td>This method receives location information from an external positioning server that computes the approximate location based on the Wi-Fi AP or mobile network cell tower. It provides the lowest power consumption, and the weakest location accuracy.</td>
  </tr>
  </tbody></table>
 
-<p>The following table shows how much power is consumed approximately by GPS at a standalone mode in the condition of no assistant GPS, such as SUPL (Secure User Plane Location) server.</p>
+<p>The following table shows approximately how much power is consumed by GPS in standalone mode, in the condition of no assistant GPS, such as a SUPL (Secure User Plane Location) server.</p>
 
 <p align="center" class="Table"><strong>Table: GPS power consumption</strong></p>
 <table>
 
 <p>You must decide which method your application uses, based on the advantages and disadvantages:</p>
 <ul>
-<li>Balance you need for accuracy with the amount of power you are willing to consume, and select the optimal location source for your application.</li>
+<li>Balance your need for accuracy with the amount of power you are willing to consume, and select the optimal location source for your application.</li>
 <li>An application requiring high accuracy, such as navigation, must use a continuous location coming from GPS. In this case, the battery consumption is higher, but still recommended to achieve the best accuracy.</li>
 </ul>
 
 <h3 id="synchronize">Synchronizing Life-cycles</h3>
 
-<p>A good approach to optimizing power consumption is to synchronize the life-cycles of the application and the location service. When the application is paused, make sure that the location service is paused too. When the application is resumed, resume also the location service.</p>
+<p>When using location services with your application, you can reduce power consumption by synchronizing the life-cycle of the location service to that of the application. Basically, create or destroy the location service at the same time as the application, and stop or restart the location service when the application is paused or resumed.</p>
 
 <h4 id="privileges">Required Privileges</h4>
 
@@ -695,7 +695,7 @@ main(int argc, char* argv[])
 
 <h4 id="alarm">Using an Alarm</h4>
 
-<p>Tizen provides the Alarm API to trigger events whenever you want to. You can increase the life time of the device by stopping the location service with an alarm, when you have no further need for the location information or the device cannot fix the current location for a long time because its location only has weak GPS satellite, Wi-Fi, and mobile network signals.</p>
+<p>Tizen provides the Alarm API to trigger events whenever you want to. You can increase the life time of the device by stopping the location service with an alarm when you have no further need for the location information, or when the device cannot fix the current location for a long time because its location only has weak GPS satellite, Wi-Fi, and mobile network signals.</p>
 
 <div class="note">
        <strong>Note</strong>
index 8907040..863ba20 100644 (file)
 
 <ol>
        <li>Each view must have a root container as a top-level UI component (see the <a href="ui_builder_overview_mn.htm#UI_figure">UI hierarchy structure</a> figure). To design a view, first place the top-level UI component, the root container, on the canvas.
-       <p>To place a top-level UI component, use the components in the <strong>UI container</strong> category of the <strong>Palette</strong>. You can drag and drop the component from the palette to the canvas, or select the component in the palette and click in the canvas. After you have added the component, you can see it in the <strong>Outline</strong> view.</p>
+       <p>To place a top-level UI component, use the components in the <strong>UI container</strong> category of the <strong>Palette</strong>. You can drag and drop the component from the palette to the canvas, or select the component in the palette and click on the canvas. After you have added the component, you can see it in the <strong>Outline</strong> view.</p>
        <p align="center"><img alt="Drag a grid UI component from the Palette" src="../../images/ui_builder_drag.png" /></p>
        <p align="center"><img alt="Root container in the Outline view" src="../../images/ui_builder_root.png" /></p>
        </li>
        </li>
 
        <li>Content assist
-       <p>The native UI Builder provides content assist functionality, which helps you to write code faster and more efficiently. To use this functionality, type a few characters of the word and press <strong>Ctrl+Space</strong>. The proposals are shown in a popup as in the following figure.</p>
+       <p>The native UI Builder provides content assist functionality, which helps you to write code faster and more efficiently. To use this functionality, type a few characters of the word and press <strong>Ctrl + Space</strong>. The proposals are shown in a popup as in the following figure.</p>
        <p align="center"><strong>Figure: Content assist</strong></p>
        <p align="center"><img alt="Content assist" src="../../images/ui_builder_assist.png" /></p>
        </li>
@@ -269,7 +269,7 @@ typedef struct _uib_view1_view_context uib_view1_view_context;
        <li>Edit the event handler code.
        <p>For example, change the button text.</p>
        <p align="center"><img alt="Button text change" src="../../images/ui_builder_event_button_text.png" /></p>
-       <p>You can use the content assist by pressing <strong>Ctrl+Space</strong>.</p>
+       <p>You can use the content assist by pressing <strong>Ctrl + Space</strong>.</p>
        <p align="center"><img alt="Content assist" src="../../images/ui_builder_content_assist.png" /></p>
        </li>
 </ol>
index 79f4013..5a9eee4 100644 (file)
 <p align="center"><img alt="View hierarchy for multiple views" src="../../images/ui_builder_view_hierarchy.png" /></p>
 
 <ul>
-       <li>Window, which is the bottom-most UI component holding a canvas object for drawing, to represent a block of memory that gets composited to the screen.</li>
-       <li>Conformant, which shows the virtual keyboard, indicator, softkey, and clipboard areas.
+       <li><strong>Window</strong> is the bottom-most UI component holding a canvas object for drawing, and represents a block of memory that gets composited to the screen.</li>
+       <li><strong>Conformant</strong> shows the virtual keyboard, indicator, softkey, and clipboard areas.
        <p>If you do not need those components, you do not need the conformant either.</p></li>
-       <li>Naviframe, which is used in applications that show multiple views through their lives with back and forth transitions between them.
-       <p>If you want to manage just 1 view, there is no need to add the naviframe.</p></li>
-       <li>UI Container (such as grid, table, or box), which helps to arrange UI components.</li>
-       <li>UI Component (such as button, background, icon, or image), which presents the UI layout.</li>
+       <li><strong>Naviframe</strong> is used in applications that show multiple views with back and forth transitions between them.
+       <p>If you want to manage only 1 view, there is no need to add the naviframe.</p></li>
+       <li><strong>UI Container</strong> (such as grid, table, or box) helps to arrange UI components.</li>
+       <li><strong>UI Component</strong> (such as button, background, icon, or image) presents the UI layout.</li>
 </ul>
 
 <p>If you want to make a structure for each situation (single and multiple views), the following figure illustrates a possible structure.</p>
 <h2 id="library">Elementary UI Component Library</h2>
 <p>The EFL Elementary is a set of fast, finger-friendly, scalable, and themeable UI component libraries. The number of supported UI components is around 80, including both containers and non-containers. Originally, the Elementary was developed as part of the Window Manager development on Desktop devices. For the mobile profile, Tizen reused the proper UI components and created new ones, and then enhanced and adjusted all of them for Tizen native applications.</p>
 
-<p>The UI components are mobile-friendly: for example, the naviframe component supports view-management for multiple views, the entry component supports many modes (such as password, single/multi-line, and edit/no-edit), the index component supports fast access to another group of UI items, and the toolbar component shows a menu when an item is selected.</p>
+<p>The UI components are mobile-friendly: for example, the naviframe component supports view-management for multiple views, the entry component supports many modes (such as password, single/multi-line, and edit/no-edit), the index component supports quick access to another group of UI items, and the toolbar component shows a menu when an item is selected.</p>
 <p>The mobile UI components were designed to allow the user to interact with touch screen-equipped mobile devices. Therefore, when developing mobile applications, you can easily use them through the mobile-related infrastructure in company with view management and when reacting to touch events and the user finger size.</p>
 <h3>UI Components</h3>
 
 <ul>
-       <li>Win: The win component is the root window component that is often used in an application. It allows you to create some content in it, and it is handled by the window manager.</li>
-       <li>Conformant: A conformant is a container component that accounts for the space taken by the indicator, virtual keyboard, and softkey areas.</li>
-       <li>Naviframe: A naviframe component consists of a stack of views. New views are pushed on top of previous ones, and only the top-most view is displayed.</li>
-       <li>Popup: The popup component shows a popup area that can contain a little area, a content are, and an action area.</li>
-       <li>Ctxpopup: The ctxpopup component is a contextual popup that can show a list of items.</li>
-       <li>Scroller: A scroller holds (and clips) a single object and allows you to scroll across it.</li>
-       <li>Grid: In a grid, objects are placed at specific positions along a fixed grid.</li>
-       <li>Table: A table is like a box but with 2 dimensions.</li>
-       <li>Box: A box is one of the simplest EFL container components, and it allows you to arrange the UI components in a specific order horizontally or vertically.</li>
-       <li>Panes: A panes component adds a draggable bar between 2 content sections. The sections are resized when the bar is dragged.</li>
-       <li>Panel: The panel component is an animated object that can contain child objects. It can be expanded or contracted by clicking on the button on its edge.</li>
-       <li>List: The list component is a very simple list for managing a small number of items. If you need to manage a lot of items, use the genlist component instead.</li>
-       <li>Genlist: The genlist component displays a scrollable list of items. It can hold a lot of items while still being fast and memory-efficient (only the visible items are allocated memory).</li>
-       <li>Toolbar: The toolbar component is a scrollable list of items. It can also show a menu when an item is selected. Only one item can be selected at a time.</li>
-       <li>Multibuttonentry: A multi-button entry is a UI component letting a user enter and each chunk of text managed as a set of buttons.</li>
-       <li>Gengrid: The gengrid component displays objects on a grid layout and renders only the visible objects.</li>
-       <li>Index: Index is a UI component which gives you an index for fast access to a group of other UI items.</li>
-       <li>Flipselector: Fileselector is a UI component which has a set of text items and flips up or down the selector to change the text on it.</li>
-       <li>Background: The background component can be used to set a solid background decoration to a window or a container object. It works like an image, but has some background-specific properties, such as setting it to a tiled, centered, scaled, or stretched mode.</li>
-       <li>Datetime: The datetime component can display and input date and time values.</li>
-       <li>Image: The image component can load and display an image from a file or memory.</li>
-       <li>Label: The label component displays text with simple HTML-like markup.</li>
-       <li>Progressbar: The progressbar component can be used to display the progress status of a given task.</li>
-       <li>Layout: A layout is a container component that takes a standard Edje design file and wraps it very thinly in a UI component.</li>
-       <li>Map: Map is a UI component which specializes in displaying a map. It uses the <a href="http://openstreetmap.org/" target="_blank">OpenStreetMap</a> provider.</li>
-       <li>Calendar: Calendar is a UI component which displays month views.</li>
-       <li>Colorselector: The colorselector component provides a color selector. It has different modes, each of them showing a different configuration of color selection.</li>
-       <li>Entry: The entry component is a box in which the user can enter text.</li>
-       <li>Spinner: The spinner component enables the user to increase or decrease a numeric value by using arrow buttons.</li>
-       <li>Slider: The slider component is a draggable bar that is used to select a value from a range of values.</li>
-       <li>Button: The button component is a simple push button. It is composed of a label icon and an icon object, and has an auto-repeat feature.</li>
-       <li>Check: The check component toggles a Boolean value between true and false.</li>
-       <li>Radio: The radio component can display 1 or more options, but the user can only select one of them. The UI component is composed of an indicator (selected/unselected), an optional icon, and an optional label. Even though it is usually grouped with 2 or more other radio components, it can also be used alone.</li>
+       <li><strong>Win</strong> is the root window component that is often used in an application. It allows you to create some content in it, and it is handled by the window manager.</li>
+       <li><strong>Conformant</strong> is a container component that accounts for the space taken by the indicator, virtual keyboard, and softkey areas.</li>
+       <li><strong>Naviframe</strong> consists of a stack of views. New views are pushed on top of previous ones, and only the top-most view is displayed.</li>
+       <li><strong>Popup</strong> shows a popup area that can contain a title area, a content area, and an action area.</li>
+       <li><strong>Ctxpopup</strong> is a contextual popup that can show a list of items.</li>
+       <li><strong>Scroller</strong> holds (and clips) a single object and allows you to scroll across it.</li>
+       <li><strong>Grid</strong> allows objects to be placed at specific positions along a fixed grid.</li>
+       <li><strong>Table</strong> is like a box but with 2 dimensions.</li>
+       <li><strong>Box</strong> is one of the simplest EFL container components. It allows you to arrange the UI components in a specific order, horizontally or vertically.</li>
+       <li><strong>Panes</strong> adds a draggable bar between 2 content sections. The sections are resized when the bar is dragged.</li>
+       <li><strong>Panel</strong> is an animated object that can contain child objects. It can be expanded or collapsed by clicking the button on its edge.</li>
+       <li><strong>List</strong> is a very simple list for managing a small number of items. If you need to manage a lot of items, use the genlist component instead.</li>
+       <li><strong>Genlist</strong> displays a scrollable list of items. It can hold a lot of items while still being fast and memory-efficient (only the visible items are allocated memory).</li>
+       <li><strong>Toolbar</strong> is a scrollable list of items. It can also show a menu when an item is selected. Only one item can be selected at a time.</li>
+       <li><strong>Multibuttonentry</strong> allows the user to enter text so that the text is divided into chunks and managed as a set of buttons.</li>
+       <li><strong>Gengrid</strong> displays objects on a grid layout and renders only the visible objects.</li>
+       <li><strong>Index</strong> gives you quick access to a group of other UI items.</li>
+       <li><strong>Flipselector</strong> is a set of text items and a selector that flips up or down to change the currently shown text item.</li>
+       <li><strong>Background</strong> can be used to set a solid background decoration to a window or a container object. It works like an image, but has some background-specific properties, such as setting it to a tiled, centered, scaled, or stretched mode.</li>
+       <li><strong>Datetime</strong> can display and input date and time values.</li>
+       <li><strong>Image</strong> can load and display an image from a file or memory.</li>
+       <li><strong>Label</strong> displays text with simple HTML-like markup.</li>
+       <li><strong>Progressbar</strong> can be used to display the progress status of a given task.</li>
+       <li><strong>Layout</strong> is a container component that takes a standard Edje design file and wraps it very thinly in a UI component.</li>
+       <li><strong>Map</strong> displays a map, using the <a href="http://openstreetmap.org/" target="_blank">OpenStreetMap</a> provider.</li>
+       <li><strong>Calendar</strong> displays month views.</li>
+       <li><strong>Colorselector</strong> provides a color selector. It has different modes, each of them showing a different color selection configuration.</li>
+       <li><strong>Entry</strong> is a box in which the user can enter text.</li>
+       <li><strong>Spinner</strong> enables the user to increase or decrease a numeric value by using arrow buttons.</li>
+       <li><strong>Slider</strong> is a draggable bar that is used to select a value from a range of values.</li>
+       <li><strong>Button</strong> is a simple push button. It is composed of a label icon and an icon object, and has an auto-repeat feature.</li>
+       <li><strong>Check</strong> toggles a Boolean value between true and false.</li>
+       <li><strong>Radio</strong> can display 1 or more options, but the user can only select one of them. The UI component is composed of an indicator (selected/unselected), an optional icon, and an optional label. Even though it is usually grouped with 2 or more other radio components, it can also be used alone.</li>
 
 </ul>
 
index da423f5..75700ad 100644 (file)
 <h1>Getting Started with Native Applications</h1>
 
 
-<p>When creating you first Tizen native application, you can select from the following options, which all use the C language:</p>
+<p>When creating your first Tizen native application, you can select from the following options, which all use the C language:</p>
 
        <ul>
        <li><a href="mobile/first_app_mn.htm">Mobile native application</a>
-       <p>The mobile application is targeted to run on smart phones, and can take advantage of a wide variety of functionality available in those devices.</p></li>
+       <p>A mobile application is targeted to run on smart phones, and can take advantage of a wide variety of functionalities available on those devices.</p></li>
        <li><a href="wearable/first_app_wn.htm">Wearable native application</a>
-       <p>The wearable application is targeted to run on smart watches, and can be optimized for the smaller screen.</p></li>
+       <p>A wearable application is targeted to run on smart watches, and can be optimized for the smaller screen.</p></li>
        <li><a href="wearable_watch/first_app_watch_wn.htm">Wearable native watch application</a>
-       <p>The wearable watch application is a customized watch face that can be shown as the device home screen.</p></li>
+       <p>A wearable watch application is a customized watch face that can be shown as the device home screen.</p></li>
        <li><a href="wearable_widget/first_app_widget_wn.htm">Wearable native widget application</a>
-       <p>The wearable widget application is a small application that can be shown by specific UI applications (such as the home screen).</p></li>
+       <p>A wearable widget application is a small application that can be shown by specific UI applications (such as the home screen).</p></li>
        </ul>
 
 <p>The first application examples show a simple application with a basic UI and minimal functionality. Get familiar with the example first, and afterwards you can use it as a basis to build more complex applications with the help of the extensive native API.</p>
index fdacea6..2e5268e 100644 (file)
 
 <div id="container"><div id="contents"><div class="content">
  <h1>Tizen Web Application Model</h1>
-  <p>The <a href="../../../../org.tizen.studio/html/cover_page.htm">Tizen Studio</a> enables you to create Web applications for mobile, wearable, and TV devices. A Web application comprises HTML, JavaScript, and CSS combined in a package, which can be installed on the Tizen device.</p>
+  <p>The <a href="../../../../org.tizen.studio/html/cover_page.htm">Tizen Studio</a> enables you to create Web applications for mobile, wearable, and TV devices. A Web application consists of HTML, JavaScript, and CSS combined in a package, which can be installed on the Tizen device.</p>
   <p>A <a href="../process/app_dev_process_w.htm#package">Web application package</a> includes all the support files that are needed by the Web application. Therefore, a Web application can run without any additional external resources or network connectivity after installation.</p>
-  <p>The application model supports a rich set of standard W3C/HTML5 features, which include various JavaScript APIs as well as additional HTML markups and CSS features. These features along with the Tizen Device APIs and UI framework support can be used to create rich Web applications in a variety of categories, such as contact, messaging, device information access, multimedia, graphics, and games.</p>
+  <p>The application model supports a rich set of standard W3C/HTML5 features, which include various JavaScript APIs as well as additional HTML markups and CSS features. These features, along with the Tizen Device APIs and UI framework support, can be used to create rich Web applications in a variety of categories, such as contacts, messaging, device information access, multimedia, graphics, and games.</p>
   <p>Tizen supports both <a href="#wap">Web application packages</a> and <a href="#hap">hybrid application packages</a>, which combine a Web application and 1 or more native service applications.</p>
-  <p>Applications in the same package follow the same installation life-cycle, handled by the <a href="#package">application package manager</a>. </p>
+  <p>Applications in the same package follow the same installation life-cycle, handled by the <a href="#package">application package manager</a>.</p>
 
    <h2 id="package" name="package">Application Package Manager</h2>
-  <p>The application package manager is one of the core modules of the Tizen application framework, and responsible for installing, uninstalling, and updating packages, and storing their information. Using the package manager, you can also retrieve information related to the packages that are installed on the device.</p>
-  <p>The application package manager module is expandable to support various types of applications, and designated installation modules can be added to it. </p>
+  <p>The application package manager is one of the core modules of the Tizen application framework, and is responsible for installing, uninstalling, and updating packages, and storing their information. Using the package manager, you can also retrieve information related to the packages that are installed on the device.</p>
+  <p>The application package manager module is expandable to support various types of applications, and designated installation modules can be added to it.</p>
 
  <p align="center"><strong>Figure: Application package manager</strong></p>
  <p align="center"><img alt="Application package manager" src="../../images/application_package_manager.png" /></p>
 </li>
 <li>Directory hierarchy (after installation on device)
 <p>The following figure and table illustrate the Web application package directory structure.</p>
+  <p align="center"><strong>Figure: Web application directory structure</strong></p>
   <p align="center"><img alt="Web application directory structure" src="../../images/web_app_directory_structure.png" /></p>
        <p align="center" class="Table"><strong>Table: Web application package structure</strong></p>
        <table style="width: 100%" border="1">
      <td><code>opt/share/packages/&lt;Package ID&gt;.xml</code><p>(For example: <code>opt/share/packages/qik37po9ck.xml</code>)</p></td>
     </tr>
        </tbody>
-  </table> </li>
+  </table></li>
 </ul>
 
   <h3 id="hap" name="hap">Hybrid Application Package</h3>
      <th>Core XML file</th>
     </tr>
     <tr>
-     <td><code>App1</code> <p>(Web)</p></td>
+     <td><code>App1</code>
+        <p>(Web)</p></td>
      <td rowspan="3"><code>home/owner/apps_rw/&lt;Package ID&gt;</code><p>(For example: <code>home/owner/apps_rw/qik37po9ck</code>)</p></td>
      <td><code>&lt;Package ID&gt;.&lt;Name&gt;</code><p>(For example: <code>qik37po9ck.Sample</code>)</p></td>
      <td rowspan="3"><code>opt/share/packages/&lt;Package ID&gt;.xml</code><p>(For example: <code>opt/share/packages/qik37po9ck.xml</code>)</p></td>
     </tr>
        <tr>
-     <td><code>App2</code> <p>(Native)</p></td>
+     <td><code>App2</code>
+        <p>(Native)</p></td>
      <td><code>&lt;Package ID&gt;.&lt;ExecutableName1&gt;</code><p>(For example: <code>qik37po9ck.Service</code>)</p></td>
     </tr>
        <tr>
-     <td><code>App3</code> <p>(Native)</p></td>
+     <td><code>App3</code>
+        <p>(Native)</p></td>
      <td><code>&lt;Package ID&gt;.&lt;ExecutableName2&gt;</code><p>(For example: <code>qik37po9ck.Downloader</code>)</p></td>
     </tr>
        </tbody>
-  </table> </li>
+  </table></li>
 </ul>
 
 
index bb52443..9319597 100644 (file)
@@ -27,7 +27,7 @@
 <h1>Introduction to Web Applications</h1>
 
 
-<p>The introduction to Web applications documentation provides overall information you need to become familiar with Web-specific Tizen programming and application model:</p>
+<p>The introduction to Web applications documentation provides overall information you need to become familiar with Web-specific Tizen programming and the Tizen application model:</p>
 
 <ul>
 <li><a href="getting_started_w.htm">Getting Started</a>
index 7d5613d..401c5db 100644 (file)
 <li>When the application is running, check whether the device supports the needed features. If not, the application can use other features, which are supported by the device, as a workaround.
 <p>For example, if an application wants to use location information, it can check the device capability by using the <code>getCapability()</code> method of the <code>SystemInfo</code> interface (in <a href="../../../../org.tizen.web.apireference/html/device_api/mobile/tizen/systeminfo.html#SystemInfo">mobile</a>, <a href="../../../../org.tizen.web.apireference/html/device_api/wearable/tizen/systeminfo.html#SystemInfo">wearable</a>, and <a href="../../../../org.tizen.web.apireference/html/device_api/tv/tizen/systeminfo.html#SystemInfo">TV</a> applications). If the device supports GPS, the application uses GPS information, and if the device supports WPS only, the application uses WPS information instead of GPS.</p>
 </li>
-<li>Use feature-based filtering to prevent your application from being shown in the application list on the Tizen Store, if the user's device does not support all the features of your application. This way you can prevent the application from being installed on an unsupportive device in the first place.
+<li>Use feature-based filtering to prevent your application from being shown in the application list on the Tizen Store, if the user's device does not support all the features of your application. This way you can prevent the application from being installed on an unsupported device in the first place.
 <p>Be careful when defining the feature list for feature-based filtering. The feature list can dramatically reduce your chances of getting the application downloaded by reducing the number of devices which can support the application.</p></li>
 </ul>
 
-<p>If the <code>config.xml</code> file of the application package includes a feature list, the Tizen Store compares the capabilities of the device with the required feature conditions of the application. The store only lists the applications whose conditions match the capabilities of the device, and thus prevents unsupported applications from being installed.</p>
+<p>If the <code>config.xml</code> file of the application package includes a feature list, the Tizen Store compares the capabilities of the device with the required feature conditions of the application. The store only lists the applications whose conditions match the capabilities of the device, and thus prevents incompatible applications from being installed.</p>
 
   <p align="center"><strong>Figure: Feature-based filtering</strong></p>
   <p align="center"><img align="center" alt="Feature-based filtering" src="../../images/app_filtering_basic_flow.png" /></p>
@@ -54,8 +54,8 @@
 
 <h3 id="screen_size" name="screen_size">Screen Size Feature</h3>
 <p>The screen size feature is the only exception to the normal feature handling process described above. When the screen size is defined in the feature list, the Tizen Store creates the filtering condition with the "OR" operation. For example, if the <code>http://tizen.org/feature/screen.size.normal.480.800</code> and <code>http://tizen.org/feature/screen.size.normal.720.1280</code> features are defined in your application feature list, a device that supports one or the other of those features can show the application on the Tizen Store application list.</p>
- <p>If you do not specify a proper screen size in the <code>config.xml</code> file, your application can be rejected from the Tizen store.</p>
- <p>The following tables list the available screen size features. </p>
+ <p>If you do not specify a proper screen size in the <code>config.xml</code> file, your application can be rejected from the Tizen Store.</p>
+ <p>The following tables list the available screen size features.</p>
  <p align="center" class="Table"><strong>Table: Available screen size features for mobile applications</strong></p>
  <table>
        <tbody>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal</code></td>
                        <td>Specify this key, if the application supports all possible current and future resolutions on the normal screen size.
-                       <p>You cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored. For example, if you specify both <code>http://tizen.org/feature/screen.size.normal</code> and <code>http://tizen.org/feature/screen.size.normal.320.480</code> keys, only the <code>http://tizen.org/feature/screen.size.normal.320.480</code> key is applied.</p> <p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
+                       <p>You cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored. For example, if you specify both <code>http://tizen.org/feature/screen.size.normal</code> and <code>http://tizen.org/feature/screen.size.normal.320.480</code> keys, only the <code>http://tizen.org/feature/screen.size.normal.320.480</code> key is applied.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
                        </td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.240.400</code></td>
                        <td>Specify this key, if the application supports the 240 x 400 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
                        </td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.320.320</code></td>
                        <td>Specify this key, if the application supports the 320 x 320 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
                        </td>
                        <td>2.3</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.320.480</code></td>
                        <td>Specify this key, if the application supports the 320 x 480 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.360.360</code></td>
                        <td>Specify this key, if the application supports the 360 x 360 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.3.2</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.360.480</code></td>
                        <td>Specify this key, if the application supports the 360 x 480 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.3</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.480.800</code></td>
                        <td>Specify this key, if the application supports the 480 x 800 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.540.960</code></td>
                        <td>Specify this key, if the application supports the 540 x 960 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.600.1024</code></td>
                        <td>Specify this key, if the application supports the 600 x 1024 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.720.1280</code></td>
                        <td>Specify this key, if the application supports the 720 x 1280 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.1080.1920</code></td>
                        <td>Specify this key, if the application supports the 1080 x 1920 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.all</code></td>
                        <td>Specify this key, if the application supports all possible current and future screen sizes and all possible current and future resolutions per screen size.
-                       <p>You cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored.  For example, if you specify both <code>http://tizen.org/feature/screen.size.all</code> and <code>http://tizen.org/feature/screen.size.normal.320.480</code> keys, only the <code>http://tizen.org/feature/screen.size.normal.320.480</code> key is applied.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored. For example, if you specify both <code>http://tizen.org/feature/screen.size.all</code> and <code>http://tizen.org/feature/screen.size.normal.320.480</code> keys, only the <code>http://tizen.org/feature/screen.size.normal.320.480</code> key is applied.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
        </tbody>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal</code></td>
                        <td>Specify this key, if the application supports all possible current and future resolutions on the normal screen size.
-                       <p>You cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored. For example, if you specify both <code>http://tizen.org/feature/screen.size.normal</code> and <code>http://tizen.org/feature/screen.size.normal.320.480</code> keys, only the <code>http://tizen.org/feature/screen.size.normal.320.480</code> key is applied.</p> <p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
+                       <p>You cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored. For example, if you specify both <code>http://tizen.org/feature/screen.size.normal</code> and <code>http://tizen.org/feature/screen.size.normal.320.480</code> keys, only the <code>http://tizen.org/feature/screen.size.normal.320.480</code> key is applied.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
                        </td>
                        <td>2.2.1</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.320.320</code></td>
                        <td>Specify this key, if the application supports the 320 x 320 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p>
                        <td>2.3</td>
                        </td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.360.360</code></td>
                        <td>Specify this key, if the application supports the 360 x 360 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.3.2</td>
                </tr>
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.normal.360.480</code></td>
                        <td>Specify this key, if the application supports the 360 x 480 resolution on the normal screen size.
-                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You can specify multiple <code>http://tizen.org/feature/screen.size.normal.*</code> keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.3</td>
                </tr>
 
                <tr>
                        <td><code>http://tizen.org/feature/screen.size.all</code></td>
                        <td>Specify this key, if the application supports all possible current and future screen sizes and all possible current and future resolutions per screen size.
-                       <p>You cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored.  For example, if you specify both <code>http://tizen.org/feature/screen.size.all</code> and <code>http://tizen.org/feature/screen.size.normal.320.480</code> keys, only the <code>http://tizen.org/feature/screen.size.normal.320.480</code> key is applied.</p><p>If no  screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
+                       <p>You cannot specify keys on both <code>screen.size.*</code> and <code>screen.size.normal.*</code> levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored.  For example, if you specify both <code>http://tizen.org/feature/screen.size.all</code> and <code>http://tizen.org/feature/screen.size.normal.320.480</code> keys, only the <code>http://tizen.org/feature/screen.size.normal.320.480</code> key is applied.</p>
+                       <p>If no screen size key is declared, it is assumed that the application supports only <code>screen.size.normal.720.1280</code>. To avoid this, specify at least 1 screen size key.</p></td>
                        <td>2.2.1</td>
                </tr>
        </tbody>
 
  <p>To enable filtering for your Web application, add the feature list for the application <code>config.xml</code> file:</p>
   <ol>
-    <li>To open the Web application configuration editor in the Tizen Studio, double-click the <code>config.xml</code> file in the <strong>Project Explorer</strong> view. </li>
-   <li>In the <strong>Feature</strong> tab, click <strong>Add</strong>.</li>
-   <li>Select a feature from the list.</li>
-   <li>Click <strong>Save</strong>.</li>
+    <li>To open the Web application configuration editor in the Tizen Studio, double-click the <code>config.xml</code> file in the <strong>Project Explorer</strong> view.</li>
+   <li>In the <strong>Features</strong> tab, click <strong>+</strong>.</li>
+   <li>Select the features you need.</li>
+   <li>Click <strong>OK</strong>.</li>
   </ol>
 
   <p>After setting the feature information with the Web application configuration editor, you can see the added code in the <strong>Source</strong> tab.</p>
 </table>
 
 <h2 id="profile_w" name="profile_w">Profile-based Filtering</h2>
-<p>A Tizen profile describes the requirements for a category of Tizen devices that have a common application execution environment. Applications are created for a single specific target profile, such as mobile, wearable, or TV, and can run on devices compliant to that profile.</p>
+<p>A Tizen profile describes the requirements for a category of Tizen devices that have a common application execution environment. Applications are created for a single specific target profile, such as mobile, wearable, or TV, and can run on devices compliant with that profile.</p>
 
 <p>Use profile-based filtering to ensure that your application is only downloaded on the appropriate device profile. To ensure this, declare the intended profile by adding the <code>profile name</code> element in the <code>config.xml</code> file.</p>
 
 <p>The Tizen Store compares the device profile and the <code>profile name</code> element in an application. The store only shows the applications with a profile name matching the device profile to prevent unsupported applications from being installed.</p>
 
 <h2 id="multi_profile" name="multi_profile">Single Web Application for Multiple Profiles</h2>
-<p>Applications are created for a single specific target profile and can only run on devices compliant to that profile. However, it is easily possible to develop a Web application on one profile and make it work on another profile if you use Web APIs that are common to both the profiles. You just modify the <code> &lt;tizen:profile&gt;</code> tag to switch profiles. You may also have to make other changes, like adapting your application to different screen sizes and input events. It is recommended that you test this modified application to ensure it performs as desired.</p>
+<p>Applications are created for a single specific target profile and can only run on devices compliant to that profile. However, it is easily possible to develop a Web application on one profile and make it work on another profile if you use Web APIs that are common to both the profiles. You simply modify the <code> &lt;tizen:profile&gt;</code> tag to switch profiles. You may also have to make other changes, like adapting your application to different screen sizes and input events. It is recommended that you test this modified application to ensure it performs as desired.</p>
 
 
 <script type="text/javascript" src="../../scripts/jquery.zclip.min.js"></script>
index 4eb2989..7fcfa1d 100644 (file)
@@ -41,7 +41,7 @@
 
 <h2 id="versioning">API Versioning</h2>
 
-<p>The version format used to identify the APIs of the Tizen platform is <strong>X.Y.Z</strong> (Major.Minor.Micro). All changes, including any kind of version upgrade, maintain the application binary interface (ABI) compatibility excepting only critical security reasons.</p>
+<p>The version format used to identify the APIs of the Tizen platform is <strong>X.Y.Z</strong> (Major.Minor.Micro). All changes, including any kind of version update, maintain the application binary interface (ABI) compatibility excepting only critical security reasons.</p>
 
 <h2 id="policy">Deprecation Policy and Schedule</h2>
 
index 035f98c..3458ab6 100644 (file)
@@ -42,7 +42,7 @@
 <p>The Tizen platform supports rotary events for user interaction on a wearable rotary device or sensor. The rotary device can rotate clockwise or counter-clockwise, and dispatch an event for each movement. The rotary device has points called <strong>detent</strong>. If the rotary device detects the detent point while rotating, it dispatches a separate new event about the point. The number of the available detent points depends on the device hardware.</p>
 
 <p align="center"><strong>Figure: Rotary device</strong></p>
-<p align="center"><img alt="Rotary device" src="../../images/rotary_event.png" /> </p>
+<p align="center"><img alt="Rotary device" src="../../images/rotary_event.png" /></p>
 <p>Rotary events are used to deliver the rotary device or sensor data to the application. The following table describes the rotary events.</p>
 
 <p align="center" class="Table"><strong>Table: Rotary events</strong></p>
@@ -80,7 +80,7 @@ document.addEventListener('rotarydetent', function(ev) {
 
 <h2 id="ambient" name="ambient">Ambient Events</h2>
 
-<p>In low-powered wearable devices, the Tizen platform supports an ambient mode for watch applications. When the device enables the ambient mode, the Tizen watch application displayed on an idle screen can show a limited UI to reduce power consumption. The watch application also receives a tick event every minute in the ambient mode.</p>
+<p>On a low-powered wearable device, an ambient mode is available for watch applications. To reduce power consumption, a Tizen watch application displayed on the idle screen in ambient mode can show a limited UI and receives only the ambient tick event every minute.</p>
 
 <p>The details of the limited UI drawn in the ambient mode depend on the device. In addition, due to the ambient mode being a low-power mode, there are limits to the colors that can be shown on the screen. Usually, when designing the ambient mode UI, draw it with limited colors (cyan, magenta, yellow, red, green, blue, black and white), and use less than 15% of the pixels on the screen. If you do not want to draw your own ambient mode UI, set the <code>ambient_support</code> attribute to <code>disable</code> in the watch application <code>config.xml</code> file to allow the platform to show a default ambient mode UI.</p>
 
@@ -91,6 +91,11 @@ document.addEventListener('rotarydetent', function(ev) {
 var isHighColorMode = tizen.systeminfo.getCapability('http://tizen.org/feature/screen.always_on.high_color');
 </pre>
 
+    <div class="note">
+        <strong>Note</strong>
+        To use the ambient mode, the user must enable it in the device settings. In addition, on the Gear S2 device, the ambient mode activates only when you are wearing the watch on the wrist.
+       </div>
+
 <p>The following table describes the ambient mode events.</p>
 <p align="center" class="Table"><strong>Table: Ambient events</strong></p>
 <table border="1">
index 89095ea..5c92481 100644 (file)
@@ -35,7 +35,7 @@
 <h1>Application Signing and Certificates</h1>
 
 <p>Application signing is the process of digitally signing executables, scripts, and content of an application to confirm the application author and guarantee that the application has not been altered or corrupted since it was signed. The process employs the use of a cryptographic hash to validate authenticity and integrity.</p>
-<p>Tizen requires that all applications are digitally signed with a proper signing key and certificate before they call be installed.</p>
+<p>Tizen requires that all applications are digitally signed with a proper signing key and certificate before they can be installed.</p>
 
 <p>Through application signing, Tizen achieves the following goals:</p>
 <ul>
 <ul>
 <li>You sign the author signature with your own author signing key in the Tizen Studio.</li>
 <li>Applications with the same author signing key are regarded as developed by the same developer.</li>
-<li>Application upgrade is allowed only when the author signature of the old version and the new version are signed with a same author signing key.</li>
+<li>Application update is allowed only when the author signature of the old version and the new version are signed with a same author signing key.</li>
 <li>A set of applications with a same author's signing key can share secured resources as the author (developer) intended.</li>
 </ul>
 </li>
 <li>Distributor signature:
 <ul>
-<li>The distributor signature is signed by a distributor, such as Tizen store, as the proof of application validation.</li>
+<li>The distributor signature is signed by a distributor, such as the Tizen Store, as the proof of application validation.</li>
 <li>The distributor signature determines the API set that the application can use.</li>
 </ul>
 </li></ul>
index a7d39f3..a6bedf4 100644 (file)
@@ -28,7 +28,7 @@
 
 <p>Using the Tizen Web API modules, you can develop rich Web applications and build great application experiences with well-known Web programming languages: HTML, CSS, and JavaScript. Just like every major browser in the market, the Tizen Web API modules support the latest HTML5 capabilities, such as animation, offline, audio, and video. By utilizing the standard HTML5 capabilities, your Web applications are ready to run across various devices and platforms with minimal customization. In addition to the JavaScript-based Tizen Device API, you can also enable advanced device access from your Web applications, such as Bluetooth and NFC.</p>
 
-<p>The Tizen platform supports hybrid applications (1 Web application and 1 or more native applications). A hybrid application package is very useful to Web applications that need background processing or monitoring. With a hybrid application package, you can register the included applications in the Tizen Store and install, upgrade, and uninstall them using a single hybrid package. For more information on developing hybrid Web applications with Tizen devices, see <a href="../process/app_dev_process_w.htm#hybrid">Packaging Hybrid Applications</a>.</p>
+<p>The Tizen platform supports hybrid applications (1 Web application and 1 or more native applications). A hybrid application package is very useful for Web applications that need background processing or monitoring. With a hybrid application package, you can register the included applications in the Tizen Store and install, update, and uninstall them using a single hybrid package. For more information on developing hybrid Web applications with Tizen devices, see <a href="../process/app_dev_process_w.htm#hybrid">Packaging Hybrid Applications</a>.</p>
 
 <p>Tizen provides a wide range of Web API modules that allow you to take full advantage of various Tizen features.</p>
   <p>The following table lists the features provided by the <a href="../../../../org.tizen.web.apireference/html/device_api/mobile/index.html">Mobile Web Device API Reference</a>.</p>
@@ -49,7 +49,7 @@
        <tr>
      <td>Base</td>
      <td>These APIs contain classes and interfaces that provide a set of basic definitions and interfaces that are used in the Tizen Device API.
-        <p>You can manage common files and zip archive files, and use filters and sorting modes for query methods, generic success and error event handlers, a generic error interface, and a simple coordinate interface for defining location information.</p></td>
+        <p>You can manage common files and ZIP archive files, and define filters and sorting modes for queries. You can also use generic success and error event handlers, in addition to a generic error interface and a simple coordinate interface for defining location information.</p></td>
      <td>
       <ul>
           <li>Guides:
        <tr>
      <td>System</td>
      <td>These APIs contain classes and interfaces that enable you to manage power, system information and setting, time, and Web setting features.
-        <p>You can access the state of the device power resource, device system information, and device wallpaper settings, you can use locale-specific calendar features by retrieving date and time information, and set feedback patterns for specified actions. You can manage time features, and set Web view properties, such as setting Web view user agents and deleting Web view cookies.</p></td>
+        <p>You can access the state of the device power resource, device system information, and device wallpaper settings. You can use locale-specific calendar features by retrieving date and time information, and set feedback patterns for specified actions. You can also manage time features, and set Web view properties, such as setting Web view user agents and deleting Web view cookies.</p></td>
      <td>
       <ul>
        <li>Guides:
        <tr>
      <td>Base</td>
      <td>These APIs contain classes and interfaces that provide a set of basic definitions and interfaces that are used in the Tizen Device API.
-        <p>You can manage common files and zip archive files, and use filters and sorting modes for query methods, generic success and error event handlers, a generic error interface, and a simple coordinate interface for defining location information.</p></td>
+        <p>You can manage common files and ZIP archive files, and define filters and sorting modes for queries. You can also use generic success and error event handlers, in addition to a generic error interface and a simple coordinate interface for defining location information.</p></td>
      <td>
       <ul>
           <li>Guides:
        <tr>
      <td>System</td>
      <td>These APIs contain classes and interfaces that enable you to manage power, system information and setting, and time features.
-        <p>You can access the state of the device power resource, device system information, and device wallpaper settings, you can use locale-specific calendar features by retrieving date and time information, and set feedback patterns for specified actions. You can also manage time features.</p></td>
+        <p>You can access the state of the device power resource, device system information, and device wallpaper settings. You can use locale-specific calendar features by retrieving date and time information, and set feedback patterns for specified actions. You can also manage time features.</p></td>
      <td>
       <ul>
        <li>Guides:
index 99c97e2..3deeff1 100644 (file)
   <p>The Web Runtime (WRT) engine allows Web applications to run outside the browser. You can install Web applications and use them as standalone applications.</p>
   <p>The Web Runtime features include the following:</p>
   <ul>
-   <li><a href="#manage">Managing Web Applications</a> <p>Provides information on supported Web application types and managing Web applications.</p></li>
-   <li><a href="#runtime">Web Runtime API Support</a> <p>Provides information on APIs and features supported by the Web Runtime.</p></li>
-   <li><a href="#security">Web Application Security and Privacy</a> <p>Provides information on the key security and privacy considerations for Web applications.</p></li>
+   <li><a href="#manage">Managing Web Applications</a>
+   <p>Provides information on supported Web application types and managing Web applications.</p></li>
+   <li><a href="#runtime">Web Runtime API Support</a>
+   <p>Provides information on APIs and features supported by the Web Runtime.</p></li>
+   <li><a href="#security">Web Application Security and Privacy</a>
+   <p>Provides information on the key security and privacy considerations for Web applications.</p></li>
   </ul>
 
 <h2 id="manage" name="manage">Managing Web Applications</h2>
    <li><p>Packaged Web applications</p></li>
    <li><p>Hosted Web applications</p></li>
   </ul>
-  <p>All Web applications must be packaged according to <a href="https://www.w3.org/TR/2011/REC-widgets-20110927/" target="_blank">Widget Packaging and XML Configuration guidelines</a>. However, unlike packaged Web applications, the hosted Web applications have an externally hosted document as their starting page. For more information, see Extending Configuration Elements (in <a href="../../../../org.tizen.studio/html/web_tools/config_editor_w.htm#mw_extend">mobile</a> and <a href="../../../../org.tizen.studio/html/web_tools/config_editor_w.htm#ww_extend">wearable</a> applications).</p>
+  <p>All Web applications must be packaged according to the <a href="https://www.w3.org/TR/2011/REC-widgets-20110927/" target="_blank">Widget Packaging and XML Configuration guidelines</a>. However, unlike packaged Web applications, the hosted Web applications have an externally hosted document as their starting page. For more information, see Extending Configuration Elements (in <a href="../../../../org.tizen.studio/html/web_tools/config_editor_w.htm#mw_extend">mobile</a> and <a href="../../../../org.tizen.studio/html/web_tools/config_editor_w.htm#ww_extend">wearable</a> applications).</p>
   <p>You can manage Web applications by:</p>
   <ul>
-   <li>Installing Web applications <p>To install a Web application, see the <a href="https://www.w3.org/TR/2011/REC-widgets-20110927/#steps-for-processing-a-widget-package" target="_blank">guidelines for processing a Web application package</a>. After the installation is completed, the WRT sends a notification of the result.</p> <p>The Web Runtime also registers the Web application on the device's idle screen. It uses an icon and Web application name derived according to Web application packaging rules.</p>
-
-<p>If a Web application installation fails due to power failure, the Web Runtime reinstalls it during next booting. The Web Runtime aborts the installation in the following situations:</p>
+   <li>Installing Web applications
+      <p>To install a Web application, see the <a href="https://www.w3.org/TR/2011/REC-widgets-20110927/#steps-for-processing-a-widget-package" target="_blank">guidelines for processing a Web application package</a>. After the installation is completed, the WRT sends a notification of the result.</p>
+      <p>The Web Runtime also registers the Web application on the device's idle screen. It fetches the Web application name and icon from the application package using the rules defined in the Widget Packaging and XML Configuration guidelines.</p>
+<p>If a Web application installation fails due to power failure, the Web Runtime reinstalls it on next boot. The Web Runtime aborts the installation in the following situations:</p>
 <ul>
 <li>Tizen Web API version supported by the Web Runtime is lower than the minimum version required by the Web application.</li>
 <li>Web application privilege level is Public, and 1 or more Partner or Platform level API privileges are declared in the configuration file.</li>
        </ul>
 
-
      <div class="note">
         <strong>Note</strong>
-        A Web application can be installed from the Tizen Store or can be side-loaded (for example, through a browser or Bluetooth).
+        A Web application can be installed from the Tizen Store or side-loaded (for example, through a browser or Bluetooth).
                The <code>&lt;feature&gt;</code> element is ignored in the Tizen Web application installation process.
     </div>
 </li>
 <li>The updating process is similar to the installation process.</li>
 <li>Web application data, such as Tizen settings, cookies, and local storage are preserved across updates. You must ensure that the old data in your application is still usable after the update.</li>
 </ul></li>
-   <li>Uninstalling Web applications <p>The WRT supports the uninstallation of Web applications. During the uninstallation process, all Web application data, such as preferences, local storage data, cookies, and the local storage folder, are removed.</p></li>
-   <li>Managing Web application life-cycle <p>The WRT supports W3C DOM load and unload, and the <a href="http://www.w3.org/TR/page-visibility/" target="_blank">Page Visibility</a> events for all pages.</p> <p>When a Web application is sent to the background or hidden, the JavaScript execution and rendering, including CSS animations, is suspended, unless the application is specifically configured to be a background service.</p> <p>When a Web application returns to the foreground, the JavaScript execution and rendering is resumed.</p> <p>The Web Runtime supports the following URI schemes: <code>sms://</code>, <code>mmsto://</code>, and <code>mailto://</code>. </p>
-   <p>For each supported URI scheme, the Web Runtime launches a registered platform scheme handler with appropriate parameters.</p><p>The content localization is supported according to the <a href="https://www.w3.org/TR/2011/REC-widgets-20110927/" target="_blank">Widget Packaging and XML Configuration</a>.</p>
+   <li>Uninstalling Web applications
+   <p>The WRT supports the uninstallation of Web applications. During the uninstallation process, all Web application data, such as preferences, local storage data, cookies, and the local storage folder, are removed.</p></li>
+   <li>Managing Web application life-cycle
+   <p>The WRT supports W3C DOM load and unload, and the <a href="http://www.w3.org/TR/page-visibility/" target="_blank">Page Visibility</a> events for all pages.</p> <p>When a Web application is sent to the background or hidden, the JavaScript execution and rendering, including CSS animations, is suspended, unless the application is specifically configured to be a background service.</p> <p>When a Web application returns to the foreground, the JavaScript execution and rendering is resumed.</p> <p>The Web Runtime supports the following URI schemes: <code>sms://</code>, <code>mmsto://</code>, and <code>mailto://</code>.</p>
+   <p>For each supported URI scheme, the Web Runtime launches a registered platform scheme handler with appropriate parameters.</p> <p>Content localization is supported according to the <a href="https://www.w3.org/TR/2011/REC-widgets-20110927/" target="_blank">Widget Packaging and XML Configuration recommendations</a>.</p>
 </li>
   </ul>
 
   <p>The Web Runtime follows the <a href="http://www.w3.org/TR/2011/PR-widgets-digsig-20110811/" target="_blank">XML digital widget signature</a> process:</p>
   <ul>
    <li>Web application can be signed by the author and distributors.</li>
-   <li>The first valid Tizen distributor signature, <code>signature1.xml</code>, determines the privilege level of the Web application, which is Public, Partner, or Platform.</li>
+   <li>The first valid Tizen distributor signature, <code>signature1.xml</code>, determines the privilege level of the Web application, which is either Public, Partner, or Platform.</li>
    <li>Web application is installed as a trusted application when it is signed with valid signatures and its privilege level is Public, Partner, or Platform.</li>
    <li>Web application is installed as an untrusted application if it is:
 <ul>
                <tr>
                        <td>Geolocation (in <strong>mobile and wearable applications only</strong>)</td>
                        <td><code>http://tizen.org/privilege/location</code></td>
-                       <td rowspan="2"><strong>Local domain</strong>: Grant permission if defined, otherwise block execution.<p><strong>Remote domain</strong>: Popup user prompt if defined, otherwise block execution.</p></td>
+                       <td rowspan="2"><strong>Local domain</strong>: Grant permission if defined, otherwise block execution.
+                       <p><strong>Remote domain</strong>: Popup user prompt if defined, otherwise block execution.</p></td>
                </tr>
                <tr>
                        <td>Getusermedia (in <strong>mobile and wearable applications only</strong>)</td>
                <tr>
                        <td>Web Notifications (in <strong>mobile applications only</strong>)</td>
                        <td><code>http://tizen.org/privilege/notification</code></td>
-                       <td rowspan="2"><strong>Local domain</strong>: Grant permission if defined, otherwise popup user prompt.<p><strong>Remote domain</strong>: Popup user prompt.</p></td>
+                       <td rowspan="2"><strong>Local domain</strong>: Grant permission if defined, otherwise popup user prompt.
+                       <p><strong>Remote domain</strong>: Popup user prompt.</p></td>
                </tr>
                <tr>
                        <td>Storage (in <strong>mobile and wearable applications only</strong>)
                <tr>
                        <td>Audio Recording (in <strong>wearable applications only</strong>)</td>
                        <td><code>http://tizen.org/privilege/audiorecorder</code></td>
-                       <td rowspan="2"><strong>Local domain</strong>: Grant permission if defined, otherwise block execution.<p><strong>Remote domain</strong>: Block execution. </p>
+                       <td rowspan="2"><strong>Local domain</strong>: Grant permission if defined, otherwise block execution.
+                       <p><strong>Remote domain</strong>: Block execution.</p>
 </td>
                </tr>
                <tr>
   </table>
   <h3 id="content_sec" name="content_sec">Content Security Policy</h3>
     <p>The Web applications can mitigate various kinds of content injection vulnerabilities, such as cross-site scripting (XSS). The content security policy (CSP) is a declarative policy that lets the author or server administrator of a Web application inform the client from where the application expects to load resources. To mitigate XSS, for example, a Web application can declare from where it expects to load scripts, allowing the client to detect and block malicious scripts injected into the application by an attacker.</p>
-  <p>Web application configuration can include 1 or more <code>&lt;tizen:content-security-policy&gt;</code>, <code>&lt;tizen:content-security-policy-report-only&gt;</code>, or <code>&lt;tizen:allow-navigation&gt;</code> element. If these are included, the Web application is set to the <strong>CSP-based security mode</strong>.</p>
+  <p>Web application configuration can include 1 or more <code>&lt;tizen:content-security-policy&gt;</code>, <code>&lt;tizen:content-security-policy-report-only&gt;</code>, or <code>&lt;tizen:allow-navigation&gt;</code> elements. If these are included, the Web application is set to the <strong>CSP-based security mode</strong>.</p>
 
 <p>In the CSP-based security mode, the Web Runtime provides content security as per <strong>Content Security Policy Level 2</strong> (in mobile applications) and <strong>Content Security Policy 1.0</strong> (in wearable applications). CSP policies can be delivered from the following sources:</p>
   <ul>
index 3b1f0d3..0091527 100644 (file)
 <h1>Getting Started with Web Applications</h1>
 
 
-<p>When creating you first Tizen Web application, you can select from the following options, which all use the Web-native languages, such as HTML5, CSS, and JavaScript:</p>
+<p>When creating your first Tizen Web application, you can select from the following options, which all use the Web-native languages, such as HTML5, CSS, and JavaScript:</p>
 
 <ul>
 <li><a href="mobile/first_app_mw.htm">Mobile Web application</a>
-<p>The mobile application is targeted to run on smart phones, and can take advantage of a wide variety of functionality available in those devices.</p></li>
+<p>A mobile application is targeted to run on smart phones, and can take advantage of a wide variety of functionalities available on those devices.</p></li>
 <li><a href="wearable/first_app_ww.htm">Wearable Web application</a>
-<p>The wearable application is targeted to run on smart watches, and can be optimized for the smaller screen.</p></li>
+<p>A wearable application is targeted to run on smart watches, and can be optimized for the smaller screen.</p></li>
 <li><a href="wearable_watch/first_app_watch_ww.htm">Wearable Web watch application</a>
-<p>The wearable watch application is a customized watch face that can be shown as the device home screen.</p></li>
+<p>A wearable watch application is a customized watch face that can be shown as the device home screen.</p></li>
 <li><a href="wearable_widget/first_app_widget_ww.htm">Wearable Web widget application</a>
-<p>The wearable widget application is a small application that can be shown by specific UI applications (such as the home screen).</p></li>
+<p>A wearable widget application is a small application that can be shown by specific UI applications (such as the home screen).</p></li>
 </ul>
 
 <p>The first application examples show a simple application with a basic UI and minimal functionality. Get familiar with the example first, and afterwards you can use it as a basis to build more complex applications.</p>