Перейти к содержанию
Fire Monkey от А до Я

Активность

Лента обновляется автоматически

  1. Вчера
  2. Создал файл Delphi 10.4 , Release откомпилировал, начал загружать на rustore , ошибка "Это дебаг-сборка. Загрузите сборку для обычных пользователей" Вот фотки компиляции и загрузки, подскажите что не так?
  3. Добрый день. Играюсь с аминацией. TAnimator.AnimateFloatWait. В Винде красиво ездит. Под андроидом просто появляется в конечной точке. Думал, что может слишком быстро делает. Поставил задержки и несколько анимаций. Отображает только в конечной точке после паузы. То есть анимация полностью не работает. Поскольку никаких ошибок нет, то не знаю в какую сторону копать. Если бы я даже поставил какую-нибудь принудительную рисовку между анимациями, мне же нужна и чтобы одна анимация отображалась. А она в одну строку. Чего гуглить? пы.сы. поиском по форуму не нашел
  4. Подскажу очень изящное решение - я сам табы не люблю, потому делаю так - на отдельной форме в TLayout рисую форму. Потом даю ей родителя TLayout с главной формы. Ну и выезжание с анимацией. Очень удобно - всё локализонаво по формам, но управляется централизованно. Подробней писать лень, но если не понятно - объясню это я выходит на некропост ответил. Ну... пусть будет. может кто-то еще искать будет
  5. Последняя неделя
  6. На чем можно протестировать приложение написанное на андроиде fmx delphi 10.4 Что бы понять как будет выглядить на разных смартфонах, с разными экранами
  7. Насколько понял, кроме OBR им еще надо и их компонент камеры. Дороговато. А самое главное - работает подозрительно медленно И при любых попытках изменения настроек все виснет надолго
  8. Все встало нормально, компилируется все корректно. Разрядность винды конечно не имеет никакого значения. А вот на телефоне может стоять процессор с поддержкой инструкций для Android64, а версия операционки может стоять без нее. Это вполне обычное явление в наше время. Если конечно аппарат не топовый.
  9. вообще если процессор 64 то и операционка будет 64. отладка не идет в Windows. Из rad-студии только посылаются команды в GDB Server , который работает в программе на Андроид. и потом получается ответ разрядность Windows совершенно не влияет. В любом случае RAD-studio - 32-битная программа Самое главное, что меня насторожило в вашем посте - это конфиг для Android64 нормально встал?? в SDK Manager он есть вообще?
  10. Ну зачем так сразу? Для windows 32/64 отличный инструмент.
  11. Ещё раньше
  12. Я попробую, уже 3 день идет перебор... Причем отладка в node.js + react_native идет без проблем. И к тому же эмулятор спокойно и быстро работает. А тут что-то уже все это выбешивает. Готов признать RAD студию погремушкой для написания курсачей для студентов. Но если честно не совсем понял, если у меня процессор 64, а операционка 32, как я там запущу прогу на 64? скомпилированный apk для Android64 даже не деплоится.
  13. Операционка не участвует. Участвует телефон. Если он 64 битный,то отладку надо вести в приложении для 64 битного конфига. Не видя всех тотально настроек перебирать долго. Могу только сказать что отлаживался я и на сяоми и на хуавее и на самсунгах, всегда находилась нужная комбинация. Нужно копать
  14. Как я писал выше, пробовал 29, 32, 33. путь SDK по умолчанию c:\Users\kolod\AppData\Local\Android\Sdk путь NDK по умолчанию c:\Users\kolod\AppData\Local\Android\Sdk\ndk так что версии у меня в порядке. Русских символов в пути тоже нет. А вот не может быть проблемы в том, что как показал AIDA64 - телефон 64, а операционка 32?
  15. мин sdk должен быть 29 последний раз, когда вставал вопрос, что нет отладки, выяснилось, что в путях есть русские символы. где-то эта схема дает сбой. вариант, который использую уже начиная с Seattle Никогда не ставил SDK/NDK из комплекта. Установил 100 лет назад Android Studio. Обновляю и ее и через SDK manager в ней - SDK и NDK в папки с короткими путями(!!) - типа C:\Android\ C:\Android\ndk В делфи - просто указать пути к SDK и NDK. Начиная с версии 11 она вообще отлично дальше находит всё сама Кроме того еще отладка не работает на телефоне несовпадающей битности, хотя установка проходит нормально.
  16. Delpgi 11.3. Пробовал Android SDK, который идет в комплекте с Delphi, пробовал настраивать из Android Studio. Пробовал SDK API level 28, 29, 32, 33. NDK всегда 21. Как я понял Delphi других не понимает. В любом случае apk компилируется, деплоится и запускается на телефоне без проблем. Пробовал использовать 2 телефона. Один с Android 10 (29 API level), другой с Android 9 (28 API level). Оба по системной информации совместимы с Delphi для разработки и отладки. Но в любом случае при любых комбинациях отладка по шагам недоступна! Никаких break poin, отладки по шагам не происходит :( Причем как заметил, после деплоя проекта в окне событий появляется следующая строка: Platform: remote-android Triple: arm-unknown-linux-android OS Version: 29 (4.14.141-20440625) ... Platform: remote-android Triple: arm-unknown-linux-android OS Version: 28 (4.9.148) .... Судя по всему проблема в этом. Может есть у кого-нибудь мысли, в какую сторону копать?
  17. При отправке почты понадобилось сохранить изображение и добавить его в аттач сообщения. Проблема свелась к правильному получению URI файла изображения. Самостоятельно не смог побороть. Обратился за помощью к krapotkin. Спасибо ему огромное за помощь. Ну и может быть кому то будет полезен сей опыт. Реализовано под D10.4 Sydney Вот решение. В параметрах проекта включаем "Secure File Sharing", при этом система автоматом создаст необходимые файлы для FilePropvider. Ну и собственно получение URI файла через TAndroidHelper.JFileToJURI procedure TfmDecoder.TestSendEmail(); {$IF DEFINED(ANDROID)} var lIntent: JIntent; lJRecipient: TJavaObjectArray<JString>; lURI: Jnet_Uri; lFileName: string; lFilePath: string; lFilePathFileName: string; Delim :Char; // Surf : TBitmapSurface; {$ENDIF} begin lFileName := Concat('MyFile' ,'.jpg') ; lFilePath := System.IOUtils.TPath.GetPublicPath ; lFilePathFileName := System.IOUtils.Tpath.Combine(lFilePath, lFileName) ; Surf:=TBitMapSurface.Create; SaveParams.Quality:=100; try Surf.Assign(imResult.Bitmap); // Save file TbitMapCodecManager.SaveToFile(lFilePathFileName, Surf, @SaveParams); finally Surf.Free; end; {$IF DEFINED(ANDROID)} lJRecipient:= TJavaObjectArray<JString>.Create(1); lJRecipient.Items[0]:= StringToJString('xxxxxxx@yyyy.com'); lIntent:= TJIntent.Create; lIntent.setType(StringToJString('message/rfc822')); lIntent.setAction(TJIntent.JavaClass.ACTION_SEND); lIntent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK); lIntent.putExtra(TJIntent.JavaClass.EXTRA_EMAIL, lJRecipient); lIntent.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString('Subj')); lIntent.putExtra(TJIntent.JavaClass.EXTRA_TEXT, StringToJString('Text')); lUri:= TAndroidHelper.JFileToJURI( TJFile.JavaClass.init(StringToJString(lFilePathFileName))); lIntent.putExtra(TJIntent.JavaClass.EXTRA_STREAM,TJParcelable.Wrap(lUri)) ; try TAndroidHelper.Activity.startActivity(lIntent); except on E: Exception do begin ShowMessage( E.Message); end; end; {$ENDIF} end;
  18. Intent selectorIntent = new Intent(Intent.ACTION_SENDTO); selectorIntent.setData(Uri.parse("mailto:")); final Intent emailIntent = new Intent(Intent.ACTION_SEND); emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[]{"address@mail.com"}); emailIntent.putExtra(Intent.EXTRA_SUBJECT, "The subject"); emailIntent.putExtra(Intent.EXTRA_TEXT, "The email body"); emailIntent.setSelector( selectorIntent ); activity.startActivity(Intent.createChooser(emailIntent, "Send email..."));
  19. А какое решение? Как присоеденить изображение к мылу?
  20. не проверял... type TSpinBoxAccess=class(TSpinBox); procedure TForm1.FormCreate(Sender: TObject); begin TSpinBoxAccess(SpinBox1).Model.InputSupport:=false; end;
  21. скорее всего мемо еще не пересчитало размеры ContentBounds попробуйте завернуть вызов в ForceQueue TThread.ForceQueue(procedure beginMemo1ChangeTracking(nil); end);
  22. У компонента SpinBox на андроиде нужно что бы цифры вводились стрелками, а с клавиатуры вводить нельзя. Подскажите как реализовать?
  23. Добрый день! подскажите возможно ли сделать очередь уведомлений firebase? Порядок действий: 1. отключаем интернет 2. отсылаем 3 разных уведомления с разным текстом 3. включаем интернет. Приходит только последние отправленное уведомление. Пробовал выставить приоритет "priority": "high", так же пробовал выставить время жизни уведомления. Не помогает. либо я не правильно делаю. https://fcm.googleapis.com/fcm/send { "to": "DeviceToken", "notification": { "title": "test", "body": "test" } }
  24. я не пользуюсь Ctrl+D пользуюсь форматтером кода из CnWizards
  25. Никак не могу понять, чего тут не так (чего не хватает). Если создаю компонент на лету - то первая кнопка некорректно выставляет высоту (вызов метода Memo1ChangeTracking(Memo1);). В этом же методе и создается коспонент. Но если вызываю этот же код - Memo1ChangeTracking(Memo1); - из другого метода (клик по второй кнопке) - нормально. Что за фигня? Не догоняю. Если на форму кинуть компонент TMemo, то тоже работает. unit Unit46; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Memo.Types, FMX.Controls.Presentation, FMX.ScrollBox, FMX.Memo, FMX.StdCtrls; type TForm46 = class(TForm) Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Memo1ChangeTracking(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form46: TForm46; Memo1: TMemo; implementation {$R *.fmx} procedure TForm46.Button1Click(Sender: TObject); begin Memo1 := TMemo.Create(self); Memo1.Parent := Form46; Memo1.Name := 'Memo1'; Memo1.DataDetectorTypes := []; Memo1.Lines.Clear; Memo1.Lines.Add('AAAAAAAAAAAAAA'); Memo1.ShowScrollBars := False; Memo1.OnChangeTracking := Memo1ChangeTracking; Memo1.Align := TAlignLayout.Horizontal; Memo1.EnabledScroll := False; Memo1.TabOrder := 0; Memo1.WordWrap := True; Memo1ChangeTracking(Memo1); end; procedure TForm46.Memo1ChangeTracking(Sender: TObject); begin Memo1.Height := Memo1.ContentBounds.Height + 5; end; procedure TForm46.Button2Click(Sender: TObject); begin Memo1ChangeTracking(Memo1); end; end.
  26. Создаю приложение для андроид. Нужно вызвать проводник, выбрать директорию и запомнить путь. Как это сделать?
  27. Как оказалось я не один такой.
  28. По поводу размера StatusBar посмотрите тут. (ссылка вроде уже не рабочая, а решение прикреплено). Что касается NavBar (я думаю Вы про TToolBar), думаю, Вам стоит копать в сторону изменения стиля именно компонента (или создать свой, с нужной высотой). Не уверен, но думаю копать в ту сторону) P.S. Кстати, есть еще вот такое решение.
  1. Загрузить ещё активность
×
×
  • Создать...