×
Namespaces

Variants
Actions
(Difference between revisions)

Listing installed applications in Symbian Web Runtime

From Nokia Developer Wiki
Jump to: navigation, search
hamishwillee (Talk | contribs)
m (Hamishwillee - Bot update - Fix links)
hamishwillee (Talk | contribs)
m (Hamishwillee - Add Abstract. Tidy wiki text)
 
(One intermediate revision by one user not shown)
Line 1: Line 1:
 +
[[Category:Symbian Web Runtime]][[Category:S60 Platform Services]][[Category:Code Examples]][[Category:General Programming]]
 +
{{Abstract|This code snippet demonstrates how to use the AppManager Service API to discover the applications that are installed on the device.}}
 +
 
{{ArticleMetaData <!-- v1.2 -->
 
{{ArticleMetaData <!-- v1.2 -->
 
|sourcecode= [[Media:WRTStub CS001160.zip]] [[Media:CS001160 Listing installed applications.diff.zip]]
 
|sourcecode= [[Media:WRTStub CS001160.zip]] [[Media:CS001160 Listing installed applications.diff.zip]]
Line 4: Line 7:
 
|devices= Nokia 5800 XpressMusic
 
|devices= Nokia 5800 XpressMusic
 
|sdk= <!-- SDK(s) built and tested against (e.g. [http://linktosdkdownload/ Nokia Qt SDK 1.1]) -->
 
|sdk= <!-- SDK(s) built and tested against (e.g. [http://linktosdkdownload/ Nokia Qt SDK 1.1]) -->
|platform= S60 5th Edition
+
|platform= S60 5th Edition and later
 
|devicecompatability= <!-- Compatible devices (e.g.: All* (must have GPS) ) -->
 
|devicecompatability= <!-- Compatible devices (e.g.: All* (must have GPS) ) -->
 
|dependencies= <!-- Any other/external dependencies e.g.: Google Maps Api v1.0 -->
 
|dependencies= <!-- Any other/external dependencies e.g.: Google Maps Api v1.0 -->
Line 21: Line 24:
 
|author= [[User:Tapla]]
 
|author= [[User:Tapla]]
 
<!-- The following are not in current metadata -->
 
<!-- The following are not in current metadata -->
|subcategory= S60 Platform Services
 
 
|id= CS001160
 
|id= CS001160
 
}}
 
}}
 
==Overview==
 
 
This code snippet demonstrates how to use the AppManager Service API to discover the applications that are installed on the device.
 
  
 
==Source: widget.xhtml==
 
==Source: widget.xhtml==
Line 119: Line 117:
 
* You can examine all the changes that are required to implement the above mentioned features in an application. The changes are provided in unified diff and color-coded diff formats: [[Media:CS001160 Listing installed applications.diff.zip]]
 
* You can examine all the changes that are required to implement the above mentioned features in an application. The changes are provided in unified diff and color-coded diff formats: [[Media:CS001160 Listing installed applications.diff.zip]]
 
* For general information on applying the patch, see [[Using Diffs]].
 
* For general information on applying the patch, see [[Using Diffs]].
* For unpatched stub applications, see [[Example stub]].
+
* For unpatched stub applications, see [[Example app stubs with logging framework]].
 
+
[[Category:Symbian Web Runtime]][[Category:S60 Platform Services]][[Category:Code Examples]][[Category:Code Snippet]]
+

Latest revision as of 08:27, 4 October 2012

This code snippet demonstrates how to use the AppManager Service API to discover the applications that are installed on the device.

Article Metadata
Code ExampleTested with
Devices(s): Nokia 5800 XpressMusic
Compatibility
Platform(s): S60 5th Edition and later
Article
Keywords: device.getServiceObject(), Service.AppManager
Created: tapla (23 Oct 2008)
Last edited: hamishwillee (04 Oct 2012)

Contents

[edit] Source: widget.xhtml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<script type="text/javascript" src="script.js" />
<title>WRT Application</title>
</head>
<body>
<div id="bodyContent" class="bodyContent">
</div>
</body>
</html>

[edit] Source: script.js

var serviceObj = null;
 
window.onload = init;
 
// Initializes the widget
function init() {
// Obtain the AppManager service object
try {
serviceObj = device.getServiceObject("Service.AppManager",
"IAppManager");
} catch (ex) {
alert("Service object cannot be found.");
return;
}
 
// We are interested in applications, so let's define the criteria
// respectively
var criteria = new Object();
criteria.Type = "Application";
 
// Obtain the list of installed applications
var result = serviceObj.IAppManager.GetList(criteria);
var appList = createAppList(result.ReturnValue);
appList.sort();
displayList(appList);
}
 
// Creates the list of installed applications
function createAppList(iterator) {
var list = new Array();
try {
iterator.reset();
var item;
while ((item = iterator.getNext()) != undefined) {
var txt = "";
txt += item.Caption + " (";
txt += item.Uid + ")";
list.push(txt);
}
} catch (ex) {
alert(ex);
}
return list;
}
 
// Displays a list on the screen
function displayList(list) {
var listElement = document.createElement("ol");
for (var i = 0; i < list.length; i++) {
var listItemElement = document.createElement("li");
var textElement = document.createTextNode(list[i]);
listItemElement.appendChild(textElement);
listElement.appendChild(listItemElement);
}
var bodyContentElement = document.getElementById("bodyContent");
bodyContentElement.appendChild(listElement);
}

[edit] Postconditions

The example displays an alphabetically ordered list of installed applications and their UIDs on an HTML page.

[edit] Supplementary material

This page was last modified on 4 October 2012, at 08:27.
114 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×