PhoneGap getPicture回调在Backbone.js视图中延迟触发

时间:2013-10-21 05:57:32

标签: javascript android jquery backbone.js cordova

我正在尝试使用getPicture()来允许用户在单击Backbone视图中的按钮时选择照片/视频。这是我的视图代码中的相关部分:

    events: {
        "click .add-moment-media": "addMedia",
    },

    addMedia: function(e) {
        navigator.camera.getPicture(this.successAddMedia, this.errorAddMedia, { 
            quality: 20,
            destinationType: Camera.DestinationType.FILE_URI,
            sourceType: Camera.PictureSourceType.PHOTOLIBRARY,
            mediaType: Camera.MediaType.ALLMEDIA  
        })
    },

    successAddMedia: function(imageURI) {
        showAlert("Your photo has been uploaded!", "Your Photo"  + imageURI);
    },

    errorAddMedia: function(message) {
        showAlert("Failed because: " + message, "Failure");
    }

出于测试目的,我只是尝试在成功时显示带有图像URI的警报。

问题:当我按下按钮时,图库按预期显示,我可以选择图片。当我返回应用程序时,没有警报 - 没有成功警报,没有错误警报。但是,如果我再次单击该按钮,则会显示应该出现上次的警报,并且照片库会显示在其上方。好像getPicture()回调在下次按下按钮之前不想触发。

以下是踢球者:在我的应用的其他地方,我getPicture()像魅力一样工作(除了它使用PictureSourceType.CAMERA而不是PictureSourceType.PHOTOLIBRARY,并且该线不在Backbone视图中)回调在正确的时间触发。如果我在此视图中复制并粘贴代码的工作行,则回调会像上面的代码一样延迟。

这是在Android上发生的。我不确定PhoneGap和Backbone是否存在一些无证问题 - 如果有人对可能出现的问题有任何想法,我会感激不尽!

0 个答案:

没有答案