我目前正在使用cordova / phonegap构建我的第一个Android应用程序。我正如你通常那样搭建一个项目,然后在android项目的assets /文件夹中我添加了一个app /目录和一个gruntfile,它将所有内容编译到www /目录中。
当我在模拟器中运行/调试项目时,ADT会抛出很多控制台错误(下面是最后5行)
[2014-03-08 22:54:09 - mentalcombat] (skipping file '.npmignore' due to ANDROID_AAPT_IGNORE pattern '.*')
[2014-03-08 22:54:09 - mentalcombat] (skipping file '.npmignore' due to ANDROID_AAPT_IGNORE pattern '.*')
[2014-03-08 22:54:09 - mentalcombat] (skipping file '.travis.yml' due to ANDROID_AAPT_IGNORE pattern '.*')
[2014-03-08 22:54:09 - mentalcombat] Unable to add '/Users/leaky/sites/Android/mentalcombat/assets/node_modules/bower/node_modules/semver/semver.browser.js.gz': file already in archive (try '-u'?)
[2014-03-08 22:54:09 - mentalcombat] ERROR: unable to process assets while packaging '/Users/leaky/sites/Android/mentalcombat/bin/resources.ap_'
[2014-03-08 22:54:09 - mentalcombat] ERROR: packaging of '/Users/leaky/sites/Android/mentalcombat/bin/resources.ap_' failed
当我删除assets /中的node_modules文件夹时,项目将在模拟器中运行/调试。
任何想法可能导致此问题,或者有人有修复/解决方法吗?
答案 0 :(得分:2)
有完全相同的问题。从platforms / android / build.xml中排除节点模块:
<property name="aapt.ignore.assets" value="<dir>node_*" />
来源:
答案 1 :(得分:0)
您不应该修改build.xml,因为它每次都会生成。
在本文的帮助下,我发现您可以创建/编辑text
并添加以下行:
typedef struct {
char nome[501];
int qtd;
int linha;
int coluna;
} tPeca;
tPeca* criarPecas(FILE *pFile, int tam) {
int i;
tPeca *pecaJogo = (tPeca*)malloc(tam*sizeof(tPeca));
if (pecaJogo == NULL)
return NULL;
for (i = 1; i <= tam; i++) {
fscanf (pFile, "%[^;]", pecaJogo[i].nome);
fscanf (pFile, "%d", pecaJogo[i].qtd);
fscanf (pFile, "%d", pecaJogo[i].linha);
fscanf (pFile, "%d\n", pecaJogo[i].coluna);
}
return pecaJogo;
}
我添加了node_ *部分以忽略节点相关文件。现在构建很好。