Phonegap EmailComposer с вложением для iOS не работает

Я использую Cordova 2.2.0 для iOS. Я пытаюсь реализовать плагин Phonegap EmailComposerWithAttachments, и я могу Кажется, не получается прикрепить изображение к работе.

Я звоню:

window.plugins.emailComposer.showEmailComposerWithCallback(function(result){console.log(result);},"Look at this photo","Take a look at this:",[],[],[],true,[testPath]);

где testPath содержит путь к моему файлу PNG или JPG. например ../myImage.jpg

Преимущество: появляется редактор электронной почты. Я вижу свою тему, тело письма и т. д.

Плохо: я не вижу, чтобы моя фотография была прикреплена к сообщению. Вместо этого я вижу маленький вопросительный знак (в эмуляторе) и маленький квадрат (на моем iPad), как будто вложение отсутствует.

Есть идеи?


person xited    schedule 28.11.2012    source источник
comment
Я получаю Невозможно прочитать свойство «EmailComposer» из-за неопределенной ошибки. Также я разместил это в stackoverflow.com/questions/25696639/. Есть ли у вас какие-либо идеи. Пожалуйста, предоставьте свои комментарии. Спасибо   -  person Prathamesh Talathi    schedule 06.09.2014


Ответы (1)


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

Когда вы получаете путь к файлу, он выглядит так:

file:///localhost/var/mobile/Applications/2BED9D97-043A-402A-B914-83F4459E8A74/myApp.app/myPicture.jpg

Однако подключаемый модуль EmailComposerWithAttachments не ожидает, что путь будет начинаться с

"file:///localhost/"

Для того, чтобы плагин заработал, нужно изменить его путь, убрав все до var (file:///localhost/). Итак, правильный путь будет выглядеть так:

var/mobile/Applications/2BED9D97-043A-402A-B914-83F4459E8A74/myApp.app/myPicture.jpg  

Тогда это сработало. Я смог использовать этот плагин для отправки электронных писем с вложениями изображений.

person xited    schedule 01.12.2012
comment
Я не думаю, что это сработает. Во-первых, приложение, потому что оно не будет кросс-платформенным (конкретный путь для iOS), а во-вторых, потому что полный сгенерированный путь включает ссылку на само приложение. Попробуйте удалить приложение с устройства или эмулятора и снова запустить его. Картинка не получится. - person Joshua Dance; 03.09.2014