Join Now
Quality Rating:
  • Currently 5.0 / 5
(5.0 / 5 - 1 vote cast)
Expertise Level:
  • Currently 5.0 / 5
(5.0 / 5 - 1 vote cast)

This page was last modified 14:07, 16 March 2008.

API Унифицированных параметров AIW

From Forum Nokia Wiki

Перевод с английского, оригинальная статья находится здесь.


Note!
Это API не является частью SDK. Для его использования вы должны установить SDK API Plug-in.


API Унифицированных параметров AIW предоставляет приложению-клиенту функции создания и управления параметрами AIW. Унифицированные параметры используются для передачи данных между клиентами системы AIW и провайдерами служб AIW.

Contents

Применение

Основными областями применения API Унифицированных параметров AIW являются:

  • Создание списка унифицированных параметров базовых типов.
  • Создание списка унифицированных параметров определенных объектов.

Примеры

Создание списка унифицированных параметров базовых типов

Этот пример демонстрирует создание списка унифицированных параметров и добавление в него имени файла (дескриптор) и кода ошибки (целое число). Этим способом можно передавать наиболее распространенные типы параметров провайдерам AIW, не требующим передачи определенных объектов.

Заголовочный файл:

#include <AiwGenericParam.h>

Код:

// Создание списка, и его помещение в стек очистки.
CAiwGenericParamList* list = CAiwGenericParamList::NewLC();
 
// Задаем параметр с именем файла и добавляем его в список.
_LIT(KMyFileName, "c:\\data\\testfile.txt");
TFileName filename(KMyFileName);
TAiwGenericParam param(EGenericParamFile);
param.Value().Set(filename);
list->AppendL(param);
 
// Задаем параметр с кодом ошибки и добавляем его в список.
param.Reset();	
param.SetSemanticId(EGenericParamError);
param.Value().Set(KErrNotFound); 
list->AppendL(param);
 
// Теперь список может быть передан провайдеру с помощью
// методов ExecuteMenuCmdL() или ExecuteServiceCmdL() Обработчика Служб.
 
// Как только список больше не нужен - извлечем его из стека и уничтожим
CleanupStack::PopAndDestroy(list);


Вы можете добавлять в список столько параметров, сколько потребуется (с соответствующими им семантическими идентификаторами). Приложение, получающее такой список, должно использовать итерационные методы класса CAiwGenericParamList для доступа к его содержимому.

Система AIW содержит удобные методы создания списка входящих или исходящих параметров. Используя эти методы, приложение-клиент может не заботится о выделении для них памяти в кучи, или ее освобождении. Единственное ограничение: вы не можете обратиться к обоим спискам сразу. Если это вас не устраивает - то вы должны создавать и удалять списки самостоятельно. Методы для создания списка входящих и исходящих параметров объявлены следующим образом:


CAiwGenericParamList& CAiwServiceHandler::InParamListL();
CAiwGenericParamList& CaiwServiceHandler::OutParamListL();


Создание списка унифицированных параметров определенных объектов

Если провайдер определяет собственные классы и структуры для передачи между ним и клиентом, то они должны быть сериализованы перед их добавлением в унифицированный список параметров, например, с помощью типов TPtrC8 или TPckg. В качестве идентификатора таких параметров должно использоваться значение EVariantTypeDesC8. Учтите, что система AIW не поддерживает передачу указателей. В качестве примера, взгляните на документацию Map and Navigation AIW provider.

Демонстрационный проект

Image:AIWConsumerBasics.zip


Внутренние ссылки

Related Discussions
Thread Thread Starter Forum Replies Last Post
phone MSISDN an IP address frederic.visticot Mobile Java General 2 2004-12-03 15:30
J2ME Location API? shuaiying Mobile Java General 8 2004-05-20 22:45
Radio tuner kamaljaiswal General Symbian C++ 12 2007-11-15 18:23
6310i <--> Bluetooth GPS salarian Bluetooth Technology 3 2003-07-23 13:49
phone model name in 3rd kompotFX General Symbian C++ 16 2007-12-07 09:49
 
Powered by MediaWiki