【问题标题】:No such file AndroidManifest.xml with cordova >= 7没有带有cordova> = 7的AndroidManifest.xml文件
【发布时间】:2019-01-15 03:06:48
【问题描述】:

我有一个离子项目,我需要使用Batch。 为了在上一个版本(2.0.0)中使用 Batch,我应该将我的 cordova-android 更新为 >=7.0.0

但问题是,如果我将该依赖项更新到所需版本,所有其他插件都会失败,因为它们还不支持 cordova-android 版本。

基本上,它说AndroidManifest.xml 文件未找到:

(node:8420) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: ENOENT: no such file or directory, open '/<mypath>/platforms/android/AndroidManifest.xml'

如果我执行以下步骤:

  1. 移除安卓平台(cordova platform remove android)。
  2. 删除 node_modules 和插件 (rm -rf /node_modules /plugins)。
  3. 删除packaje.jsonconfig.xml 中的插件条目。
  4. 再次添加安卓平台(cordova platform add android)。

android 平台已创建。 但是,如果我尝试添加批处理插件,我会遇到同样的错误(当他们说他们只支持 cordova-android &gt;= 7 时):

ionic cordova plugin add com.batch.cordova
> cordova plugin add com.batch.cordova --save
Installing "com.batch.cordova" for android

Failed to install 'com.batch.cordova': Error: ENOENT: no such file or directory, open '/<mypath>/platforms/android/AndroidManifest.xml'

我提到这个插件是因为他们说他们只支持cordova-android &gt;= 7,但在我的情况下,所有的cordova插件都会发生这种情况。

我可以使用与旧版本 cordova-android 兼容的 Batch 插件 (1.7.4) 的次要版本。 但是那个版本的 Batch 没有应用内消息功能,在我的情况下它是必需的。该版本只有推送通知和事件跟踪 :/

这是我的离子信息:

cli packages: (/usr/lib/node_modules)

    @ionic/cli-utils  : 1.19.2
    ionic (Ionic CLI) : 3.20.0

global packages:

    cordova (Cordova CLI) : 8.0.0 

local packages:

    @ionic/app-scripts : 3.1.10
    Cordova Platforms  : android 7.1.1
    Ionic Framework    : ionic-angular 3.9.2

System:

    Android SDK Tools : 26.0.2
    Node              : v6.14.3
    npm               : 4.6.1 
    OS                : Linux 4.4

Environment Variables:

    ANDROID_HOME : /home/ivan/Android

Misc:

    backend : legacy

有什么解决办法吗?我找不到任何解决方案。人们在使用特定插件时会遇到此错误,但在我的情况下,所有插件都会出现此错误!

谢谢!

【问题讨论】:

标签: android cordova ionic-framework ionic3 cordova-plugins


【解决方案1】:

根据文档,您需要使用“ionic cordova plugin add yourpluginname --nofetch”在 Cordova7 中安装插件。它在cordova 7 文档中定义。详情请参考以下链接:
https://cordova.apache.org/news/2017/05/04/cordova-7.html

会是这样

ionic cordova plugin add com.batch.cordova --nofetch

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-17
    • 2018-06-04
    • 1970-01-01
    • 1970-01-01
    • 2018-12-17
    相关资源
    最近更新 更多