- 0
Отправка файлов через намерение
-
Похожий контент
-
- 1 ответ
- 1 522 просмотра
-
Как сделать свой активити, для получения файла из другого приложения по намерению ACTION_SEND
От zonik,
- 3 ответа
- 2 022 просмотра
-
RecognizerIntent Вызов распознавателя голоса. Помогите перевести Java код на Delphi
От abwabw,
- android.speech
- JIntent
- (и ещё 1 )
- 3 ответа
- 6 259 просмотров
-
- 3 ответа
- 4 409 просмотров
-
- 23 ответа
- 9 090 просмотров
-
- 1 ответ
- 2 588 просмотров
-
- 9 ответов
- 18 466 просмотров
-
-
Последние посетители 0 пользователей онлайн
- Ни одного зарегистрированного пользователя не просматривает данную страницу
Вопрос
Tovenar
Как правильно отправлять файлы через ACTION_SEND. То что пробовал и не смог заставить работать:
uses System.IOUtils, FMX.Helpers.Android,Androidapi.JNI.JavaTypes, Androidapi.Helpers, Androidapi.JNI.GraphicsContentViewText; procedure TMain.SendFileClick(Sender: TObject); var Intent: JIntent; begin Intent := TJIntent.Create; Intent.setAction(TJIntent.JavaClass.ACTION_SEND); Intent.setDataAndType(StrToJURI('file:' + TPath.Combine(TPath.GetSharedDownloadsPath, 'picture.png')), StringToJString ('image/png')); SharedActivity.startActivity(Intent); end;или
var Intent: JIntent; begin Intent := TJIntent.Create; Intent.setAction(TJIntent.JavaClass.ACTION_SEND); Intent.setType(StringToJString('image/png')); Intent.putExtra(TJIntent.JavaClass.EXTRA_STREAM , StringToJString('file:mnt/sdcard/pictures/1.png')); SharedActivity.startActivity(Intent);При чем с открытием(ACTION_VIEW) все в порядке:
var FileName, ExtFile: string; mime: JMimeTypeMap; ExtToMime: JString; Intent: JIntent; pathN:string; begin FileName := Item.ItemData.Detail; try ExtFile := AnsiLowerCase(StringReplace(TPath.GetExtension(FileName), '.', '',[])); mime := TJMimeTypeMap.JavaClass.getSingleton(); ExtToMime := mime.getMimeTypeFromExtension(StringToJString(ExtFile)); Intent := TJIntent.Create; Intent.setAction(TJIntent.JavaClass.ACTION_VIEW); Intent.setDataAndType(StrToJURI('file:' + FileName), ExtToMime); SharedActivity.startActivity(Intent); except ShowMessage('Невозможно открыть файл!'); end end;Хоть в моих примерах я и пытаюсь передать изображение (я в курсе, что в ActionList есть стандартное действие для отправки изображений), в итоге код будет использоваться для файлов любого типа.
Как победить?
23 ответа на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.