请帮帮我!我在ionic有一个项目,我安装了带电容的Imagepicker插件(https://ionicframework.com/docs/native/image-picker)。这个项目是我建的。我正在Android Studio的移动设备上进行仿真,我想要的是能够从设备库中选择图像,但当我单击select image按钮时,出现以下错误:
2020-04-08 23:10:11.126 14266-14405/io.ionic.starter V/Capacitor/Plugin: To native (Cordova plugin): callbackId: ImagePicker1627263557, service: ImagePicker, action: getPictures, actionArgs: [{"maximumImagesCount":1,"width":0,"height":0,"quality":50,"allow_video":false,"title":"Select an Album","message":null,"outputType":1,"disable_popover":false}]
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: java.lang.ClassNotFoundException: com.synconset.ImagePicker
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at java.lang.Class.classForName(Native Method)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at java.lang.Class.forName(Class.java:454)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at java.lang.Class.forName(Class.java:379)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at org.apache.cordova.PluginManager.instantiatePlugin(PluginManager.java:489)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at org.apache.cordova.PluginManager.getPlugin(PluginManager.java:169)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at org.apache.cordova.PluginManager.exec(PluginManager.java:122)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at com.getcapacitor.MessageHandler.callCordovaPluginMethod(MessageHandler.java:70)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at com.getcapacitor.MessageHandler.postMessage(MessageHandler.java:46)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at android.os.MessageQueue.nativePollOnce(Native Method)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at android.os.MessageQueue.next(MessageQueue.java:336)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at android.os.Looper.loop(Looper.java:174)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at android.os.HandlerThread.run(HandlerThread.java:67)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.synconset.ImagePicker" on path: DexPathList[[zip file "/data/app/io.ionic.starter-aXQ2v-R9ZXz3eZr4UBPlRQ==/base.apk"],nativeLibraryDirectories=[/data/app/io.ionic.starter-aXQ2v-R9ZXz3eZr4UBPlRQ==/lib/x86, /system/lib, /system/product/lib]]
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:196)
2020-04-08 23:10:11.127 14266-14405/io.ionic.starter W/System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
2020-04-08 23:10:11.128 14266-14405/io.ionic.starter W/System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
2020-04-08 23:10:11.128 14266-14405/io.ionic.starter W/System.err: ... 12 more
2020-04-08 23:10:11.128 14266-14405/io.ionic.starter I/System.out: Error adding plugin com.synconset.ImagePicker.
2020-04-08 23:10:11.128 14266-14405/io.ionic.starter E/Capacitor: Post message error:
java.lang.NullPointerException: Attempt to invoke virtual method 'void org.apache.cordova.CordovaPlugin.privateInitialize(java.lang.String, org.apache.cordova.CordovaInterface, org.apache.cordova.CordovaWebView, org.apache.cordova.CordovaPreferences)' on a null object reference
at org.apache.cordova.PluginManager.getPlugin(PluginManager.java:171)
at org.apache.cordova.PluginManager.exec(PluginManager.java:122)
at com.getcapacitor.MessageHandler.callCordovaPluginMethod(MessageHandler.java:70)
at com.getcapacitor.MessageHandler.postMessage(MessageHandler.java:46)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:336)
at android.os.Looper.loop(Looper.java:174)
at android.os.HandlerThread.run(HandlerThread.java:67)发布于 2020-04-09 14:31:42
这似乎是ImagePicker的一个已知问题-请参阅here。
一些解决方法似乎是:
从package.json中删除单行"com.synconset.imagepicker":"~2.1.8“。并且"com.synconset.imagepicker":{ "PHOTO_LIBRARY_USAGE_DESCRIPTION":“添加多张照片”}在执行如下命令时显示警告: cordova platform add android和cordova run android。
https://stackoverflow.com/questions/61114223
复制相似问题