We use cookies on this site to enhance your user experience.
By using this site, you are giving your consent for us to set cookies.


Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

1. Overview

The definition of Application framework can be difficult to agree upon. For the moment we start with a Wikipedia definition:

“Application framework consists of a software framework used by software developers to implement the standard structure of an application”

Where software framework is defined like this:

“A software framework is an abstraction in which software providing generic functionality can be selectively  changed by additional user-written code,thus providing application-specific software. […] Software frameworks may include support programs, compilers, code libraries, tool sets, and application programming interfaces (APIs)  that bring together all the different components to enable development of a project or solution”

The GENIVI Reference Architecture works with two different approaches to developing applications, namely the Managed and the Native application type.

Most people associate Application Framework mostly with the solution for the Managed application category, which includes a well-defined and limited set of application APIs and usually a constrained (“sandboxed”) execution environment.

Refer latest "Reference Architecture" document at the below link for more information on Applications FW , Native and Managed Applications, Application Life cycle

Reference Architecture (access requires Genivi Member Login)

1.1 Application Manager

The Application Manager component is a part of the Application Framework set of components, aimed at supporting Applications, "Apps", in a GENIVI setting.

An Application manager component manages the overall responsibilities of the application framework infrastructure. This may include launching applications, restarting applications upon failure or when updated, controlling the privileges associated with the applications, keeping track of application states (in focus / background, speech context and access to audio).

Below is the comparison study of API's belonging to Application Manager in Tizen and Apertis.

 

Sl No.Tizen Web APIDescriptionTizen NativeDescriptionApertis (formerly eCORE)DescriptionComments / Remarks
1getCurrentApplication

Gets the Application object

defining the current application

  CurrentActiveAppProperty update 
2killKills an application with
the specified application context ID.
  Its not exposed to application
but internal to the Application
manager.
Don’t see the need 
3launchLaunches an application
with the given application ID.
  LaunchNewApp ()Launch an application
from any other application
 
4launchAppControlLaunches an application
with the specified application
control.
  OpenURI()This method is used to
launch an application
which handles the MIME
type of the
arguments.
 
5findAppControlFinds application information
 can be launched with the
 given application control.
  AppLaunchDatabaseTakes the MIME type or
URI and returns the list
of apps that are capable
of handling this type
 
6getAppsContextGets a list of application
contexts for applications
 that are currently running
on a device.
  Its not exposed to application
but internal to the Application
manager.
Don’t see the need 
7getAppContextGets the application context
 for the specified application
 context ID.
app_manager_get
_app_context
Gets the application
context for the given
 ID of the application.
Its not exposed to application
but internal to the Application
manager.
Don’t see the need 
8getAppsInfoGets the list of installed
application's information
 on a device.
  Its not exposed to application
but internal to the Application
manager.
A complete list of apps
 is not provided
 
9getAppInfoGets application information
 for a specified application ID.
  GetApplicationInfoReturns manifest info to
the calling process
 
10getAppSharedURIGets URI of read-only shared
directory of application for a
 specified application ID.
   Not yet implemented 
11getAppMetaDataGets application meta data
array for a specified
application ID.
   Not clear if this is
different from GetAppInfo
 
12addAppInfoEventListenerAdds a listener for receiving
any notification for changes
in the list of the installed
applications on a device.
   Not implemented yet 
13removeAppInfoEvent
Listener
Removes the listener to
stop receiving notifications
for changes on the list of
installed applications on a device.
   Not implemented yet 
14    GetGlobalSearchAppsGlobal search is distributed
over all apps. This API
gives a list of apps that are
supporting global search
 
15    RegisterMyAppAll applications register
to application manager
 
16    SetUninstalledApplicationAppStore :Set the
application manifest
name which isuninstalled.
 
17    InsertNewEntryAppStore :Launcher
displays categories of
 applications and the
list of applications in
 each category.
 
18    SetInstalledApplication
Manifest
AppStore :Set the manifest
file of the installed application.
 
20       
21    "signal: AppLaunchDatabase
Update "
This signal indicates
an update of the database
 
24  app_manager_foreach
_app_context
Retrieves all application
 contexts of running
applications.
   
25  app_manager_foreach
_app_info
Retrieves all installed
 applications information.
   
26  int app_manager_get
_app_id
Gets the ID of the
application for the
given process ID.
   
27  app_manager_get_
external_shared_
data_path
Gets the absolute path
to the shared data
directory of the
application specified
with an application ID.
   
28  app_manager_get_
shared_
resource_path
    
29  int app_manager_is
_running
Checks whether the
application with
the given package
name is running.
   
30  int app_manager_
resume_app
Resumes the application.   
31  Many API's wrt
Application context
https://developer.tizen.org
/dev-guide/2.3.0
/org.tizen.mobile.native
.apireference
/group_CAPIAPP_
CONTEXT__MODULE.html
   
32  Many Api's wrt
Application information
https://developer.tizen.org
/dev-guide/2.3.0
/org.tizen.mobile.
native.apireference
/group_CAPI_APP
_INFO_MODULE.html
   

1.2 App Manifest

Manifest contains App meta data. some of the information will help to determine is this App compatible/installable on a particular device.

It contains App info, permission, license, dependencies, services that are mandatory for the proper operation of the App, mime types , version and so on.

App manifest comparative study of Tizen and Apertis.

Sl NoApertis (formerly eCORE)DescriptionTizenDescriptionComments / Remarks
1app-nameAudio-Player'ui-application appid  
2working-directory/usr/Applications/AudioPlayer/'   
3exec-path/usr/Applications/AudioPlayer/bin/
mrs_audio_player'
ui-application execApplication executable
 file path.
 
4background-statekilled'   
5exec-typeapplication'ui-applicationservice app/ui app 
6categoryM U S I C'ui-application  
7category-icon/icon_music_AC.png'ui-application  
8application-entry-names'A R T I S T S','A L B U M S','S O N G S'   
9application-entry-icons'file:///usr/Applications/Launcher/share/icon
_music_artists_AC.png','file:///usr/
Applications/Launcher/share/icon_
music_albums_AC.png','file:///usr/
Applications/Launcher/share/icon
_music_songs_AC.png'
   
10tile-thumbnails'### UNKNOWN ###','### UNKNOWN
###','### UNKNOWN ###'
   
11exec-args('app-name','Audio-Player'),
('menu-entry','A R T I S T S'),('url',' ')
   
12env-key-value-pair'key1','value1'metadata  
13mime-type[]app-controlmime type 
14mime-list[]   
15audio-channel-namemrs_audio_service'   
16audio-resource-ownerAudio-Agent-Service'   
17audio-resource-typemusic'   
18  datacontrol access  
19  accountaccount provider, icon
, lang, capability,
 
20  Previleges  
21  Feature  
22  ui-application  
23  multiple  
24  nodisplay  
25  taskmanager  
26  type  
27  auto-restart  
28  on-boot  

 

 

  • No labels