
yooSee
Пользователи-
Постов
33 -
Зарегистрирован
-
Посещение
-
Победитель дней
1
yooSee стал победителем дня 7 февраля 2019
yooSee имел наиболее популярный контент!
Посетители профиля
Блок последних пользователей отключён и не показывается другим пользователям.
Достижения yooSee
-
Привет форумчане, вопрос стоит в следующем. На телефоне создается zip архив и его нужно передать через мессенджер "WhatsApp" используя намерения делфи. как было раньше до Api 26 var Intent: JIntent; begin Intent := TJIntent.Create; Intent.setAction(TJIntent.JavaClass.ACTION_SEND); Intent.setDataAndType (StrToJURI('file:' + TPath.Combine(TPath.GetPublicPath, Form1.Label1.Text + '.zip')), StringToJString('*/zip')); SharedActivity.startActivity(Intent); сейчас нужно использовать FileProvider и я сделал следующее: В манифесте проекта прописано - <provider android:name="android.support.v4.content.FileProvider" android:authorities="%package%.provider" //здесь мой пакет android:exported="false" android:grantUriPermissions="true"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/fileprovider" /> </provider> fileprovider.xml создан и добавлен в проект с содержимым <?xml version="1.0" encoding="utf-8"?> <paths xmlns:android="http://schemas.android.com/apk/res/android"> <external-path name="external_files" path="."/> </paths> Uri URI = FileProvider.getUriForFile(context, context.getApplicationContext().getPackageName() + ".my.package.name.provider", createFile()); в данный момент не пойму как преобразовать данную строку в запрос Intent? Intent.setDataAndType .... ? Где описывается FileProvider ? что в URI?
-
Dev отреагировал на вопрос: Runtime permissions in Delphi 10.3 Rio
-
Благодарю!
- 4 ответа
-
- delphi rio
- 2019
-
(и ещё 2 )
C тегом:
-
Спасибо за дополнение!
- 4 ответа
-
- delphi rio
- 2019
-
(и ещё 2 )
C тегом:
-
Alex7wrt отреагировал на вопрос: Runtime permissions in Delphi 10.3 Rio
-
Евгений Корепов отреагировал на вопрос: Runtime permissions in Delphi 10.3 Rio
-
Sergionn отреагировал на вопрос: Runtime permissions in Delphi 10.3 Rio
-
yooSee отреагировал на сообщение в теме: [RX] [FGX] Описание версии 0.7.1.118
-
Barbanel отреагировал на вопрос: Runtime permissions in Delphi 10.3 Rio
-
#WAMACO отреагировал на вопрос: Runtime permissions in Delphi 10.3 Rio
-
Brovin Yaroslav отреагировал на вопрос: Runtime permissions in Delphi 10.3 Rio
-
Ingalime отреагировал на вопрос: Runtime permissions in Delphi 10.3 Rio
-
brunnengi отреагировал на вопрос: Runtime permissions in Delphi 10.3 Rio
-
Всем привет, вот и я решил внести свою лепту в жизнь форума и сегодня мы разберемся с разрешениями на Delphi Rio под Андроид. Для примера мы будем использовать разрешения на чтение и запись с памяти устройства, для начала в нашем проекте выставим в Delphi>Project>Application>Uses Permissions галочки на Read External Storage и Write External Storage. в uses проекта добавьте следующее uses System.Permissions, Androidapi.Jni.Os, Androidapi.Helpers, далее создадим переменные var Form: TForm; .... FPermissionWrite: string; FPermissionRead: string; в Form.Create добавим следующий код procedure TForm.FormCreate(Sender: TObject); begin FPermissionWrite := JStringToString(TJManifest_permission.JavaClass.WRITE_EXTERNAL_STORAGE); //Значение на запись FPermissionRead := JStringToString(TJManifest_permission.JavaClass.READ_EXTERNAL_STORAGE); //Значение на чтение end; и теперь сам не посредственно запрос на подтверждение наших прав procedure TForm.Button1Click(Sender: TObject); begin PermissionsService.RequestPermissions ([FPermissionWrite, FPermissionRead], nil); end; //это вызовет окно с запросом разрешения прав ну и для проверки бросим на форму TMemo и пару TButton , в них реализуем сохранение и чтение из файла с памяти устройства procedure TForm.Button1Click(Sender: TObject); begin Memo1.Lines.LoadFromFile(TPath.Combine(TPath.GetSharedDocumentsPath, 'test.txt')); end; procedure TForm.Button2Click(Sender: TObject); begin Memo1.Lines.SaveToFile(TPath.Combine(TPath.GetSharedDocumentsPath, 'test.txt')); end; P.S. Напоминаю что для работы TPath нам понадобится подключить в Uses uses System.system.ioutils; Надеюсь материал будет полезен! video_2019-02-08_00-11-36.mp4 Permissions.zip
- 4 ответа
-
- delphi rio
- 2019
-
(и ещё 2 )
C тегом:
-
помогло, спасибо! honor 8 - Android 8.0
-
Rusland отреагировал на ответ на вопрос: Несколько пушей в одном уведомлении
-
Привет Всем уважаемые! Пытаюсь сделать растягивание по содержимому компонента. Как это реализовано в мессенджерах типа WhatsApp если большой текст то растягивает (выделяется) по содержимому большое поле, если короткий то малое. Text2.Text := Memo1.Lines.Strings[4]; text2.Height := canvas.TextHeight(Text2.Text); //по высоте строки меняется т.к. там и есть одна строка в TText просто переносится WordWrap визуально. text2.Height:=canvas.TextWidth(text2.Text); // - так чушь Как это вообще реализовано кто нибудь сталкивался?
-
дополню при нажатии на строку картинка появляется. как будто обновляется TThread.Synchronize(TThread.CurrentThread, procedure var ICount: Integer; AItem: TksTableViewItem; i: Integer; begin Memo1.Text := AResult; ksTableView1.BeginUpdate; application.ProcessMessages; try for i := 0 to Memo1.Lines.Count - 1 do begin AItem := ksTableView1.Items.AddItem('Новая строка', Memo1.Lines.Strings, 'Подробнее', atMore); AItem.Image.Bitmap.LoadFromUrl(Memo1.Lines.Strings); end; finally ksTableView1.EndUpdate; end; в таком варианте почему о не обновляется
-
begin AItem := ksTableView1.Items.AddItem('Новая строка', Memo1.Lines.Strings, 'Подробнее', atMore); AItem.Image.Bitmap.LoadFromUrl(Memo1.Lines.Strings); end; ksTableView1.EndUpdate; end) так создаются и грузятся но первый список если нажать без картинок. нажимаю второй раз загружаются в старый список (уже созданный картинки) в новом нету и так далее
-
Привет ребят! Помогите кто знает, попытаюсь доходчиво объяснить - имеется набор компонентов KernowSoftwareFMX - в нем использую TksTableView для вывода данных с Tmemo, в нем так же есть Image. В Tmemo с сервера грузится файл txt внутри которого строки с ссылками на изображения вида http://бла-бла/1.png Для загрузки использую FMX.Features.Bitmap.Helpers.pas - позволяет по прямой ссылке загружать изображение в TImage. что пытаюсь сделать? Нужно наполнять список TksTableView с Memo содержащий ссылки и в строках TksTableView - они же ListItem тоже самое что в ListView и загружать в image каждой строки картинки по ссылкам memo. AItem.Image.Bitmap := Image4.MultiResBitmap.Bitmaps[1].LoadFromUrl(Memo1.Lines.Strings[i]); - так ругается [DCC Error] untMain.pas(92): E2010 Incompatible types: 'TBitmap' and 'procedure, untyped pointer or untyped parameter' AItem.Image.Bitmap := Image4.Bitmap.LoadFromUrl(Memo1.Lines.Strings[i]); - так тожн не работает Глюк в том что первым делом создаются строки . а потом грузятся по очереди картинки в Image4. Как заставить подгружать картинки в TksTableView? Как ожидать хавершения загрузки каждой картинки в Image4 и после создавать AItem.Image.Bitmap?