Поиск сообщества
Показаны результаты для тегов 'JIntent'.
Найдено: 7 результатов
-
Как правильно отправлять файлы через 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 ответа
-
- JIntent
- ACTION_SEND
-
(и ещё 1 )
C тегом:
-
JIntent Добавление изображения в системную галерею изображений
Brovin Yaroslav опубликовал вопрос в Галерея изображений
Чтобы добавить любое изображение в системную галерею изображений Андроида нужно: Получить универсальный URI к вашей картинке GetImageUri. Для этого сохраняем изображение (если изображение находится в памяти устройства, а не в файловой системе) в кэш приложения. Формируем намерение JIntent, что хотим добавить изображение. Задаем URI к картинке и делаем широковещательный запрос на все приложения, которые могут обработать наш запрос. // Сохранение изображения в кэш приложения и извлечение Url к этому файлу function GetImageUri(ABitmap: TBitmap): Jnet_Uri; var ImageFile: JFile; ImageUri: Jnet_Uri; FileNameTemp: JString; FileNameExt: JString; begin FileNameTemp := StringToJString('temp'); FileNameExt := StringToJString('.jpg'); try ImageFile := TJFile.JavaClass.createTempFile(FileNameTemp, FileNameExt); ImageUri := TJnet_Uri.JavaClass.fromFile(ImageFile); ABitmap.SaveToFile(JStringToString(ImageFile.getAbsolutePath)); finally Result := ImageUri; end; end; procedure AddPhotoToGallery(const APhoto: TBitmap); var Intent: JIntent; begin Intent := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_MEDIA_SCANNER_SCAN_FILE); Intent.setData(GetImageUri(APhoto)); SharedActivity.sendBroadcast(Intent); end; -
Хочу взять пример из этой темы: http://fire-monkey.ru/topic/1263-%D0%BE%D1%82%D0%BA%D1%80%D1%8B%D1%82%D0%B8%D0%B5-%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F-%D0%B8%D0%B7-image-%D0%B2-%D0%B3%D0%B0%D0%BB%D0%B5%D1%80%D0%B5%D0%B5/ Но среда ругается на JIntent. Нажимаю Ctrl+Shift+A - пустота. Нажимаю F1 на Jintent - справка ничего не выдает. Смотрю пример из справки http://docwiki.embarcadero.com/CodeExamples/Berlin/en/FMX.Android_Intents_Sample Там тоже нет информации, что нужно подключить в USES. Ок, открыл сам пример из папки "C:\Users\Public\Documents\Embarcadero\Studio\18.0\Samples\Object Pascal\Mobile Snippets\AndroidIntents\ReceiveIntent" Среда подсказывает, что JInten живет в Androidapi.JNI.GraphicsContentViewText. Добавляю в свой модуль в USES Androidapi.JNI.GraphicsContentViewText, но мне среда выдает ошибку "Can not resolve Androidapi.JNI.GraphicsContentViewText"
-
Хочу попробовать прикрутить к проекту для дроида googl-овское распознавание голоса. Нашёл пример реализации этой функции вот тут или тут. Помогите перевести на XE5 FM, вот этот кусок: package com.genisoft.inforino; import java.util.List; import android.app.Activity; import android.app.AlertDialog; import android.app.Dialog; import android.content.DialogInterface; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.net.Uri; import android.speech.RecognizerIntent; public class SpeechRecognitionHelper { public static void run(Activity ownerActivity) { startRecognitionActivity(ownerActivity); } } private static void startRecognitionActivity(Activity ownerActivity) { Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH); intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Голосовой поиск Inforino"); intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_WEB_SEARCH); intent.putExtra(RecognizerIntent.EXTRA_MAX_RESULTS, 1); intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "ru-RU"); ownerActivity.startActivityForResult(intent, SystemData.VOICE_RECOGNITION_REQUEST_CODE); }
- 3 ответа
-
- android.speech
- JIntent
-
(и ещё 1 )
C тегом:
-
JIntent Как правильно запустить видео в плеере из своей программы?
Kitty опубликовал вопрос в Видео плеер
На планшете c Андроид 4.4.2 установлены root права. Из андроид маркета установлен MX плеер. В плеере установлена настройка, что он открывает на постоянной основе файлы mp4. Я пытаюсь из своей программы запустить на выполнение файл mp4. Для примера помещаю нужный мне файл mp4 в папку download. Код такой: //C++ Builder XE6 String VideoFileName = System::Ioutils::TPath::Combine(System::Ioutils::TPath::GetSharedDownloadsPath(), "file1.mp4"); if(FileExists(VideoFileName)) { system(("open " + AnsiString(VideoFileName)).c_str());//ничего не происходит ShowMessage(VideoFileName);// /mnt/internal_sd/Download/file1.mp4 } else { //сюда не попадаем ShowMessage(L"Не найден видео файл " + VideoFileName + L". Программа будет закрыта."); Application->Terminate(); } Ничего не происходит. Видео не воспроизводится. Как правильно? -
TWebBrowser [Android] Открытие HTML страницы в браузере по умолчанию
la_coste опубликовал вопрос в Web-Браузер
Доброго времени суток, в процессе изучения Delphi XE5 возник такой вопрос: Возможно ли открыть к примеру HTML страницу из файловой системы устройства в браузере по умолчанию?? Заранее спасибо)