我使用英特尔XDK创建混合应用程序。 我使用PlayStore的应用程序ID作为gkg4.pro.obs
最近我使用Cordova切换到Visual Studio 2015,但是,每当我尝试使用此ID时,即gkg4.pro.obs,我在编译时出现退出代码8错误。
如果我正在尝试gkg.pro.obs,即在id中没有数字,它的工作正常。
我无法将ID更改为已有的应用。
此问题的解决方案是什么?请帮忙
答案 0 :(得分:2)
Cordova的限制,Cordova要求包名必须为 com.company.Name 。 Visual Studio使用Cordova CLI构建和打包应用程序,因此不以com.company.Name格式的Application Id会引发构建错误。请注意VS2013 CPT3.0是Cordova 4.0.0
解决方法:强> Android软件包名称在C:\ Users \ [用户名] \ .cordova \ lib \ npm_cache \ cordova-android \ 3.6.4 \ package \ bin \ lib \ create.js(Cordova的一部分)中检查,您可以修改软件包名称验证正则表达式使用(!/ ^ [a-zA-Z 0-9 ] +(。[a-zA-Z0-9] [a-zA-Z0-9 _] *)+ $ / .test(package_name))在下面的方法中。
function validatePackageName(package_name) {
//Make the package conform to Java package types
//Enforce underscore limitation
if (!/^[a-zA-Z]+(\.[a-zA-Z0-9][a-zA-Z0-9_]*)+$/.test(package_name)) {
return Q.reject('Package name must look like: com.company.Name');
}
//Class is a reserved word
if(/\b[Cc]lass\b/.test(package_name)) {
return Q.reject('class is a reserved word');
}
return Q.resolve();
}
完成上述更改后,清理解决方案并重建项目。
请注意,这只是临时修复,Cordova的安装将覆盖此文件。