Javascript Android应用程序在保存相机和旋转手机拍摄的图像时死亡
[编辑] 实际上,我解决了这个问题,在我的活动清单中添加了以下行:Javascript Android应用程序在保存相机和旋转手机拍摄的图像时死亡,javascript,android,cordova,jquery-mobile,android-camera,Javascript,Android,Cordova,Jquery Mobile,Android Camera,[编辑] 实际上,我解决了这个问题,在我的活动清单中添加了以下行: android:configChanges="orientation|keyboardHidden" 我试图用phonegap保存我的android手机拍摄的图像,但是80%的时候我按下保存按钮,拍照后,我的应用程序就死掉了 我发现这是phonegap+android的一个常见问题。我已经尝试过降低图像质量,清理手机内存,删除应用程序的缓存目录。。。到目前为止还没什么,我仍然有这种随机行为 我尝试过使用imageData和im
android:configChanges="orientation|keyboardHidden"
我试图用phonegap保存我的android手机拍摄的图像,但是80%的时候我按下保存按钮,拍照后,我的应用程序就死掉了
我发现这是phonegap+android的一个常见问题。我已经尝试过降低图像质量,清理手机内存,删除应用程序的缓存目录。。。到目前为止还没什么,我仍然有这种随机行为
我尝试过使用imageData和imageURI,但仍然出现错误
需要注意的是,每次我旋转手机时,我的应用程序都会死掉。有时,当我保存图像时,屏幕会自动旋转,这也会导致应用程序死机
这是我到目前为止的代码
// Called when a photo is successfully retrieved
//
function onPhotoURISuccess(imageURI) {
// Uncomment to view the image file URI
// console.log(imageURI);
$('#my_div') // this div belongs to my html markup (see bellow)
.empty()
.append(
$('<image>')
.attr('src', imageURI)
.attr('width', '100')
.attr('height', '100')
.css({
'background-color' : 'red',
'-webkit-border-radius': '15px',
'-moz-border-radius': '15px',
'border-radius': '15px'
})
);
}
// A button will call this function
//
function getPhoto(source) {
// Retrieve image file location from specified source
navigator.camera.getPicture(
function (imageUri) {
onPhotoURISuccess(imageUri, photo_div_id);
},
onFail, {
quality: 30,
destinationType: Camera.DestinationType.FILE_URI,
sourceType: source
}
);
}
<div id="my_div" class= "iconP">
<input type="button" name="photo_1" id="photo_1" onclick ="getPhoto()" value="photo 1"/>
</div>
//成功检索照片时调用
//
函数onPhotoURISuccess(imageURI){
//取消注释以查看图像文件URI
//log(imageURI);
$('#my_div')//此div属于我的html标记(请参见下文)
.empty()
.附加(
$('')
.attr('src',imageURI)
.attr('width','100')
.attr('height','100')
.css({
“背景色”:“红色”,
“-webkit边界半径”:“15px”,
“-moz边界半径”:“15px”,
“边界半径”:“15px”
})
);
}
//一个按钮将调用此函数
//
函数getPhoto(源代码){
//从指定源检索图像文件位置
navigator.camera.getPicture(
函数(imageUri){
onPhotoURISuccess(imageUri,photo\u div\u id);
},
一旦失败{
质量:30,
destinationType:Camera.destinationType.FILE\u URI,
sourceType:source
}
);
}
您需要在mainfest中添加更多内容,否则您将再次遇到此问题。添加以下内容:android:configChanges=“orientation | keyboardHidden | keyboard | screenSize | locale”
您需要在mainfest中添加更多内容,否则您将再次遇到此问题。添加以下内容:android:configChanges=“方向|键盘隐藏|键盘|屏幕大小|区域设置”
如果您得到的答案没有帮助,您应该检查您的日志并告诉我们错误是什么。如果是位图超过VM预算类型错误,这是一种问题,如果是权限问题,则完全不同。如果您得到的答案没有帮助,您应该检查您的日志,并让我们知道错误是什么。如果位图超过VM预算类型错误,这是一种问题,如果是权限问题,则完全不同。这是phonegap建议添加的行,但是,如果添加完整字符串,我的应用程序将不会启动,这就是为什么我必须删除最后三个名称。不管怎样,+1表示帮助:)我仍然建议你接受他的答案是正确的,因为它帮助了你。。。因为在过去3年中没有人回答。这是phonegap建议添加的行,但是,如果我添加完整的字符串,我的应用程序将不会启动,这就是为什么我必须删除最后三个名称。不管怎样,+1表示帮助:)我仍然建议你接受他的答案是正确的,因为它帮助了你。。。因为在过去的三年里没有人回答。