2014-09-23 2 views

ответ

0

Этот плагин PhoneGap должен помочь вам:

cordova-screenshot

https://github.com/gitawego/cordova-screenshot

Использование:

navigator.screenshot.save(function(error,res){ 
    if(error){ 
    console.error(error); 
    }else{ 
    console.log('ok',res.filePath); 
    } 
}); 
+0

Как это работает в iOS? Где приложение не имеет доступа к фотографиям? – blez

2

cordova screenshot plugin поможет вам, если вы хотите сделать снимок экрана в главном окне. Снимок экрана будет сохранен в хранилище приложений, поэтому вам не потребуется доступ к галерее устройств.

Но если вы используете InAppBrowser Plugin, чтобы открыть новое окно, как этот

var ref = window.open('http://www.yoursubwindow.com', '_blank') 

, то вы не сможете сделать скриншот ref.

Причина: ref не обычное окно браузера Javascript но InAppBrowser объект с ограниченным доступом к окну браузера. В частности, у вас не будет доступа к объекту Javascript window.navigator, который используется в плагине скриншотов cordova, чтобы сделать снимок экрана.

Поэтому, если вы сделаете скриншот с window.navigator.screenshot.save(...), он всегда будет снимать снимок экрана под основным окном (главное окно), но никогда не будет ref.

ref.navigator.screenshot.save(...) приведет к ошибке javascript, так как ref.navigator не определен.

Я сейчас сам работаю над этой проблемой, но пока не понял решение. Поэтому, если вы его найдете, дайте мне знать!

+0

Вы пытаетесь сделать это в приложении разработчика или развернуты на своем устройстве? – blez

+0

Я развернул его на iPad Air. – BHulliger

+0

В основном плагин не работает для iOS – blez

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