From: Editor Lionbridge Date: Wed, 19 Jul 2017 10:07:11 +0000 (+0300) Subject: Update dotnet guides X-Git-Tag: GitHub/PR#40/tizen-studio~84^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=cdc8b45bdf0c10f072ca60d3a24260e741b5c600;p=sdk%2Fonline-doc.git Update dotnet guides - Modified guide content based on the updated AR - Synched phrasing with similar native guides - Fixed broken links - Improved overall consistency PS2: Implemented query answers in NFC guide. Change-Id: I9a517ad4379337083d93bab03dda4a9f374c5119 --- diff --git a/org.tizen.guides/html/dotnet/attached_devices.htm b/org.tizen.guides/html/dotnet/attached_devices.htm index 22ecb6a..c93d5e8 100755 --- a/org.tizen.guides/html/dotnet/attached_devices.htm +++ b/org.tizen.guides/html/dotnet/attached_devices.htm @@ -30,11 +30,14 @@

Related Info

@@ -53,6 +56,9 @@ @@ -97,7 +104,7 @@ using Tizen.System;

To retrieve battery information:

@@ -97,7 +97,7 @@

You can manage tag events and read and write NDEF messages from and to an NFC tag.

  • Peer-to-peer mode -

    You can manage P2P events and send and receive NDEF messages between peer devices.

    +

    You can manage peer-to-peer (P2P) events and send and receive NDEF messages between peer devices.

  • Card emulation mode

    The card emulation mode allows an NFC device to function as a smart card.

    @@ -106,11 +106,11 @@

    Card Emulation

    -

    The card emulation mode can be broadly divided into two categories, traditional card emulation and host card emulation (HCE):

    +

    The card emulation mode can be broadly divided into 2 categories:

    Managing P2P Events

    -

    You can keep track of P2P events through event handlers.

    +

    To keep track of P2P events through event handlers:

    1. Define an event handler to trigger whenever a new P2P target has been found: @@ -481,7 +480,7 @@ public static async Task P2pTargetDiscovered_EVENT_LISTEN() catch (NotSupportedException) { Assert.IsTrue(_nfcFeature == false || _p2pFeature == false, - "Method throws the NotSupportedException, but Tizen supports the NFC P2P operation"); + "Method throws the NotSupportedException, but Tizen supports the NFC P2P operation"); } } @@ -542,7 +541,7 @@ public static async Task SendNdefMessageAsync_METHOD_RETURN() catch (NotSupportedException) { Assert.IsTrue(_nfcFeature == false || _p2pFeature == false, - "Method throws the NotSupportedException, but Tizen supports the NFC P2P operation"); + "Method throws the NotSupportedException, but Tizen supports the NFC P2P operation"); } } @@ -604,7 +603,7 @@ public static async Task NdefMessage_READ_ONLY() catch (NotSupportedException) { Assert.IsTrue(_nfcFeature == false || _p2pFeature == false, - "Method throws the NotSupportedException, but Tizen supports the Nfc P2P operation"); + "Method throws the NotSupportedException, but Tizen supports the Nfc P2P operation"); } } @@ -670,9 +669,9 @@ public static void RegisterAid_METHOD_CALL_WITH_HCE_PAYMENT()

    Managing Secure Element Events

    -

    To manage Secure Element events:

    +

    To manage secure element (SE) events:

      -
    1. Define an event handler to be triggered when a Secure Element event occurs: +
    2. Define an event handler to be triggered when an SE event occurs:
       public static void SecureElementCallback(object sender, SecureElementEventArgs e)
       {
      @@ -680,7 +679,7 @@ public static void SecureElementCallback(object sender, SecureElementEventArgs e
       }
       
    3. -
    4. Retrieve the card emulation adapter with the GetCardEmulationAdapter() method of the Tizen.Network.Nfc.NfcManager class, and register the Secure Element event handler for its SecureElementEvent event: +
    5. Retrieve the card emulation adapter with the GetCardEmulationAdapter() method of the Tizen.Network.Nfc.NfcManager class, and register the SE event handler for its SecureElementEvent event:
       public static async Task SecureElementEvent()
       {
      @@ -696,7 +695,7 @@ public static async Task SecureElementEvent()
               /// Test code
               await WaitSeEvent();
       
      -        Assert.IsNotNull(_seEventArgs, "The _seEventArgs should not be null when HCE event callback function is called");
      +        Assert.IsNotNull(_seEventArgs, "The _seEventArgs should not be null when HCE event callback is called");
               Assert.IsTrue(_checkFlag == true, "isChecked should be true");
       
    6. @@ -715,7 +714,7 @@ public static async Task SecureElementEvent() catch (NotSupportedException) { Assert.IsTrue(_nfcFeature == false || _ceFeature == false || _hceFeature == false, - "Method throws the NotSupportedException, but Tizen supports the NFC card emulation operation"); + "Method throws the NotSupportedException, but Tizen supports the NFC card emulation operation"); } } @@ -725,7 +724,7 @@ public static async Task SecureElementEvent()

      Managing HCE Events from the NFC Reader

      To manage HCE events from the NFC reader:

        -
      1. Define an event handler to be triggered when a HCE event occurs: +
      2. Define an event handler to be triggered when an HCE event occurs:
         public static void HostCardEmulationCallback(object sender, HostCardEmulationEventArgs e)
         {
        @@ -749,7 +748,7 @@ public static async Task HostCardEmulationEvent_HOST_CARD_EMULATION_EVENT_LISTEN
                 /// Test code
                 await WaitHceEventActivated();
         
        -        Assert.IsNotNull(_hceEventArgs, "The _hceEventArgs should not be null when HCE event callback function is called");
        +        Assert.IsNotNull(_hceEventArgs, "The _hceEventArgs should not be null when HCE event callback is called");
                 Assert.IsTrue(_checkFlag == true, "isChecked should be true");
         
      3. @@ -764,19 +763,18 @@ public static async Task HostCardEmulationEvent_HOST_CARD_EMULATION_EVENT_LISTEN _cardEmulationAdapter = null; _hceEventArgs = null; - _seEventArgs = null; } catch (NotSupportedException) { Assert.IsTrue(_nfcFeature == false || _ceFeature == false || _hceFeature == false, - "Method throws the NotSupportedException, but Tizen supports the NFC host card emulation operation"); + "Method throws the NotSupportedException, but Tizen supports the NFC host card emulation operation"); } }
      -

      Sending a HCE Response to the NFC Reader

      +

      Sending HCE Responses to the NFC Reader

      To send HCE responses to the NFC reader:

      1. Retrieve the card emulation adapter with the GetCardEmulationAdapter() method of the Tizen.Network.Nfc.NfcManager class, and register the HCE event handler for its HostCardEmulationEvent event: @@ -796,26 +794,29 @@ public static async Task HceSendApduResponse_METHOD_RETURN()
      2. Once the HCE event triggers, send the response with the HceSendApduResponse() method of the Tizen.Network.Nfc.NfcSecureElement class:
                 /// Test code
        -
                 byte[] responseBuffer = {0x90, 0x00};
         
                 await WaitHceEvent();
         
        -        Assert.IsNotNull(_eventArgs, "The _eventArgs should not be null when Hce event callback function is called");
        -        Assert.IsNotNull(_eventArgs.SecureElement, "The SecureElement property of _eventArgs should not be null when HCE event callback function is called");
        +        Assert.IsNotNull(_eventArgs, "The _eventArgs should not be null when HCE event callback is called");
        +        Assert.IsNotNull(_eventArgs.SecureElement, "The SecureElement property of _eventArgs should not be null when HCE event callback is called");
                 Assert.IsInstanceOf<NfcSecureElement>(_eventArgs.SecureElement, "SecureElement value is not of the type NfcSecureElement");
         
                 _eventArgs.SecureElement.HceSendApduResponse(responseBuffer, 2);
         
                 /// Postcondition
                 /// 1. Unregister the HCE event handler
        +        /// 2. Reset variables
         
                 _cardEmulationAdapter.HostCardEmulationEvent -= HostCardEmulationCallback;
        +
        +        _cardEmulationAdapter = null;
        +        _eventArgs = null;
             }
             catch (NotSupportedException)
             {
                 Assert.IsTrue(_nfcFeature == false || _ceFeature == false || _hceFeature == false,
        -            "Method throws the NotSupportedException, but Tizen supports the NFC host card emulation operation");
        +                      "Method throws the NotSupportedException, but Tizen supports the NFC host card emulation operation");
             }
         }
         
        diff --git a/org.tizen.guides/html/dotnet/email.htm b/org.tizen.guides/html/dotnet/email.htm index 10d16fe..a88fea6 100644 --- a/org.tizen.guides/html/dotnet/email.htm +++ b/org.tizen.guides/html/dotnet/email.htm @@ -61,7 +61,7 @@ </privileges>
      3. -
      4. To use the methods and properties of the Tizen.Messaging.Email namespace, include it in your application: +
      5. To use the methods and properties of the Tizen.Messaging.Email namespace, include it in your application:
         using Tizen.Messaging.Email;
         
        @@ -81,7 +81,7 @@ email.Subject = "CSAPI_SUBJECT";
      6. Create a recipient with an instance of the Tizen.Messaging.Email.EmailRecipient class, set the recipient address, and add the recipient to the message:
        -var recipient = = new EmailRecipient();
        +var recipient = new EmailRecipient();
         string address = "example@mail.com";
         recipient.Address = address;
         email.To.Add(recipient);
        diff --git a/org.tizen.guides/html/dotnet/feedback.htm b/org.tizen.guides/html/dotnet/feedback.htm
        index d1d115c..dd98ec9 100644
        --- a/org.tizen.guides/html/dotnet/feedback.htm
        +++ b/org.tizen.guides/html/dotnet/feedback.htm
        @@ -62,7 +62,7 @@
            <privilege>http://tizen.org/privilege/haptic</privilege>
         </privileges>
         
        -
      7. +
      8. To use the methods and properties of the Tizen.System.Feedback class, include the Tizen.System namespace in your application:
         using Tizen.System;
        diff --git a/org.tizen.guides/html/dotnet/information.htm b/org.tizen.guides/html/dotnet/information.htm
        index 2169e3b..966bc0a 100644
        --- a/org.tizen.guides/html/dotnet/information.htm
        +++ b/org.tizen.guides/html/dotnet/information.htm
        @@ -52,7 +52,7 @@
         
         

        System and Runtime Information

        -

        You can access the various information about your device system and its runtime status.

        +

        You can access various information about your device system and its runtime status.

        The main features of the Tizen.System.SystemInfo and Tizen.System.RuntimeInformation classes include:

          diff --git a/org.tizen.guides/html/dotnet/location_sensors/geofences_cs.htm b/org.tizen.guides/html/dotnet/location_sensors/geofences_cs.htm index def3474..4a81dc8 100755 --- a/org.tizen.guides/html/dotnet/location_sensors/geofences_cs.htm +++ b/org.tizen.guides/html/dotnet/location_sensors/geofences_cs.htm @@ -55,7 +55,7 @@
        • Defining a geofence

          You can define the type of the geofence when creating one.

        • Managing the geofence service -

          You can allow the user to manage the geofence places and fences through My Places.

        • +

          You can allow the user to manage the geofence places and fences through My places.

        Figure: Geofence architecture

        diff --git a/org.tizen.guides/html/dotnet/location_sensors/maps_cs.htm b/org.tizen.guides/html/dotnet/location_sensors/maps_cs.htm index d65d3bf..8fc5bb8 100755 --- a/org.tizen.guides/html/dotnet/location_sensors/maps_cs.htm +++ b/org.tizen.guides/html/dotnet/location_sensors/maps_cs.htm @@ -62,7 +62,7 @@
      9. Discovering and selecting a map provider

        You can also specify basic maps preferences.

      10. Geocoding and reverse geocoding -

        You can get the geocode (geographical coordinates) of a place based on an address, or the reverse geocode (address) based on the geographical coordinates (latitude and longitude).

      11. +

        You can get the geocode (geographical coordinates) of a place from an address, or the reverse geocode (address) from the geographical coordinates (latitude and longitude).

      12. Searching places

        You can query place information, corresponding to specified search keys and filters.

      13. Searching routes @@ -91,14 +91,14 @@

        Geocodes

        The following geocode request types are provided:

          -
        • Get place coordinates based on a free text address.
        • -
        • Get place coordinates based on a free text address within a specified geographical area.
        • -
        • Get place coordinates based on a structured address (a structure with fields, such as city, street, and building number).
        • +
        • Get place coordinates from a free text address.
        • +
        • Get place coordinates from a free text address within a specified geographical area.
        • +
        • Get place coordinates from a structured address (a structure with fields, such as city, street, and building number).

        After performing the geocode service request, you receive the geocode response, which is a geographical location, specified with latitude and longitude values.

        Only 1 type of reverse geocode request is provided:

          -
        • Get a structured address based on place coordinates.
        • +
        • Get a structured address from place coordinates.

        You can parse the reverse geocode response to use its details. The response contains structured address information, consisting of, for example, a street name, building number, city name, postal code, district name, state name, and country.

        @@ -108,7 +108,7 @@
        • Query place information within a specific distance around a specified geographical location.
        • Query place information within a specified geographical area.
        • -
        • Query place information based on a free text address within a specified geographical area.
        • +
        • Query place information from a free text address within a specified geographical area.

        After performing the place service request, you receive the place search response. You can parse the place search response to use its details. The response contains structured place information, consisting of, for example, a place ID, name and URL, address, geographical location and distance from the center of the search area, place category, rating, review, and image.

        @@ -150,12 +150,12 @@

        You can create objects in the widget. The following view object types are provided:

        • Marker based on a specified geographical location, image, and marker type.
        • -
        • Polyline based on a specified geographical locations, color, and width.
        • -
        • Polygon based on a specified geographical locations and color.
        • +
        • Polyline based on specified geographical locations, color, and width.
        • +
        • Polygon based on specified geographical locations and color.

        The object properties can be changed after the object has been created.

        -

        The map view and map object can handle events. Each object has handlers to invoke callback functions for selected events of the Tizen.Maps.MapObject and Tizen.Maps.MapView classes:

        +

        The map view and map object can handle events. Each object has handlers to invoke callbacks for selected events of the Tizen.Maps.MapObject and Tizen.Maps.MapView classes:

        • Gestures
            diff --git a/org.tizen.guides/html/dotnet/messages.htm b/org.tizen.guides/html/dotnet/messages.htm index cf0942a..6c37235 100644 --- a/org.tizen.guides/html/dotnet/messages.htm +++ b/org.tizen.guides/html/dotnet/messages.htm @@ -79,7 +79,7 @@ You can test sending MMS messages on a target device only. The emulator does not </privileges> -
          • To use the methods and properties of the Tizen.Messaging.Messages namespace, include it in your application: +
          • To use the methods and properties of the Tizen.Messaging.Messages namespace, include it in your application:
             using Tizen.Messaging.Messages;
             
            diff --git a/org.tizen.guides/html/dotnet/push_server.htm b/org.tizen.guides/html/dotnet/push_server.htm index 34f3684..b3a3d12 100644 --- a/org.tizen.guides/html/dotnet/push_server.htm +++ b/org.tizen.guides/html/dotnet/push_server.htm @@ -356,7 +356,7 @@ In case of the BACKGROUNDLAUNCH notification, the app_create(
          • Type: long
          • Default: NULL
          - + expiryDate Time period, in minutes, for storing the request in the push server if the delivery fails: diff --git a/org.tizen.guides/html/dotnet/security/secure_repository.htm b/org.tizen.guides/html/dotnet/security/secure_repository.htm index 3d2e674..e4647e2 100644 --- a/org.tizen.guides/html/dotnet/security/secure_repository.htm +++ b/org.tizen.guides/html/dotnet/security/secure_repository.htm @@ -61,12 +61,15 @@

          A client can specify simple access rules when storing items in the secure repository:

          • Extractable or non-extractable -

            The secure repository returns the raw value only for items marked extractable. For items marked non-extractable, the secure repository provides secure cryptographic operations to handle it without revealing the key values to the client.

            -
          • +
              +
            • Only for data tagged as extractable, the secure repository returns the raw value of the data.
            • +
            • If data is tagged as non-extractable, the secure repository does not return its raw value. In that case, the secure repository provides secure cryptographic operations for non-exportable keys without revealing the key values to the clients.
          • Per key password -

            All items in the secure repository are protected by a user password. Additionally, a client can provide its own password to encrypt items when saving them into the repository. The same password must then be provided when getting the item from the secure repository.

            -
          • -
          +
            +
          • All data in the secure repository is protected by a user password.
          • +
          • A client can encrypt its data using their own password additionally.
          • +
          • If a client provides a password when storing data, the data is encrypted with the password. This password must be provided when getting the data from the secure repository.
        • +
      14. Access control

        By default, only the data owner can access the data. If the owner grants access to other applications, those applications can read or delete the data from the secure depository.

        diff --git a/org.tizen.guides/html/dotnet/sensor_cs.html b/org.tizen.guides/html/dotnet/sensor_cs.html index aed2cdc..4b2f2dd 100644 --- a/org.tizen.guides/html/dotnet/sensor_cs.html +++ b/org.tizen.guides/html/dotnet/sensor_cs.html @@ -30,7 +30,7 @@
        • Prerequisites
        • -
        • Creating a Sensor
        • +
        • Creating a Sensor Instance
        • Subscribing to Sensor Events
        • Accelerometer
        • Geomagnetic Rotation Vector Sensor
        • @@ -63,8 +63,7 @@

          Device Sensors

          You can manage the sensors in the device and receive data from them.

          -

          Using the Tizen.Sensor namespace, you can create sensor instances, which correspond to physical or software-defined sensor devices. The sensor instance is used to check the availability of and control the corresponding sensor.

          -

          After you have created a sensor instance for a specific sensor and subscribed to sensor events, you can monitor the device's internal sensors for sensor value changes. The application can receive the sensor data only when the data is modified.

          +

          Using the Tizen.Sensor namespace, you can create sensor instances, which correspond to physical or software-defined sensor devices. The sensor instance is used to check the availability of and control the corresponding sensor. After you have created a sensor instance for a specific sensor and subscribed to sensor events, you can monitor the device's internal sensors for sensor value changes. The application can receive the sensor data only when the data is modified.

          When running an application on the emulator, you can use the Emulator Control Panel to simulate sensor data for the application.

          @@ -75,11 +74,11 @@ Not all devices support all sensors, so each sensor is not necessarily available on all devices. You can check whether a sensor is supported.
          -

          Table: Sensor Types

          +

          Table: Supported sensor types

          - + @@ -114,6 +113,7 @@ +
          Sensor TypesSupported sensor types
          Accelerometer
          Pedometer Uncalibrated Magnetic Sensor-
          @@ -123,25 +123,25 @@

          To enable your application to use the sensor functionalities:

            -
          1. Include the Tizen.Sensor namespace in your application: -
            -using Tizen.Sensor;
            -
            -
          2. -
          3. Add the following privilege to your application manifest, if you want to use any health-related sensors: +
          4. To use any health-related sensors, the application has to request permission by adding the following privilege to the tizen-manifest.xml file:
             <privileges>
                 <privilege>http://tizen.org/privilege/healthinfo</privilege>
             </privileges>
             
          5. +
          6. Include the Tizen.Sensor namespace in your application: +
            +using Tizen.Sensor;
            +
            +
          -

          Creating a Sensor

          +

          Creating a Sensor Instance

          -

          If an application wants to observe data from a specific sensor, a sensor instance needs to be created in advance:

          +

          If an application wants to observe data from a specific sensor, you must create a sensor instance:

          -
            +
            • For a specific supported sensor type, a device can have multiple sensors.

              You can acquire the default sensor (designated by the device vendor) of a given type. The following example shows how to get the default accelerometer of the device by creating a new instance of the Tizen.Sensor.Accelerometer class:

              @@ -164,19 +164,19 @@ try
                   /// You can retrieve the total count of accelerometers by using the following property:
                   /// var count = Accelerometer.Count;
               
              -    var sensor = new Accelerometer(0); /// The index starts at 0
              +    var sensor = new Accelerometer(0); /// Index starts at 0
               }
               catch (NotSupportedException)
               {
              -    /// Accelerometer is not supported in the current device.
              +    /// Accelerometer is not supported in the current device
               }
               
            • -
          +

        Subscribing to Sensor Events

        -

        If a sensor instance is created successfully, it is able to observe sensor data changes through the event handler. In addition, you can set several parameters, including the update interval of the sensor data and the power-save behavior of the sensor. The following example shows how to set the parameters and listen for changes in sensor data:

        +

        If a sensor instance is created successfully, it is able to observe sensor data changes through an event handler. In addition, you can set several parameters, including the update interval of the sensor data and the power-save behavior of the sensor. The following example shows how to set the parameters and listen for changes in sensor data:

        1. To listen for sensor events, define a handler and register for the DataUpdated event from the sensor: @@ -184,9 +184,9 @@ catch (NotSupportedException) EventHandler<AccelerometerDataUpdatedEventArgs> handler = null; handler = (sender, e) => { - Log.Info(LOGTAG, "X : " + e.X); - Log.Info(LOGTAG, "Y : " + e.Y); - Log.Info(LOGTAG, "Z : " + e.Z); + Log.Info(LOGTAG, "X: " + e.X); + Log.Info(LOGTAG, "Y: " + e.Y); + Log.Info(LOGTAG, "Z: " + e.Z); }; sensor.DataUpdated += handler; @@ -203,7 +203,7 @@ sensor.Start();
        2. While the sensor is running, you can change the sensor settings:
            -
          • You can change the sensor update interval by adjusting the Interval property of the individual Tizen.Sensor.XXX instance: +
          • You can change the sensor update interval by adjusting the Interval property of the sensor instance:
             sensor.Interval = 200;
             
            @@ -366,7 +366,7 @@ sensor.Dispose();

            Geomagnetic Rotation Vector Sensor

            -

            The geomagnetic rotation vector sensor is the output of a software/hardware-based sensor fusion solution which uses the accelerometer and magnetic sensors to compute the orientation of the device. In this sensor, the computed orientation is free of any drift, but it is inaccurate compared to a sensor fusion solution using the gyroscope sensor. The geomagnetic rotation vector sensor represents the orientation of the device as a combination of an angle and an axis in which the device has rotated through a specific angle around an axis (x, y, or z).

            +

            The geomagnetic rotation vector sensor is the output of a software/hardware-based sensor fusion solution which uses the accelerometer and magnetic sensors to compute the orientation of the device. In this sensor, the computed orientation is free of any drift, but it is inaccurate compared to a sensor fusion solution using the gyroscope sensor. The geomagnetic rotation vector sensor represents the orientation of the device as a combination of an angle and an axis in which the device has rotated through a specific angle around an axis (X, Y, or Z).

            The following table lists the measurement data that the geomagnetic rotation vector sensor provides.

            Table: Measurement data detected by the geomagnetic rotation vector sensor

            @@ -624,7 +624,7 @@ sensor.Dispose();

            Linear Acceleration Sensor

            -

            The linear acceleration sensor is derived from the accelerometer by excluding the gravity value, and it measures the user-driven changes in the velocity. The linear acceleration sensor is used to detect the dynamic movement of the device and analyze the user's motion profile. The 3-axes linear acceleration components provide a measure of the combined linear motion subjected to the device in the euclidean space.

            +

            The linear acceleration sensor is derived from the accelerometer by excluding the gravity value, and it measures the user-driven changes in the velocity. The linear acceleration sensor is used to detect the dynamic movement of the device and analyze the user's motion profile. The 3-axes linear acceleration components provide a measure of the combined linear motion subjected to the device in the Euclidean space.

            The linear acceleration sensor provides 3 components of acceleration (X, Y, and Z), as the following figure illustrates.

            Figure: User-acceleration sensor vector and axes

            User-acceleration sensor vector and axes

            @@ -888,7 +888,7 @@ sensor.Dispose();

            The ProximitySensorState property is one of the values of the Tizen.Sensor.ProximitySensorState enumeration: Unknown, Far, or Near.

            Rotation Vector Sensor

            -

            The rotation vector sensor represents the orientation of the device as a combination of an angle and an axis, in which the device has rotated through a specific angle around an axis (x, y, or z). The rotation vector is the output of a software/hardware-based sensor fusion solution, which uses the accelerometer, gyroscope, and magnetic sensor as inputs to compute the orientation of the device.

            +

            The rotation vector sensor represents the orientation of the device as a combination of an angle and an axis, in which the device has rotated through a specific angle around an axis (X, Y, or Z). The rotation vector is the output of a software/hardware-based sensor fusion solution, which uses the accelerometer, gyroscope, and magnetic sensor as inputs to compute the orientation of the device.

            The following table lists the measurement data that the rotation vector sensor provides.

            Table: Measurement data detected by the rotation vector

            diff --git a/org.tizen.guides/html/dotnet/storage.htm b/org.tizen.guides/html/dotnet/storage.htm index 1af1a52..04b7863 100644 --- a/org.tizen.guides/html/dotnet/storage.htm +++ b/org.tizen.guides/html/dotnet/storage.htm @@ -111,7 +111,7 @@ using Tizen.System;

            To retrieve storage information:

              -
            1. Retrieve all storages in a device using the Storages property of the Tizen.System.StorageManager class, which returns a list of all device storages as instances of the Tizen.System.Storage class: +
            2. Retrieve all storages on a device using the Storages property of the Tizen.System.StorageManager class, which returns a list of all device storages as instances of the Tizen.System.Storage class:
               var storages = StorageManager.Storages;
              @@ -202,7 +202,7 @@ foreach (var storage in StorageManager.Storages)
               
               

              Retrieving Storage Space Information

              -

              To get the available and total size of the storage, use the TotalSpace and AvailableSpace properties in the Tizen.System.Storage class. For internal storage, they return the storage size, excluding the minimum memory size to launch the low memory pop-up in case of a low memory situation. Consequently, the available size must be less than the original available size, and you must use these properties to get the memory size.

              +

              To get the available and total size of the storage, use the TotalSpace and AvailableSpace properties in the Tizen.System.Storage class. For internal storage, they return the storage size, excluding the minimum memory size to launch the low memory pop-up in a low memory situation. Consequently, the available size must be less than the original available size, and you must use these properties to get the memory size.

              To retrieve storage space information:

              @@ -59,11 +59,11 @@
              • Defining a sync job

                You can create a new sync job and add user data into it as either an account information instance or a data bundle.

              • -
              • Defining an on-demand sync job +
              • Requesting an on-demand sync job

                You can add an on-demand sync job for a one-time operation.

              • -
              • Defining a periodic sync job +
              • Requesting a periodic sync job

                You can add a periodic sync job with a recurring cycle.

              • -
              • Defining a data chance sync job +
              • Requesting a data chance sync job

                You can add a data change sync job for receiving a notification whenever a specific database changes.

              • Retrieving all registered sync jobs

                You can get a list of all registered sync jobs.

              • @@ -76,8 +76,8 @@

                Prerequisites

                -

                To enable your application to use the sync manager functionality:

                -
                  +

                  To enable your application to use the synchronization functionality:

                  +
                  1. To use the Tizen.Account.SyncManager namespace, the application has to request permission by adding the following privileges to the tizen-manifest.xml file:
                     <privileges>
                    @@ -89,15 +89,15 @@
                     </privileges>
                     
                  2. -
                  3. To use the methods and properties of the Tizen.Account.SyncManager namespace, include it in your application:

                    +
                  4. To use the methods and properties of the Tizen.Account.SyncManager namespace, include it in your application:
                     using Tizen.Account.SyncManager;
                     
                  5. -
                +
            Note - To use the features of the Tizen.Account.SyncManager namespace, setting the callbacks needs to be carried out first by a service application. A UI application cannot initialize or set callback methods through the Tizen.Account.SyncManager.SyncAdapter class. Instead, methods of the Tizen.Account.SyncManager.SyncClient class need to be called by the UI application to request sync operations from the service application. + To use the features of the Tizen.Account.SyncManager namespace, the service application must first set the callbacks. A UI application cannot initialize or set callback methods through the Tizen.Account.SyncManager.SyncAdapter class. Instead, the UI application must call the methods of the Tizen.Account.SyncManager.SyncClient class to request sync operations from the service application.

            Setting Sync Adapter Callbacks

            @@ -118,7 +118,7 @@ SyncAdapter.CancelSyncCallback cancelCb = (SyncJobData data) =>
          • -
          • Register the event callbacks with the SetSyncEventCallbacks() method of the Tizen.Account.SyncManager.SyncAdapter class to receive notifications regarding the sync operation. +
          • Register the event callbacks with the SetSyncEventCallbacks() method of the Tizen.Account.SyncManager.SyncAdapter class to receive notifications regarding the sync operation.

            When a specific event is detected or a sync job is requested, the StartSyncCallback or CancelSyncCallback events of the Tizen.Account.SyncManager.SyncAdapter class are invoked.

             SyncAdapter obj = new SyncAdapter();
            @@ -144,7 +144,7 @@ SyncData.SyncJobName = "PeriodicSyncJob";
             

            You can add user data to a sync job as an account information instance or as a data bundle:

              -
            • To add account information to a sync job, create a new instance of the Tizen.Account.AccountManager.Account class, add your account information into it, and then add it into the sync job as the Account property of the Tizen.Account.SyncManager.SyncJobData instance. For more information about creating accounts, see Creating an Account. +
            • To add account information to a sync job, create a new instance of the Tizen.Account.AccountManager.Account class, add your account information into it, and then add it into the sync job as the Account property of the Tizen.Account.SyncManager.SyncJobData instance. For more information about creating accounts, see Creating and Managing an Account.
               using Tizen.Account.AccountManager;
               
              @@ -168,7 +168,7 @@ SyncData.UserData = bundle;
               		
            -

            Defining an On-demand Sync Job

            +

            Requesting an On-demand Sync Job

            To request a one-time sync job from the Sync Adapter service application, use the RequestOnDemandSyncJob() method of the Tizen.Account.SyncManager.SyncClient class:

            @@ -178,9 +178,9 @@ int id = SyncClient.RequestOnDemandSyncJob(request, SyncOption.NoRetry);
             
            -

            Defining a Periodic Sync Job

            +

            Requesting a Periodic Sync Job

            To register a periodically-recurring sync operation with the Sync Adapter service application:

            -
              +
              • To set up a periodic sync job with a regular sync interval, use the AddPeriodicSyncJob() method of the Tizen.Account.SyncManager.SyncClient class, and give the sync interval as a value of the Tizen.Account.SyncManager.SyncPeriod enumeration. In the following example, the sync interval is set to 30 minutes:
                 SyncJobData SyncData = new SyncJobData();
                @@ -194,7 +194,7 @@ int id3 = SyncClient.AddPeriodicSyncJob(SyncData3, SyncPeriod.OneDay, SyncOption
                 
              • -
              • You can also use the AddPeriodicSyncJob() method to renew a previously registered periodic sync job by using the same Tizen.Account.SyncManager.SyncJobData instance with new parameters: +
              • You can renew a previously registered periodic sync job with the AddPeriodicSyncJob() method by using the same Tizen.Account.SyncManager.SyncJobData instance with new parameters:
                 SyncJobData SyncData = new SyncJobData();
                 SyncData.SyncJobName = "PeriodicSyncJob";
                @@ -202,12 +202,12 @@ int id = SyncClient.AddPeriodicSyncJob(SyncData, SyncPeriod.ThirtyMin, SyncOptio
                 id = SyncClient.AddPeriodicSyncJob(SyncData, SyncPeriod.TwoHours, SyncOption.Expedited);
                 
              • -
            +

          Defining a Data Change Sync Job

          -

          To register a data change sync job with the Sync Adapter service application, to occur whenever a corresponding database changes:

          -
            +

            To register a data change sync job with the Sync Adapter service application, to occur whenever corresponding data changes:

            +
            • Add a data change sync job with the AddDataChangeSyncJob() method of the Tizen.Account.SyncManager.SyncClient class. This method adds the sync job only for the capability given as the value of the SyncJobName property of the Tizen.Account.SyncManager.SyncJobData instance. For example, to add a data change sync job for the calendar:
               SyncJobData SyncData = new SyncJobData();
              @@ -221,7 +221,7 @@ int id3 = SyncClient.AddDataChangeSyncJob(SyncData3, SyncOption.Expedited);
               
            • -
            • You can also use the AddDataChangeSyncJob() method to renew a previously registered data change sync job by using the same Tizen.Account.SyncManager.SyncJobData instance with new parameters: +
            • You can renew a previously registered data change sync job with the AddDataChangeSyncJob() method by using the same Tizen.Account.SyncManager.SyncJobData instance with new parameters:
               SyncJobData SyncData = new SyncJobData();
               SyncData.SyncJobName = SyncJobData.ContactCapability;
              @@ -229,7 +229,7 @@ int id = SyncClient.AddDataChangeSyncJob(SyncData, SyncOption.Expedited);
               id = SyncClient.AddDataChangeSyncJob(SyncData, SyncOption.None);
               
            • -
          +

          Retrieving All Registered Sync Jobs

          @@ -246,7 +246,7 @@ int id2 = SyncClient.AddDataChangeSyncJob(SyncData2, SyncOption.None); foreach (var pair in SyncClient.GetAllSyncJobs()) { - Console.Write(pair.Key + " : "); + Console.Write(pair.Key + ": "); Console.WriteLine(pair.Value); } diff --git a/org.tizen.guides/html/dotnet/telephony.htm b/org.tizen.guides/html/dotnet/telephony.htm index 761304d..844fb73 100644 --- a/org.tizen.guides/html/dotnet/telephony.htm +++ b/org.tizen.guides/html/dotnet/telephony.htm @@ -19,7 +19,7 @@
          -

          Mobile C#

          +

          Mobile C#

          diff --git a/org.tizen.guides/html/dotnet/uix/voice_control_n.htm b/org.tizen.guides/html/dotnet/uix/voice_control_n.htm index dddcfaf..e58147c 100755 --- a/org.tizen.guides/html/dotnet/uix/voice_control_n.htm +++ b/org.tizen.guides/html/dotnet/uix/voice_control_n.htm @@ -354,7 +354,7 @@ void get_supported_language()

          To create a command list and commands:

            -
          1. Create a command list with the command list handle. +
          2. Create a command list with a command list handle.

            The command list can include many commands, which each have a command text and type. The list can have both the Foreground and Background type commands (the types are defined in the Tizen.Uix.VoiceControl.CommandType enumeration. The foreground commands are valid when the application is in a visible state and the background commands are valid when the application is in a visible or invisible state.

            You can access the command list after you set it to the voice control and when you get the recognition result.

            diff --git a/org.tizen.guides/html/dotnet/wifi.htm b/org.tizen.guides/html/dotnet/wifi.htm index 265d315..d8e6c7f 100644 --- a/org.tizen.guides/html/dotnet/wifi.htm +++ b/org.tizen.guides/html/dotnet/wifi.htm @@ -96,7 +96,7 @@
            Note -You can test Wi-Fi functionality on a target device only. The emulator does not support this feature. +You can test the Wi-Fi functionality on a target device only. The emulator does not support this feature.

            Prerequisites

            @@ -112,7 +112,7 @@ You can test Wi-Fi functionality on a target device only. The emulator does not </privileges>
          3. -
          4. To use the methods and properties of the Tizen.Network.WiFi namespace, include it in your application: +
          5. To use the methods and properties of the Tizen.Network.WiFi namespace, include it in your application:
             using Tizen.Network.WiFi;
             
            diff --git a/org.tizen.guides/html/dotnet/wifi_direct.htm b/org.tizen.guides/html/dotnet/wifi_direct.htm index f7ac047..fc007a1 100644 --- a/org.tizen.guides/html/dotnet/wifi_direct.htm +++ b/org.tizen.guides/html/dotnet/wifi_direct.htm @@ -18,7 +18,7 @@
            -

            Mobile C#

            +

            Mobile C#

            @@ -67,12 +67,12 @@
          6. Connecting to a specific Wi-Fi Direct peer device

            You can connect to a specific Wi-Fi Direct device. When the connection is no longer needed, you can end it.

          7. Managing Wi-Fi Direct groups -

            You can create a Wi-Fi Direct group, and destroy it when no longer needed.

          8. +

            You can create a Wi-Fi Direct group, and destroy it when no longer needed.

            Note -You can test Wi-Fi functionality on a target device only. The emulator does not support this feature. +You can test the Wi-Fi Direct functionality on a target device only. The emulator does not support this feature.

            Prerequisites

            @@ -85,7 +85,7 @@ You can test Wi-Fi functionality on a target device only. The emulator does not </privileges> -
          9. To use the methods and properties of the Tizen.Network.WiFiDirect namespace, include it in your application: +
          10. To use the methods and properties of the Tizen.Network.WiFiDirect namespace, include it in your application:
             using Tizen.Network.WiFiDirect;
             
            @@ -139,7 +139,7 @@ WiFiDirectManager.ConnectionStatusChanged -= EventHandlerConnectionStatusChanged

            Activating Wi-Fi Direct

            -

            To activate a WiFi-Direct local device and check the device state:

            +

            To activate a Wi-Fi Direct local device and check the device state:

            1. Activate Wi-Fi Direct on the local device using the Activate() method of the Tizen.Network.WiFiDirect.WiFiDirectManager class.