Application Manager

The application manager provides information about installed and running applications. It provides functions for obtaining the application name and absolute path to share files among all applications.

The main features of the Tizen.Applications.ApplicationManager class include:

Iterator methods are used to travel through a list of applications. The GetRunningApplicationsAsync() method of the Tizen.Applications.ApplicationManager class is used for running applications and the GetInstalledApplicationsAsync() method is used for installed applications.

Prerequisites

To enable your application to use the application management functionality:

  1. To use the methods and properties of the Tizen.Applications.ApplicationManager, Tizen.Applications.ApplicationRunningContext, and Tizen.Applications.ApplicationInfo classes, include the Tizen.Applications namespace in your application:

    C#
    Copy
    using Tizen.Applications;
  2. To use the Resume() method of the Tizen.Applications.ApplicationRunningContext class, the application has to request permission by adding the following privilege to the tizen-manifest.xml file:

    XML
    Copy
    <privileges> <privilege>http://tizen.org/privilege/appmanager.launch</privilege> </privileges>

Managing Application Running Context

To manage the context of the currently running application, follow these steps:

  1. Get the context of the currently running application. To get the context, create an instance of the Tizen.Applications.ApplicationRunningContext class, with the ID of the application from which the context is being obtained as a parameter.

    If you do not have the application ID, you can retrieve it as:

    C#
    Copy
    string applicationId = ApplicationManager.GetAppId(Your PID);

    When an application is not running, it is impossible to get its context:

    C#
    Copy
    ApplicationRunningContext appRunningContext = new ApplicationRunningContext(Your App ID);
  2. Operate on the application context:

    • Get the application ID, package ID, and process ID from the context:

      C#
      Copy
      string applicationId = appRunningContext.ApplicationId; string packageId = appRunningContext.PackageId; int processId = appRunningContext.ProcessId;
    • Check the state of the application:

      C#
      Copy
      if (appRunningContext.State == ApplicationRunningContext.AppState.Foreground) /// UI application is running in the foreground else if (appRunningContext.State == ApplicationRunningContext.AppState.Background) /// UI application is running in the background else if (appRunningContext.State == ApplicationRunningContext.AppState.Service) /// Service application is running else if (appRunningContext.State == ApplicationRunningContext.AppState.Terminated) /// Application is terminated else /// State is undefined if (appRunningContext.IsTerminated) { /// Application is not running now }
    • Resume the running application:

      C#
      Copy
      appRunningContext.Resume();
    • Terminate the background application:

      C#
      Copy
      appRunningContext.TerminateBackgroundApplication();

Getting Information on Filtered Applications

To get information on filtered applications:

  1. Create the filter as an instance of the Tizen.Applications.ApplicationInfoFilter class:

    C#
    Copy
    ApplicationInfoFilter appInfoFilter = new ApplicationInfoFilter();
  2. Add filter rules:

    C#
    Copy
    appInfoFilter.Filter.Add(ApplicationInfoFilter.Keys.Type, "dotnet");
  3. Call the GetInstalledApplicationsAsync() method of the Tizen.Applications.ApplicationManager class and retrieve all filtered applications and print their information:

    C#
    Copy
    IEnumerable<ApplicationInfo> appInfoList = await ApplicationManager.GetInstalledApplicationsAsync(appinfoFilter); foreach (ApplicationInfo appInfo in appInfoList) { Log.Debug("Tag", "applicationId: " + appInfo.ApplicationId); Log.Debug("Tag", "packageId: " + appInfo.PackageId); Log.Debug("Tag", "label: " + appInfo.Label); Log.Debug("Tag", "executablePath: " + appInfo.ExecutablePath); Log.Debug("Tag", "iconPath: " + appInfo.IconPath); Log.Debug("Tag", "applicationType: " + appInfo.ApplicationType); Log.Debug("Tag", "isNoDisplay: " + appInfo.IsNoDisplay.ToString()); Log.Debug("Tag", "isOnBoot: " + appInfo.IsOnBoot.ToString()); Log.Debug("Tag", "isPreload: " + appInfo.IsPreload.ToString()); Log.Debug("Tag", "sharedResourcePath: " + appInfo.SharedResourcePath); }

Getting Information on Current Application

To get information on the current application, follow these steps:

  1. Call the Current property of the Tizen.Applications class:

    C#
    Copy
    Application application = Application.Current;
  2. Operate on the application information:

    • Get the application directory information:

      C#
      Copy
      DirectoryInfo directory = application.DirectoryInfo;
    • Get the application name:

      C#
      Copy
      string name = application.Name;
    • Get the application version:

      C#
      Copy
      string version = application.Version;
  • Dependencies
    • Tizen 4.0 and Higher
Application Icons
Next Application Preference
Submit your feedback to GitHub