gpt4 book ai didi

cordova - navigator.camera.getPicture 回调直到第二次调用才会执行

转载 作者:行者123 更新时间:2023-12-02 01:56:17 25 4
gpt4 key购买 nike

我有一个运行 cordova 3.1.0 的 phonegap (cordova) 应用程序,当我打电话时

navigator.camera.getPicture(success,fail,options)

选项为

var options={ 
destinationType: navigator.camera.DestinationType.FILE_URI,
sourceType: navigator.camera.PictureSourceType.SAVEDPHOTOALBUM,
encodingType: navigator.camera.EncodingType.JPEG,
mediaType: navigator.camera.MediaType.Picture
}

用户选择照片后不会调用成功回调。

如果我再打电话

navigator.camera.getPicture(success,fail,options)

同样,使用第一步中选择的照片调用第一个 getPicture 的成功回调。

我在 CameraLauncher.java(从第 395 行开始)四处寻找,它似乎调用了

this.callbackContext.success(uri.toString());

onActivtyResult 但这似乎直到下一次 getPicture() 调用才会传回。

还有其他人遇到过这个吗?

进一步挖掘表明,从相机调用 getPicture 时也会发生同样的事情。

我想知道是不是因为当摄像头事件结束时,webview 还没有恢复,所以回调无处可去 - 但这充其量只是疯狂的猜测。

24 小时后,更新到 Cordova 3.1.0.jar 并将 3.1 jar 直接放入现有 3.0 项目似乎解决了这个问题。

最佳答案

所以,发生的事情是,在 Android 上,第二次请求 getPicture 只会触发 getPicture 的回调。

这是通过更新我的 cordova 安装解决的,创建一个空的 android 项目,然后将/platforms/android/libs/cordova-3.1.0.jar 从它复制到我现有项目的/platforms/android/libs 中,然后删除 cordova-3.0.0.jar

希望这能为某人节省一到三个小时...

关于cordova - navigator.camera.getPicture 回调直到第二次调用才会执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19809164/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com