[英]ionic 4 cordova-plugin-camera default FRONT camera not Working on android
[英]Ionic 3 : Android add platform fails after installing cordova-plugin-camera and Native Web-intent
首先,感谢您抽出宝贵的时间来帮助我!
摘要:
试图将cordova-plugin-camera添加到我的ionic 3项目中。 在许多失败并最终成功之后,现在我的应用程序不再基于我的android构建。
--------开始编辑--------
经过大量测试,当我同时安装了camera和web-intent插件时,似乎有冲突/问题。
这两个插件均来自Ionic Native:
--------结束编辑--------
我的离子信息
cli packages: (C:\Users\[...]\AppData\Roaming\npm\node_modules)
@ionic/cli-utils : 1.9.2
ionic (Ionic CLI) : 3.9.2
global packages:
Cordova CLI : 7.0.1
local packages:
@ionic/app-scripts : 2.1.3
Cordova Platforms : android 6.2.3
Ionic Framework : ionic-angular 3.6.0
System:
Node : v8.1.2
npm : 5.0.3
OS : Windows 10
我采取的步骤(有点历史):
由于cordova-plugin-compat的版本不兼容,我无法安装相机插件(可以在很多论坛中找到)。 因此,我遵循了一些步骤:
然后我尝试安装相机插件:
这是我回来的东西:
> cordova plugin add cordova-plugin-camera --save × Running command - failed! [ERROR] An error occurred while running cordova plugin add cordova-plugin-camera --save (exit code 1): Installing "cordova-plugin-camera" for android Plugin dependency "cordova-plugin-compat@1.1.0" already fetched, using that version. Dependent plugin "cordova-plugin-compat" already installed on android. [...] BUILD SUCCESSFUL Error during processing of action! Attempting to revert... Failed to install 'cordova-plugin-camera': Error at copyNewFile (C:\\[...]\\platforms\\android\\cordova\\lib\\pluginHandlers.js:248:15) at install (C:\\[...]\\platforms\\android\\cordova\\lib\\pluginHandlers.js:43:17) at ActionStack.process (C:\\[...]\\platforms\\android\\cordova\\node_modules\\cordova-common\\src\\ActionStack.js:56:25) at PluginManager.doOperation (C:\\[...]\\platforms\\android\\cordova\\node_modules\\cordova-common\\src\\PluginManager.js:117:20) at PluginManager.addPlugin (C:\\[...]\\platforms\\android\\cordova\\node_modules\\cordova-common\\src\\PluginManager.js:147:17) at C:\\[...]\\platforms\\android\\cordova\\Api.js:254:18 at _fulfilled (C:\\[...]\\platforms\\android\\cordova\\node_modules\\q\\q.js:854:54) at self.promiseDispatch.done (C:\\[...]\\platforms\\android\\cordova\\node_modules\\q\\q.js:883:30) at Promise.promise.promiseDispatch (C:\\[...]\\platforms\\android\\cordova\\node_modules\\q\\q.js:816:13) at C:\\[...]\\platforms\\android\\cordova\\node_modules\\q\\q.js:624:44 Error: Uh oh! "C:\\[...]\\platforms\\android\\res\\xml\\provider_paths.xml" already exists!
因此,然后,我继续执行在其他线程中看到的有关相机插件问题的步骤:
所以我加回平台:
ionic cordova platform add android
和BOOM:
> cordova platform add android --save × Running command - failed! [ERROR] Exception: Using cordova-fetch for cordova-android@~6.2.2 Adding android project... Creating Cordova project for the Android platform: Path: platforms\\android Package: com.app.app Name: app Activity: MainActivity Android target: android-25 Subproject Path: CordovaLib Android project created with cordova-android@6.2.3 Installing "com-darryncampbell-cordova-plugin-intent" for android Subproject Path: CordovaLib Installing "cordova-plugin-camera" for android Plugin dependency "cordova-plugin-compat@1.1.0" already fetched, using that version. Installing "cordova-plugin-compat" for android Error during processing of action! Attempting to revert... Failed to install 'cordova-plugin-camera': Error at copyNewFile (C:\\[...]\\platforms\\android\\cordova\\lib\\pluginHandlers.js:248:15) at install (C:\\[...]\\platforms\\android\\cordova\\lib\\pluginHandlers.js:43:17) at ActionStack.process (C:\\[...]\\platforms\\android\\cordova\\node_modules\\cordova-common\\src\\ActionStack.js:56:25) at PluginManager.doOperation (C:\\[...]\\platforms\\android\\cordova\\node_modules\\cordova-common\\src\\PluginManager.js:117:20) at PluginManager.addPlugin (C:\\[...]\\platforms\\android\\cordova\\node_modules\\cordova-common\\src\\PluginManager.js:147:17) at C:\\[...]\\platforms\\android\\cordova\\Api.js:254:18 at _fulfilled (C:\\[...]\\platforms\\android\\cordova\\node_modules\\q\\q.js:854:54) at self.promiseDispatch.done (C:\\[...]\\platforms\\android\\cordova\\node_modules\\q\\q.js:883:30) at Promise.promise.promiseDispatch (C:\\[...]\\platforms\\android\\cordova\\node_modules\\q\\q.js:816:13) at C:\\[...]\\platforms\\android\\cordova\\node_modules\\q\\q.js:570:49 Error: Uh oh! "C:\\[...]\\platforms\\android\\res\\xml\\provider_paths.xml" already exists!
最后一步,我已经运行npm install -g cordova ionic
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
C:\Users\[...]\AppData\Roaming\npm\ionic -> C:\Users\[...]\AppData\Roaming\npm\node_modules\ionic\bin\ionic
C:\Users\[...]\AppData\Roaming\npm\cordova -> C:\Users\[...]\AppData\Roaming\npm\node_modules\cordova\bin\cordova
+ ionic@3.9.2
+ cordova@7.0.1
added 5 packages, removed 6 packages and updated 42 packages in 55.193s
和ionic cordova platform add android
再次ionic cordova platform add android
,但现在它告诉我:
> cordova platform add android --save
× Running command - failed!
[WARN] Platform already added. Saving platforms to config.xml.
> cordova platform save
√ Running command - done!
如果我尝试ionic cordova run android
:
> cordova platform add android --save
× Running command - failed!
[WARN] Platform already added. Saving platforms to config.xml.
> cordova platform save
√ Running command - done!
[INFO] Running app-scripts build: --platform android --target cordova
[...]
> ionic cordova prepare
[WARN] No Cordova platforms listed in config.xml. Nothing to prepare.
You can save your installed platforms to config.xml with the ionic cordova platform save command.
ionic cordova platform save
命令不会改变任何事情。
--------开始编辑--------然后,我尝试创建一个全新的项目,并一个接一个地添加插件,从一个摄像头开始,并在每次插入后在我的设备上重建/运行在安装中...直到最后一个都可以正常工作,最后一个是Web意图插件,我遇到了与以前相同的问题:
Error: Uh oh!
"C:\[...]\newApp\platforms\android\res\xml\provider_paths.xml" already exists!
卸载,删除并重新添加平台,然后再次构建,编译并在设备上运行。
--------结束编辑--------
这是我拥有的所有插件的列表:
com-darryncampbell-cordova-plugin-intent 0.0.14 "Intent Shim"
cordova-plugin-camera 2.4.1 "Camera"
cordova-plugin-compat 1.1.0 "Compat"
cordova-plugin-console 1.0.5 "Console"
cordova-plugin-device 1.1.4 "Device"
cordova-plugin-facebook4 1.9.1 "Facebook Connect"
cordova-plugin-file 4.3.3 "File"
cordova-plugin-file-transfer 1.6.3 "File Transfer"
cordova-plugin-photo-library 2.1.0 "Photo Library"
cordova-plugin-splashscreen 4.0.3 "Splashscreen"
cordova-plugin-2.2.2 "StatusBar"
cordova-plugin-whitelist 1.3.1 "Whitelist"
cordova-sqlite-storage 2.0.4 "Cordova sqlite storage plugin"
ionic-plugin-keyboard 2.2.1 "Keyboard"
不知道我是否需要降级Ionic或Cordova CLI,Ionic或Cordova平台或其他任何东西才能使此工作正常进行。
再次感谢您的帮助!
在ionic3中,您无需添加平台
您只需运行ionic cordova run android
它就会自动添加
据我所知,这也是错误的命令,他们没有这样的命令
cordova platform add android --save // wrong command
正确的那个
ionic cordova run android // right command directly add platform and run
提示:在Android Studio中打开android项目。 您可能会在那找到更有用的错误堆栈。
我遇到了同样的问题,发现由于config.xml中的以下行而无法读取清单。
<preference name="Orientation" value="all" />
离子键盘也发生了同样的事情,我在命令下运行
要删除插件,请运行代码:cordova plugin remove ionic-plugin-keyboard
之后,删除了android平台,然后再次添加。 它现在就像魅力一样运行:)希望它能对某人有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.