您的位置:首页 > 移动开发 > Android开发

android ICS原生态Browser上增加对WML的支持

2011-12-27 10:54 253 查看
android原生态的Browser是不支持对WAP网页的显示,其对WAP网页按照纯文本来显示,这对于目前中国的运营商测试来说,这肯定是不行的,所以……

还好,其实android的webkit中是有对WML解析的源码,只是没有使用而已。这样对我们添加WML来说就轻松了很多,主要有以下几点:

1、将WML模块添加到webkit中的make文件中,编译出wml的静态库;

2、带webkit代码中,我们能看到#if ENABLE(WML)的编译选项,android默认是没有打开该编译选项的,因此需要在webcore的config.h中定义:

#define ENABLE_WML 1

3、在DOMImplementation.cpp中的isXMLMIMEType函数中,没有将mimetype为“text/vnd.wap.wml”类型当做xml,这样就会将该类型当做plain text来处理。因此需要将“text/vnd.wap.wml”添加到该函数中,让其返回true;

4、在framework中的MimeTypeMap.java中,如果mimetype为“text/vnd.wap.wml”时,将其当做“text/plain”类型处理,所以在这里需要将这段代码注释掉;

5、在webkit的wml模块中,添加make文件,将该文件夹下面的cpp文件添加进来进行编译;

有了以上5点,WML基本上就能支持了,但是在编译时可能会有些编译不过的地方,只需要做做修改就可以了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: