Crashlytics插件破坏了我的项目

时间:2015-06-02 12:44:06

标签: android-studio crashlytics

我正在尝试使用他们在Android Studio中提供的插件将Crashlytics集成到我的应用中。 当我开始应用更改步骤时,我单击下一步,然后它说我应该构建项目。当我尝试构建时,我开始

找不到资源错误

得到

错误:(2)解析XML时出错:前缀不得绑定到其中一个保留的命名空间名称

错误列在的xml是我的一个库项目的build文件夹中,它的名字是values.xml,在我运行Crashlytics插件之前它没有问题。 此外,在运行插件之后,即使在运行gradle clean之后,我也无法从IDE构建项目或从控制台使用gradle,我也无法执行git revert,因为它说没有任何文件被更改。将项目恢复到以前状态的唯一方法是删除文件夹并从远程再次克隆它。

有谁知道发生了什么事? 这个插件对我的构建文件夹做了什么?

其他信息: 我正在使用Beta频道的最新版Android工作室。 我今天下载了最新的Crashlytics插件。 这些是我的gradle构建中设置的sdk和构建工具的版本         minSdkVersion 18         targetSdkVersion 19         compileSdkVersion 21         buildToolsVersion" 21.1.2"

2 个答案:

答案 0 :(得分:1)

我修好了。如果我没记错的话,这就是我的尝试:

  • ionic build android(失败)
  • ionic platform remove android
  • cordova platform remove android
  • cordova plugin remove cordova-crashlytics-plugin
  • ./platforms/android/cordova/clean
  • cordova platform add android
  • ionic build android(成功)
  • cordova plugin add https://github.com/4sh-projects/cordova-crashlytics-plugin
  • ionic build android(成功)

如果这对您不起作用,请告诉我,我将不得不再次查看此内容。我做了一些额外的步骤试图弄清楚这一切,所以你。

答案 1 :(得分:0)

由于同事的一些git指针,我终于设法解决了我的问题。 实际上,我新设法使插件工作,但通过遵循文档手动实现了崩解。

这是避免再次克隆项目的解决方案。

问题是由文件com_crashlytics_export_strings.xml的资源合并创建的 与资源xmls的其余部分。 当您在按下下一步以将更改应用于文件之前运行插件时,插件将在内部创建此xml SRC \主\ RES \值\

请注意,在我的情况下,这些值是在库项目中创建的,因为这是唯一具有默认项目结构的项目。包括应用程序在内的所有其他项目都有自定义结构,显然崩溃插件并不尊重这些自定义。 我的git问题是Android工作室没有看到这个文件,因为它是由其他工具添加的,并且git工作目录很干净,因为Android工作室没有在这个文件上正确调用git add。

另请注意,在运行插件时,会在assets属性文件夹中创建另一个名为crashlytics-build.properties的文件。此文件不会破坏构建,但可能会产生一些不良影响。此文件显然用于识别Android应用程序的各个版本"。为什么他们使用这些数据而不是清单中提供的数据(在我的情况下由我们的构建脚本正确填充)仍然是一个难题,我怀疑可能有很多错误报告打开,询问为什么他们的版本名称不同......

以下是手动添加crashlytics的文档链接https://dev.twitter.com/fabric/android/integrating