javascript - Cordova iOS 相机插件返回空的 snapshop
<p><p>我有一个简单的基于 Cordova 的 APP,我正在使用相机和文件插件。
我拍照,在 Canvas 上绘画,用户可以添加一些图像并保存图像。</p>
<p>在 android 上一切正常,但在 iOS 上,我将其空白且无法在 Canvas 上绘制的图片,在 XCode 控制台上我收到:</p>
<blockquote>
<p>Snapshotting a view that has not been rendered results in an empty
snapshot. Ensure your view has been rendered at least once before
snapshotting or snapshot after screen updates.</p>
</blockquote>
<p>我的相机代码是:</p>
<pre><code> navigator.camera.getPicture(
function(imageData) {
bgSrc = 'data:image/png;base64,' + imageData;
bgImg.setAttribute('src', bgSrc);
app.drawEditor(bgImg);
},
function(message) {
alert('Failed because: ' + message);
app.addClass('Home');
app.drawMenu();
}, {
quality: 50,
correctOrientation: true,
destinationType: Camera.DestinationType.DATA_URL,
sourceType: Camera.PictureSourceType.CAMERA,
encodingType: Camera.EncodingType.JPEG,
targetWidth: 720,
saveToPhotoAlbum: false
});
</code></pre>
<p><strong>注意</strong>:我使用的是最新版本的 cordova 和来自 github 的最新版本的相机插件。</p>
<p>有人知道如何解决这个问题吗?</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>希望对您有所帮助:</p>
<pre><code> function captureProfilePhoto(exec)
{
alert("captureProfilePhoto");
//alert("check");
navigator.camera.getPicture(function(imageURI){
exec(imageURI);
}, function(message){
alert("No attachment added");
//alert(labels.get("VPCS_GLOBAL_FAILURE_REASON_"+language)+" : " + message);
exec(-1);
}, {
quality : 100,
destinationType: navigator.camera.FILE_URI,
sourceType : Camera.PictureSourceType.CAMERA,
encodingType: Camera.EncodingType.JPEG,
targetWidth:960,
targetHeight:640,
correctOrientation: true,
allowEdit : true,
popoverOptions: CameraPopoverOptions });
}
</code></pre>
<p>//用ID调用上述方法:</p>
<pre><code> $("#basicInfoCapturePhoto").click(function(){
captureProfilePhoto(function(imageURI){
if(imageURI != -1){
profileImageURI = imageURI;
});
}
});
</code></pre></p>
<p style="font-size: 20px;">关于javascript - Cordova iOS 相机插件返回空的 snapshop,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/31313774/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/31313774/
</a>
</p>
页:
[1]