我正在将我的项目从Cordova 2.5迁移到Cordova 3。遵循
中提到的迁移过程http://cordova.apache.org/docs/en/3.0.0/guide_cli_index.md.html
但是,遗憾的是收到以下错误
准备android项目[错误:找不到扩展的Java文件 CordovaActivity。]
在我们的应用程序中,我们有一个扩展activity并实现CordovaInterface的类。而且这个类位于config.xml中提到的位置。
然而,我面临以下错误。 用CordovaActivity替换CordovaInterface是强制性的吗?我很确定这不是强制性的情况。
答案 0 :(得分:4)
这是由一个破碎的Cordova构建系统引起的。
如果您只是在源树中添加任何旧类,在您的活动旁边扩展CordovaActivity,则构建将起作用。 您甚至不必使用该类,只需制作一个。
就像他们正在就如何运作进行内部辩论,如果他们没有按照自己的方式进行构建失败,那么一方就会搞砸另一方。
示例:
import org.apache.cordova.CordovaActivity;
/**
* This class is simply here to make sure Cordova will build. Without it, even
* though it's not used or otherwise referenced, you will get a build error that
* looks like "Error: No Java files found which extend CordovaActivity".
*
* This applies as of Cordova 3.5.0. It should be re-tested when upgrading to
* Cordova 4.x.
*
*/
public class FakeCordovaActivityForBuild extends CordovaActivity {
}
幸运的是,开发团队中的某个人会注意到这个小冲突并修复它,我想它应该被列为系统中的一个bug,但我还没有添加它。
答案 1 :(得分:0)
有趣的是,用CordovaActivty替换CordovaInterface(以及适当的更改)解决了这个问题。在发行说明文档中没有提到强制使用CordovaActivity。
但是,需要优化扩展CordovaActivity的Java文件中的代码。