我在 Cordova 和 AndroidStudio 工作以创建 Android/iOS 应用程序。在我昨天将我的 Cordova 更新到 8 之前,一切正常。我还将 Node 更新到了最新版本。当我创建一个 Cordova 项目并添加 Android 平台时。它产生一个完全不同的目录结构。我在项目的平台目录 D:\testApp1\platforms\android
中看不到 assets
、res
和 src
文件夹。更重要的是,上面的目录缺少AndroidManifest.xml
,导致admob
插件添加失败。
这是我在添加插件时遇到的错误:
Failed to install 'cordova-plugin-admobpro': Error: ENOENT: no such file or directory, open 'D:\Projects\testApp1\platforms\android\AndroidManifest.xml' at Object.fs.openSync (fs.js:646:18) at Object.fs.readFileSync (fs.js:551:33) at Object.parseElementtreeSync (D:\Projects\testApp1\platforms\android\cordova\node_modules\cordova-common\src\util\xml-helpers.js:180:27) at new AndroidManifest (D:\Projects\testApp1\platforms\android\cordova\lib\AndroidManifest.js:29:20) at AndroidProject.getPackageName (D:\Projects\testApp1\platforms\android\cordova\lib\AndroidProject.js:99:12) at Api.addPlugin (D:\Projects\testApp1\platforms\android\cordova\Api.js:223:57) at handleInstall (C:\Users\Rao\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\src\plugman\install.js:594:10) at C:\Users\Rao\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\src\plugman\install.js:357:28 at _fulfilled (C:\Users\Rao\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:787:54) at self.promiseDispatch.done (C:\Users\Rao\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:816:30)
有人可以帮忙吗?
最佳答案
Cordova CLI v8.0 默认使用 cordova-android@7.0.0
。
由于大多数cordova插件还不支持cordova-android@7.0.0
,你也可以通过指定版本来尝试使用旧的:
cordova平台添加android@6.4.0
或者,如果你觉得使用 cordova-android@7.0.0
很舒服,你也可以等待 cordova-plugi-admobpro
的更新以支持 cordova-android@7.0.0
,快来了。
关于android - Cordova 不创建 AndroidManifest.xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47926796/