本人最近升级phonegap到了3.4.0-0.19.17,phonegap local build android的时候,发现报了个异常:a is not defined,如下图:
这个异常导致的问题就是:你改了config.xml的内容,却不会应用到生成的安卓项目的AndroidManifest.xml里面去。
举个例子,比如你改了config.xml里面的version="1.0.1",执行phonegap local build之后,AndroidManifest.xml里面的android:versionName没变成"1.0.1",还是原来的值。。。
google了下,很多人都遇到了,不过没找到解决办法,而且cordova3.4.0好像也是有这个问题。
自己摸索了下,找到了原因,C:\Users\XXX\AppData\Roaming\npm\node_modules\phonegap\node_modules\cordova\src\ConfigParser.js
这个文件的里的变量a没有定义,如下图
把它改成ret = preferences[i].attrib.value; 如下图:
再来local build,好了 没错误了。