第十七章
This presentation is the property of its rightful owner.
Sponsored Links
1 / 14

BREW TM Developer Training PowerPoint PPT Presentation


  • 88 Views
  • Uploaded on
  • Presentation posted in: General

第十七章 地址簿的使用. BREW TM Developer Training. 主要内容. 地址簿接口的创建 有关记录的分类 地址簿记录的介绍 修改记录中的字段 为地址簿增加记录 从地址簿中获取记录 有关地址簿应用的一些常见问题. 使用地址簿的准备. 接口的创建 在应用的 MIF 文件中选定“ Access to Address Book” 不支持多地址簿操作. 记录的分组. 手机地址簿中的记录分组 typedef uint16 AEEAddrCat; 预先定义好的分组 AEE_ADDR_CAT_NONE 没有分组

Download Presentation

BREW TM Developer Training

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Brew tm developer training

第十七章

地址簿的使用

BREWTMDeveloper Training


Brew tm developer training

主要内容

  • 地址簿接口的创建

  • 有关记录的分类

  • 地址簿记录的介绍

  • 修改记录中的字段

  • 为地址簿增加记录

  • 从地址簿中获取记录

  • 有关地址簿应用的一些常见问题


Brew tm developer training

使用地址簿的准备

  • 接口的创建

  • 在应用的MIF文件中选定“Access to Address Book”

  • 不支持多地址簿操作


Brew tm developer training

记录的分组

  • 手机地址簿中的记录分组

    • typedef uint16 AEEAddrCat;

  • 预先定义好的分组

    • AEE_ADDR_CAT_NONE 没有分组

    • AEE_ADDR_CAT_PERSONAL 私人记录分组

    • AEE_ADDR_CAT_BUSINESS 商务记录分组

    • AEE_ADDR_CAT_USER_DEFINED 手机厂商定义的记录分组的起点

    • AEE_ADDR_CAT_ERR手机厂商定义的记录分组的最大值

  • 手机厂商定义的记录分组

    • 必须介于AEE_ADDR_CAT_USER_DEFINED 和AEE_ADDR_CAT_ERR两个值之间


Brew tm developer training

记录的分组示例

if(AEE_SUCCESS == IADDRBOOK_EnumCategoryInit(pMe->m_pIAddrBook))

// initialize the enumeration operation

{

AEEAddrCat ac; // stores enumerated category

while(IADDRBOOK_EnumNextCategory(pIAddrBook, &ac))

// enumerate all supported categories

{

// perform some action...

}

}


Brew tm developer training

地址簿记录

  • 地址簿记录中的数据存储在手机厂商定义的一系列字段中,具体的字段在数据结构AEEAddrField 中

    typedef structure {

    AEEAddrFieldID fID; // label of the IAddrBook field

    AEEAddrFieldType fType; // datatype stored in this field (such as FT_STRING)

    void * pBuffer; // pointer to the actual data

    uint16 wDataLen; // length of the data (bytes)

    } AEEAddrField;


Brew tm developer training

获得记录字段的类型

// initialize the enumeration operation

if(AEE_SUCCESS == IADDRBOOK_EnumFieldsInfoInit(pIAddrBook, addressCat))

{

// stores enumerated field info

AEEAddrFieldInfo afi;

// enumerate all supported fields

while(IADDRBOOK_EnumNextFieldsInfo(pIAddrBook, &afi))

{

// perform some action...

}

}


Brew tm developer training

修改记录中的字段

  • IAddrRec 可以实现对地址记录中个别字段的访问。 它提供以下功能:

    • 为记录添加新字段

    • 更新现有地址记录的字段

    • 删除现有地址记录的字段

    • 更改记录


Brew tm developer training

增加一个字段的方法示例

AEEAddrField aField;

AECHAR sCPNum[MYMAXPHONELEN];

// convert char to AECHAR

STRTOWSTR("13301330133", sCPNum, sizeof(sCPNum));

aField.fID = AEE_ADDRFIELD_PHONE_CELL; // fill in cell phone field

aField.fType = AEEDB_FT_PHONE;

aField.pBuffer = sCPNum;

aField.wDataLen = WSTRLEN(sCPNum);

// add field to record

if(AEE_SUCCESS != IADDREC_AddField(pIAddRec, &aField))

{

// error condition

}


Brew tm developer training

增加记录到地址簿

  • 要准备好该记录的各个字段

  • 使用的主要方法是IADDRBOOK_CreateRec()函数

    // create record

    if(NULL == (pIAddrRec = IADDRBOOK_CreateRec(

    pIAddrBook, AEE_ADDR_CAT_NONE, aFields,

    MYNUMFIELDS)))

    {

    // record create fail, check IADDBOOK_GetLastError()

    }


Brew tm developer training

地址簿中记录的获取

  • 按照一定的规则进行枚举

    • 需要使用IADDBOOK_EnumRecInit() 来初始化一组记录的集合

    • 再利用IADDRBOOK_EnumNextRec()来得到所需的结果

  • 更具该记录的标识直接获得

    • 可以简单的通过IADDRBOOK_GetRecByID()方法


Brew tm developer training

常见问题

  • 导致ISHELL_CreateInstance()的失败

    • 忽略了MIF文件中正确权限的选择

    • SDK的版本与手机上的BREW版本不一致

  • 地址簿操作异常

    • 头文件使用错误

    • 由于地址簿是与目标手机密切相关的,手机厂商有时会提供自己的头文件


Brew tm developer training

本章关键点

  • 地址簿的创建

  • 地址簿分组的访问

  • 地址簿记录的访问


Brew tm developer training

问题回顾

  • 如何访问RUIM卡上的地址簿?

  • 向地址簿增加记录时要注意什么?

  • 如何修改记录的字段?


  • Login