[MTK]更新NV项的值

orcisn 发表于 2010-5-31 15:03:00需求变更:把Settings-->Themes下默认菜单项修改为Theme2

在VC中设置断点EntryNewScreen()可以快速定位出Themes窗口的入口函数,设置断点WriteRecord()可以快速定位出控制Theme的NV项ID是NVRAM_EF_THEMES_VALUES,然后在SI中搜索NVRAM_EF_THEMES_VALUES,可以找到默认值NVRAM_THEMES_VALUES_DEFAULT,如下:

,{
        NVRAM_EF_THEMES_VALUES,
        NVRAM_THEMES_VALUES_SIZE,
        NVRAM_THEMES_VALUES_RECORDS,
        NVRAM_THEMES_VALUES_DEFAULT,
        NVRAM_ATTR_MULTIPLE,
        NVRAM_CATEGORY_USER | NVRAM_CATEGORY_SHADOW_MS | NVRAM_CATEGORY_SHADOW,
        "MP2G",
        VER(NVRAM_EF_THEMES_VALUES),
        "Theme Values/0",
        NVRAM_RESERVED_VALUE
    }

更改NVRAM_THEMES_VALUES_DEFAULT里的值后,需要同步升级下NV项NVRAM_EF_THEMES_VALUES的版本号,通过VER(NVRAM_EF_THEMES_VALUES)可以发现NVRAM_EF_THEMES_VALUES的版本号ID是NVRAM_EF_THEMES_VALUES_VERNO,如果NVRAM_EF_THEMES_VALUES_VERNO值是2,那么我们需要升级该NV项ID的版本号到3,如果NV ID存放在数组里,那么需要把该数组版本号++,数组版本存放在custom_nvram_editor_data_item.h文件中的NVRAM_EF_CACHE_BYTE_LID_VERNO,NVRAM_EF_CACHE_SHORT_LID_VERNO以及NVRAM_EF_CACHE_DOUBLE_LID_VERNO,如果不升级NV项的版本号,会导致用户升级版本号,NV项的值不会改变。

本文来自:我爱研发网(52RD.com) - R&D大本营
详细出处:http://www.52rd.com/Blog/Detail_RD.Blog_chendajian_23920.html

你可能感兴趣的:(cache,user,byte,MTK,2010,themes)