Итак, у меня было приложение для iOS до iOS6/iPhone5. Это сработало хорошо. В настоящее время я пытаюсь исправить это для iPhone5 и ios6. Все шло хорошо, и я устранил 99% ошибок для ios6, и, похоже, это работает. Однако iPhone 5 ведет себя темпераментно.
Я использую PhoneGap 1.8.1. В какой-то момент я делаю снимок камерой, используя эту функцию:
function capturePhoto() {
networkState = navigator.network.connection.type;
if (networkState == Connection.NONE)
{
alert('You must be connected to the internet to use this feature!');
}else{
var options = {
quality: 100,
correctOrientation: false,
destinationType : navigator.camera.DestinationType.FILE_URI,
sourceType: navigator.camera.PictureSourceType.CAMERA,
encodingType: navigator.camera.EncodingType.JPEG,
}
navigator.camera.getPicture(onPhotoDataSuccess, onFail, options);
}
}
Затем я отображаю изображение в качестве фона на холсте HTML. Используя кинетический JS, но для решения этой проблемы я думаю, что все, что вам нужно знать, это:
var canvaswidth = window.innerWidth;
var canvasheight = window.innerHeight;
var darthVaderImg = new Kinetic.Image({
x: 0,
y: 0,
image: images.darthVader,
width: canvaswidth,
height: canvasheight,
name: "image"
});
Это работает на iphone 4s ios 6, работает нормально, на android работает нормально... а на iPhone 5 - нет. Изображение имеет правильную ориентацию, но оно сжимается в верхней части, я попытался жестко запрограммировать его на размер экрана iPhone 5 .... который, как я полагаю, составляет 640x1136?
Все еще не повезло, если я преувеличиваю и устанавливаю высоту изображения, например, 2000, оно действительно закрывает экран, но увеличивается. Я немного потерялся в том, что происходит .... у кого-то была похожая проблема или какие-либо идеи ?