ADD_APPLICATION_ 加载资源参数说明
来源:互联网 发布:php根据ip获取地区 编辑:程序博客网 时间:2024/05/18 21:38
1、 字串资源解析
ADD_APPLICATION_STRING(stringId, string)
ADD_APPLICATION_STRING2(stringId, string, string)
ADD_APPLICATION_STRING3(stringId, tmp, string, display)
其中,stringId是字串资源的唯一标示符
string 是字串内容,此处只能使用ASCII码,在解析的时候,内容会被直接展开为UNICODE码,也就是说,此处填写汉字是没有意义的,会被展开成乱码。
display 是描述字串,这个字串仅仅会被打印出来,目前的版本中,对最终代码没有任何影响,也许MTK以后会使用的。
tmp 是用来描述这个字串资源的标示符,枚举中定义的唯一标示符都会被预编译成一个数字,而这个将这个标示符的名称转换成UNICODE码并保存下来。用处,不是很清楚。
字串资源解析与0952没有差别
2、 图片资源解析
ADD_APPLICATION_IMAGE(ImageId, ImgFileName)
ADD_APPLICATION_IMAGE2(ImageId, filename, display)
ADD_APPLICATION_IMAGE3(ImageId, filename, display)
ADD_APPLICATION_IMAGE4(ImageId, tmp, path, filename,display, isMB)
ADD_APPLICATION_IMAGE_TYPE(ImageId, filename, display,isMB, type)
ADD_NFB_IMAGE(args) 这个不是很清楚
ImageId 是图片资源的唯一标示符
ImgFileName、filename 是文件名,这个路径是基于plutommi/Customer/Images的
display 是描述符, 这个字串仅仅会被打印出来,目前的版本中,对最终代码没有任何影响,也许MTK以后会使用的。
path 是文件的路径,如果使用这个值,那么filename最终的文件名是路径+文件名,其总长度,不能超过149个字符。仅支持ascii码
tmp 是用来描述这个图片资源的标示符的名称,枚举中定义的唯一标示符都会被预编译成一个数字。目前这个参数仅仅会被打印出来,对最终代码没有影响,也许MTK以后会使用的。
isMB 不是很清楚这个参数的意义,从后面流程来看,这个参数是标示这个图片资源是否是系统支持的资源类型,系统可以对这个资源进行检查,对于支持或不支持的资源,会被放到不同的地方。使用不同的索引。
与0952没有差别
3、 视频资源解析
ADD_APPLICATION_MEDIA(ImageId, ImgFileName)
ADD_APPLICATION_MEDIA2(ImageId, filename, display)
ADD_APPLICATION_MEDIA3(ImageId, filename, display)
ADD_APPLICATION_MEDIA4(ImageId, tmp, path, filename,display, isMB)
参数意义与图片资源完全一样,解析过程也是一样
4、 音频资源解析
ADD_APPLICATION_AUDIO2(AudioId, filename, display)
ADD_APPLICATION_AUDIO3(AudioId, filename, display)
ADD_APPLICATION_AUDIO_TYPE(AudioId, filename, display,isMB, type) 这个是10a新增加的
AudioId是图片资源的唯一标示符
filename 是文件名,这个路径是基于plutommi/Customer/Audio的
display 是描述符, 这个字串仅仅会被打印出来,目前的版本中,对最终代码没有任何影响,也许MTK以后会使用的。
isMB 不是很清楚这个参数的意义,从后面流程来看,这个参数是标示这个音频资源是否是系统支持的资源类型,对于支持或不支持的资源,会被放到不同的地方。使用不同的索引。
type 不清楚这个参数的意义。
5、 菜单资源解析过程
ADD_APPLICATION_MENUITEM(args)
ADD_APPLICATION_MENUITEM2(args)
ADD_APPLICATION_MENUITEM5(args) 这个是10a新增加的,但是与ADD_APPLICATION_MENUITEM完全一样,解析过程没有区别。
ADD_APPLICATION_MENUITEM_HILITE_HANDLER(MenuID,HiliteHandler)
ADD_APPLICATION_MENUITEM_HINT_HANDLER(MenuID,HintHandler)
这儿需要注意的是,采用此种方法注册的高亮函数,是将相应的数据放入一张const的表中,而通过08B及其以前的版本中的SetHiliteHandler是将相应的数据放入到RAM中的一张表中。这样利用加长编译时间来提高运行效率。而且我们需要注意的是,这两张表,在开机时,并不是同一时间初始化的,也就是说放在RAM中的表,初始化较晚,而对于某些需要使用handler表中数据的应用而言,这时候得到的表是不完整的。这也是08B上代码移植至0952后,快捷功能异常的最主要原因之一(当然,与MTK调整开机初始化顺序也有不可推卸的原因),值得庆幸的是,10A中快捷功能已经不是默认打开了。
6、 其它
ADD_APPLICATION(nId, pName, nMinId, nMaxId) 暂时没有看出用处。
总结,这里面列出来的加载方式,在0952及其之前的版本中,是需要手动添加的;而在10A中,修改资源,需要去修改一个伪xml格式的资源文件,在编译的时候,其解析器会将这个资源文件解析成0952中资源的形式,然后再执行同0952相同的过程。
所有的ADD_APPLICATION_{}(),都是一个宏,主要将添加的记录输出到一个文件中,同时将解析结果添加至各种数组中。最后再对数组进行处理,生成相应的数据而已。
首发于[http://blog.csdn.net/sdoat/archive/2011/01/19/6152361.aspx],转载请注明。
- ADD_APPLICATION_ 加载资源参数说明
- ResourceGroupManager初始化加载资源说明
- NFS之:NFS安装配置及其参数说明资源集锦
- 【DirectX 3D 资源收集】一.参数说明
- 关于logistic 四参数拟合下载资源的说明
- 加载资源
- 加载资源
- 资源加载
- Unity5.4 Assetbundles官方说明五(从AssetBundles的加载和卸载资源对象)
- 资源文件说明:resourcefiles
- 我的资源说明
- 资源代下载说明
- android 资源说明
- constvar: 图片资源说明
- 图片异步加载框架 Android-Universal-Image-Loader的一些参数说明及方法
- 资源限制参数+查看资源限制参数
- 用ClassLoader加载资源
- 动态加载资源文件
- iptables设置防止攻击
- Ubuntu10.10不能上网的解决方法(续)
- duoxiangcheng
- 使用FreeTextBox
- 拦截器的使用
- ADD_APPLICATION_ 加载资源参数说明
- 常用正则表达式
- Javascript Masterpage Aspx Iframe
- ac状态机
- Live555库
- jQuery获取Select选择的Text和 Value(转)
- VS开发环境重设
- The Son of Liberty
- pku1734求无向图的最小环(Floyd算法扩展)