科尔多瓦不创建AndroidManifest.xml [英] Cordova does not create AndroidManifest.xml
问题描述
我正在Cordova和AndroidStudio中创建Android/iOS应用.一切工作正常,直到昨天我将Cordova更新为8.我也将Node更新为最新版本.当我创建一个Cordova项目并添加Android平台时.它产生了完全不同的目录结构.我在项目的平台目录D:\testApp1\platforms\android
中看不到assets
,res
和src
文件夹.更重要的是,上述目录缺少AndroidManifest.xml
,这导致admob
插件无法添加.
I am working in Cordova and AndroidStudio to create Android/iOS apps. Everything was working fine until I updated my Cordova to 8 yesterday. I also updated Node to the latest. When I create a Cordova project and add the Android platform. It yields a totally different directory structure. I cannot see assets
, res
and src
folders in project's platform directory D:\testApp1\platforms\android
. More importantly, the above directory is missing AndroidManifest.xml
, which is causing the admob
plugin to fail in getting added.
这是添加插件时出现的错误:
Here is the error that I get while adding the plugin:
无法安装"cordova-plugin-admobpro":错误:ENOENT:没有此类文件或目录,请打开"D:\ Projects \ testApp1 \ platforms \ android \ AndroidManifest.xml" 在Object.fs.openSync(fs.js:646:18) 在Object.fs.readFileSync(fs.js:551:33) 在Object.parseElementtreeSync(D:\ Projects \ testApp1 \ platforms \ android \ cordova \ node_modules \ cordova-common \ src \ util \ xml-helpers.js:180:27) 在新的AndroidManifest上(D:\ Projects \ testApp1 \ platforms \ android \ cordova \ lib \ AndroidManifest.js:29:20) 位于AndroidProject.getPackageName(D:\ Projects \ testApp1 \ platforms \ android \ cordova \ lib \ AndroidProject.js:99:12) 在Api.addPlugin(D:\ Projects \ testApp1 \ platforms \ android \ cordova \ Api.js:223:57) 在handleInstall(C:\ Users \ Rao \ AppData \ Roaming \ npm \ node_modules \ cordova \ node_modules \ cordova-lib \ src \ plugman \ install.js:594:10) 在C:\ Users \ Rao \ AppData \ Roaming \ npm \ node_modules \ cordova \ node_modules \ cordova-lib \ src \ plugman \ install.js:357:28 在_fulfilled(C:\ Users \ Rao \ AppData \ Roaming \ npm \ node_modules \ cordova \ node_modules \ cordova-lib \ node_modules \ q \ q.js:787:54) 在self.promiseDispatch.done(C:\ Users \ Rao \ AppData \ Roaming \ npm \ node_modules \ cordova \ node_modules \ cordova-lib \ node_modules \ q \ q.js:816:30)
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 CLI v8.0 will use cordova-android@7.0.0
by default.
由于大多数cordova插件尚不支持cordova-android@7.0.0
,因此您也可以通过指定版本来尝试使用较旧的插件:
As most of the cordova plugins do not support cordova-android@7.0.0
yet, you can also try using the older one by specifying version:
cordova platform add android@6.4.0
或者,如果您习惯使用cordova-android@7.0.0
,也可以等待cordova-plugi-admobpro
上的更新以支持cordova-android@7.0.0
,它即将推出.
Or, if you feel comfortable to use cordova-android@7.0.0
, you can also wait for a update on cordova-plugi-admobpro
to support the cordova-android@7.0.0
, it's coming soon.
这篇关于科尔多瓦不创建AndroidManifest.xml的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!