2015-07-10 1 views
1

Я знаю, что Ionic Framework официально не поддерживает Windows Phone, однако я нахожусь там на 90%.Как я могу отобразить изображение, записанное на телефоне Windows при использовании Ionic Framework?

Моя проблема заключается в том, что, когда я беру картинку Ури я вернусь в следующем формате:

///CapturedImagesCache/WP_20150710_007.jpg 

Однако, когда я пытаюсь использовать это в <ion-slide-box>, который содержит <img>, я просто получить белый значок страницы в верхнем углу (iOS и Android работают отлично). Изображение не отображается. Кто-нибудь еще смог отобразить захваченное изображение в Windows Phone?

ответ

0

Наконец работал, почему я не мог видеть, образ. Возвращаемое URI имело формат: ///CapturedImagesCache/WP_20150710_007.jpg

Когда я установил предупреждение на <img onerror="alert(this.src);">, я обнаружил, что src имеет префикс unsafe:. Я имел добавил imgSrcSanitizationWhitelist к модулю контроллера, однако это было не место, то теперь в моей основной app.js до моего .run раздела:

.config(function($compileProvider){ 
    $compileProvider.imgSrcSanitizationWhitelist(/^\s*(https?|ftp|file|ms-appx|x-wmapp0):|data:image\//); 
} 

Это регулярное выражение позволило img.src иметь тот путь, который получал замещенный.

2

Предполагая, что вы используете плагин камеры Cordova, я бы попытался использовать изображение с кодировкой base64 вместо ссылки на файловую систему.

Camera.DestinationType.DATA_URL 

Кроме того, если вы не сделали этого, я предлагаю попробовать ngCordova: http://ngcordova.com/docs/plugins/camera/

Из их примера:

$cordovaCamera.getPicture(options).then(function(imageData) { 
    var image = document.getElementById('myImage'); 
    image.src = "data:image/jpeg;base64," + imageData; 
}, function(err) { 
    // error callback 
}); 
+0

Спасибо за ваш ответ, однако я начал приложение с использованием кодированных данных Base64 и вызвал серьезные проблемы с производительностью. В конце концов, я нашел идеальное решение для меня, но я уверен, что вы тоже правы. –

Смежные вопросы