2016-12-27 5 views
-1

Пользователь должен получить небольшой текстовый файл, созданный внутри приложения Titanium.Как подключить файл по электронной почте или сохранить его на внешнем устройстве в приложениях Titanium?

Я пытаюсь отправить электронное письмо с этим файлом в приложениях, но документация не помогает мне достичь этого.

Я использую Ti.Cloud.Emails для отправки электронных писем.

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

file = Titanium.Filesystem.getFile(Ti.Filesystem.applicationCacheDirectory,'file.csv'); 
    alert(file.resolve()); 
    file.write('any text\n'); 

Оповещение дает путь: файл ///data/user/0/com.myapp/cache/file.csv

Да, я пытался использовать Titanium.Filesystem.applicationDataDirectory

Тем не менее, я не могу найти файл. Кто-нибудь знает, где находится файл ?. Есть ли еще лучший способ предоставить пользователю файл?

Благодаря

ответ

1

Титановые документы довольно много говорит, как отправлять электронную почту и как добавлять вложения в него.

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

Вот пример кода для вас, чтобы отправить электронную почту с вложениями:

var text_data = 'This is your data to write inside the text file.' 

// you can either use applicationDataDirectory or tempDirectory 
var textFile = Ti.Filesystem.getFile(Ti.Filesystem.applicationDataDirectory, 'your_file.txt'); 
    textFile.write(text_data); 

var emailDialog = Ti.UI.createEmailDialog(); 

var msg = "This is the message written in the body of the email content.";  

emailDialog.subject = "Titanium Rocks!"; 
emailDialog.toRecipients = ['[email protected]']; 
emailDialog.messageBody = msg; 
emailDialog.addAttachment(textFile); 
emailDialog.open(); 
  • Теперь, если вы пытаетесь найти файл на устройстве с помощью любого проводника файлов, то вы не можете их найти эту потому что эти каталоги недоступны для публичных пользователей для просмотра или изменения (в противном случае я считаю, что любой может украсть данные любого приложения).
+0

Да, спасибо, можете ли вы рассказать мне, как использовать проводник файлов для поиска файла? Плюс, если text_data - это некоторые двоичные данные (например, некоторые xls) в textFile.write (text_data); будет создан xls в приложении? cheers – PedroTNascimento

+0

Вы не можете найти их, если не сохраните их во внешнем хранилище только на Android. Вы не можете создать какой-либо документ, просто предоставив им расширение .xls или .doc или .exe. Хахаха ... очевидно, вы не можете ... Вы можете создавать только простые текстовые файлы, такие как .txt или .json, а также изображения, которые являются просто блочными. Просто создайте файл с расширением .txt или .json или .jpg или .png и напишите в нем строковые или blob-данные. –

+0

Да, я знаю, что предоставление расширения не создает документ. Правильно, я сказал. Если text_data является двоичным и записывается в файл, будет создан двоичный файл. Вот и все? Нет способа создать двоичные файлы? – PedroTNascimento

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

  • Нет связанных вопросов^_^