×
Namespaces

Variants
Actions

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

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata

Пример кода
Исходный файл: Media:AIWConsumerBasics.zip

Статья
Перевод:
Оригинал: AIW Generic Parameters API
truf
Последнее редактирование: hamishwillee (09 Dec 2011)

Note.pngNote: :Это 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.

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

File:AIWConsumerBasics.zip


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

This page was last modified on 9 December 2011, at 05:01.
67 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.

×