Troubleshooting Tizen

Use the following topics to identify possible causes and corrective actions for issues you may encounter:

General Considerations

Consider the following when troubleshooting issues with Tizen devices:

  • You cannot use SDB to sideload your widget unless you have development firmware. Use the Tizen CLI instead.
  • You can use -s SERIAL to target your device or emulator using SDB.
  • You can use -s / --serial SERIAL or -t / --target NAME to target your device or emulator using the Tizen CLI.
  • You can also use -e to target an emulator and -d to target a device.
  • Ensure that you specify these arguments first.

General issues

Issue: Copied Command Is Not Working

Symptoms

You copied a command string directly from this document and pasted it into a terminal window. The command is not working.

Corrective Actions

Ensure the following:

  • If a hyphen is in the command, delete it and retype it directly in the terminal window.
  • You are using quotation marks that are not curved. To be recognized, they must be straight.

Issue: App Freezes or Crashes, Pre-splash Screen

Symptom:

App crashes while loading a layout file, does not show the actual splash screen, and freezes on the static image pre-load screen.

Possible causes

The Tizen ICU data file is not in the correct location after upgrading to You.i Engine One Release 4.8.1.

Corrective actions

Previous to Release 4.8.1, the ICU file is located in ./Resources/tizen-nacl/WidgetFiles/icudt50l.dat.

Starting in Release 4.8.1, it must be located in ./Resources/tizen-nacl/WidgetFiles/assets/icudt55l.dat.

Issue: App Freezes or Crashes, Startup With TTS

Symptom

App freezes or crashes on startup with Text To Speech (TTS) (voice guide settings) enabled.

Possible causes

May be an issue after upgrading to You.i Engine One Release 4.8.1.

Corrective actions

Update the CYIKeyboardInputBridge::HideIme function in templates/mains/Resources/tizen-nacl/web/scripts/YiKeyboardInputBridge.js to target #nacl_module instead of #nacl_module_placeholder

Issue: Unable to Gracefully Clean Up the Custom DOM Elements if NaCl Crashes

Symptom

When the NaCl C++ portion of the Tizen application crashes, the JavaScript (JS) code, such as JS-based video playback, continues to run in the background.

Corrective Action

Handle the DOM event called tizennaclcrash emitted globally by CYIApplication on the DOM window element to perform any necessary JS cleanup using the following JS code:

window.addEventListener("tizennaclcrash", function (event) { ... });

Build Issues

Issue: Wrong Tizen App ID and Package Name

Symptom

A Tizen widget application ID and package name contain a value of FmHXPQSBwZ.app_name and FmHXPQSBwZ respectively.

Cause

By default the You.i Engine C++ CMake build scripts provide a default hard-coded package ID that is used to set the Tizen application ID and package name.

Corrective Actions

Manually add a new package ID to CMakeLists.txt to prevent the default values from being used.

The following is an example: set(YI_PACKAGE_ID "8zQgyXyvrB" CACHE STRING "The Tizen application id override." FORCE)

The Tizen package name must be unique for each project. It is also separate from the standard package name used by other application targets; such as Android, iOS, or tvOS.

To generate a new package ID:

  1. Create a blank TV web application in Tizen Studio.
  2. Open config.xml.
  3. Click on the Tizen tab and copy the first part of the generated ID (that is, before the period).
  4. Click generate to obtain a new ID if you are not happy with the one that is provided.

Signing Issues

Ensure the build script finds your signing certificate. Otherwise you cannot sideload the app using the Tizen CLI or SDB.

If the build script cannot find your certificate, consider the following:

  • Ensure that there are no conflicts in specifying your signing profile:
    • Ensure that TIZEN_SIGNING_IDENTITY has not been accidentally set in your environment variables.
    • If you are using TIZEN_SIGNING_IDENTITY, ensure it is set to the name of the signing profile that you want to use.
  • Ensure your Tizen CLI configuration default.profiles.path setting is correct. Enter:

    cd ~/tizen-studio-data/profile/profiles.xml

    tizen cli-config -l

    If it is incorrect, update it. Enter:tizen cli-config "default.profiles.path=~/tizen-studio-data/profile/profiles.xml"

  • Use youi-tv clean to clean your project folder. Then run youi-tv generate -p tizen-nacl. Ensure this step picks up your signing profile before proceeding with youi-tv build -p tizen-nacl.

Emulator Issues

If your Tizen device emulator does not boot the kernel, ensure CPU VT and GPU are enabled under HW Support on the Tizen device emulator settings.

Consider the following:

  • Ensure HAXM is installed.

    Note Some issues are caused by having a HAXM version newer than the minimum version required for the emulator.

  • If CPU VT cannot be enabled:

    1. Go to system Preferences > Security & Privacy and allow any blocked apps related to Intel.
    2. Delete the emulator from the emulator manager.
    3. Uninstall the emulator from the Package Manager under Extension SDK > TV Extensions > Emulator.
    4. Reinstall the emulator in the Package Manager.

      Note If your emulator fails to install, make sure that there are no related emulator entries in the emulator manager. If there are some, remove them then uninstall and reinstall the emulator package.

    5. Reboot your computer. You should now be able to enable CPU VT.

Tizen Development Environment Issues

Issue: Tizen Studio Installation Screen Does Not Respond

The Tizen Studio installation screen does not respond when a JDK version higher than 8 is installed. To resolve the issue, you should uninstall the higher version of JDK and install the JDK of version 8. Do the following steps to uninstall a JDK version higher than 8:

  1. Run the following command on the terminal or command prompt:

    sudo rm -rf ./Library/Java/JavaVirtualMachines/jdkx.x.x_xxx.jdk

    where x.x.x represents the JDK version you want to remove

  2. Run the following set of commands to remove JRE:

    sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
    sudo rm -fr /Library/PreferencePanes/JavaControlPanel.prefPane
    sudo rm -fr /Library/PreferencePanes/JavaControlPanel.prefPane
    

Issue: Tizen Studio Installation Screen Freezes During Installation

Tizen Studio Installation screen freezes during installation, preventing you from continuing.

Corrective Actions

If you have any JDK version newer than 8 installed, uninstall it and install JDK 8.

Issue: Unable to Launch Certificate Manager using Tizen Studio on Linux

When trying to launch the Emulator Manager from Tizen Studio using Tools - Certificate Manager, or by clicking the Certificate Manager icon, nothing happens.

Corrective Actions

Ensure that OpenJDK is NOT installed on Linux. If you have OpenJDK installed, uninstall it and install Oracle JDK 8 on Linux.

Issue: Unable to Update the Environment Variables Set for Tizen on Linux

Environment variables were set to the wrong path, but you can’t reset them.

Corrective Actions

Delete the CmakeCache.txt file from the Debug/Release folder of your Tizen project directory. Generate and build the Tizen project again after setting the correct environment variables.

Issue: Uninstalling Deployed App on Tizen TV Does Not Free The Disk Space

When you uninstall a deployed app on Tizen TV, the disk space previously used by the app is not completely recovered.

Corrective Actions

You need to create an empty Tizen project and deploy it to the Tizen TV. With this method, you remove all the temporary .wgt files that were using the disk space. Use the following set of steps to create an empty Tizen TV project:

  1. Select File - New - Tizen Project in Tizen Studio.
  2. Select Template in the New Tizen Project window and click Next.
  3. Select TV and click Next.
  4. Select Web Application and click Next.
  5. Select Basic Project and click Next.
  6. Define the project properties, such as Project Name and Project Location.
  7. Click Finish to complete.

If Tizen Studio is connected to Tizen TV, right-click the Basic Project and select Run As - Tizen Web Application. When the Basic Project is deployed on TV, all temporary .wgt files are removed. Uninstall the Basic Project to free the TV’s complete disk space.

See also Clearing memory.

Store Pre-Test Issues

Issue: Disallowed Widget Privilege Tag

Symptom

Uploading a widget to the Tizen store fails and displays the following message:(http://tizen.org/privilege/appmanager.certificate) After checking, please re-upload.

Possible cause

The widget’s manifest file (config.xml) contains a privilege that is not allowed.

Corrective actions

Review the widget’s manifest file for the following privilege: <tizen:privilege name="http://tizen.org/privilege/appmanager.certificate"/>

If it is in the file, remove it.