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

Rusland

Пользователи
  • Постов

    1 204
  • Зарегистрирован

  • Посещение

  • Победитель дней

    26

Весь контент Rusland

  1. Ответ из этой ссылки #if DEBUG @implementation NSURLRequest (NSURLRequestWithIgnoreSSL) + (BOOL)allowsAnyHTTPSCertificateForHost:(NSString *)host { return YES; } @end #endif позволяет в XCode работать с самоподписанными сертификатами. Всего пару строк добавил и заработало Хотелось бы так же просто и в FMX... или переходить на XCode?
  2. Упоминания didReceiveAuthenticationChallenge есть в файлах: iOSapi.Foundation.pas, System.Net.HttpClient.Mac.pas, Macapi.Foundation.pas, Macapi.WebKit.pas Что со всем этим делать не ясно
  3. Нашел этот .info.plist В нем указано: <dict> <key>NSAllowsArbitraryLoads</key><true/> </dict> Это и есть YES? Нельзя ли рассказать подробнее что конкретно и как править? Если честно, то не понял вообще что делать didReceiveAuthenticationChallenge в FMX.WebBrowser.Delegate.iOS.pas нет (во всей директории source\fmx тоже). @Fedor K не могли вы выложить готовый пример с правками?
  4. в ImageList размер может быть любой
  5. Скорее всего проблема в том, что вы используете русские буквы: Ответ1 Ответ2 Ответ3 ... Возможно проблема в кодировке файла. Она должна быть utf8. Лучше замените буквы на латинские: Otvet1 Otvet2 Otvet3 ...
  6. Вообще никаких сообщений не показывается? Тогда только смотреть через monitor.bat, что там происходит с приложением.
  7. Что значит не запускается? В режиме дебаг что-то выдает наверное...
  8. Судя по скринам ini-файл берется из папки Android\Debug. Зачем так делать? Эту папку создает сама студия. Возможно что Clean очищает все содержимое в этой папке и строка становится неактивной, потому что файла больше нет. Какую ошибку при этом выдает?
  9. Покажите ваш код
  10. Если нужен именно слайдер, то посмотрите на этот компонент Ярослава
  11. var Form1: TForm1; ind: integer; implementation {$R *.fmx} procedure TForm1.FormCreate(Sender: TObject); begin ind := 0; end; procedure TForm1.Timer1Timer(Sender: TObject); begin ind := ind + 1; if FileExists(System.IOUtils.TPath.Combine( System.IOUtils.TPath.GetDocumentsPath, 'picture' + ind.ToString + '.png')) then Image1.Bitmap.LoadFromFile(System.IOUtils.TPath.Combine( System.IOUtils.TPath.GetDocumentsPath, 'picture' + ind.ToString + '.png')); end;
  12. Использовать Image и Timer (Interval=5000). В чем сложность?
  13. Аналогично, UserAgent нормально до сервера доходит
  14. Посмотрите темку
  15. Почитайте эту тему
  16. Эта тема так и осталась открытой? Дальше Accept:=true в OnValidateServerCertificate никто не ушел?
  17. А как решить эту проблему для iOS?
  18. Кто-нибудь пробовал получать SSL-сертификат через letsencrypt.com? Вроде бесплатно дают, только не понятно на какой срок
  19. Сроки перенесли на 2018 год, видимо на весну. PS. @Brovin Yaroslav, вылечи своего робота, он картинки не показывает.
  20. @haword А как подобную проблему решить в Windows? Сайт с неверным сертификатом. Как его нормально открыть?
  21. Переключил режим Энергосбережения с Оптимальный на Отключено и сразу проблема с коннектом пропала
  22. Официальное название: Тинькофф Официальный сайт: http://tinkoff.ru Платформы: Android, iOS
  23. проверьте FileExists выдаст что файл действительно лежит по такому пути?
  24. uses FMX.DialogService, FMX.VirtualKeyboard ... procedure TfrSets.txtPassClick(Sender: TObject); begin InputText('Введите пароль', Sender); end; procedure TfrSets.InputText(heading: String; Sender: TObject); var FKService: IFMXVirtualKeyboardService; begin TPlatformServices.Current.SupportsPlatformService(IFMXVirtualKeyboardService, IInterface(FKService)); TDialogservice.InputQuery(heading, ['Ввод'], [(Sender as TText).Text], procedure(const AResult: TModalResult; const AValues: array of string) begin case AResult of mrOk: begin (Sender as TText).Text:=avalues[0]; if (FKService<>nil) and (TVirtualKeyBoardState.Visible in FKService.VirtualKeyBoardState) then begin FKService.HideVirtualKeyboard; end; end; mrCancel: begin if (FKService<>nil) and (TVirtualKeyBoardState.Visible in FKService.VirtualKeyBoardState) then begin FKService.HideVirtualKeyboard; end; end; end; end ); end; Делаю так ^^^
  25. Проверил, запускает и работает (Xiaomi Redmi Note 4 MIUI Global 8.5). Но вот наблюдаю такую проблему: Есть сервис, который при старте делает POST-запрос и создает "будильник", для последующего перезапуска самого себя: function TDM.AndroidServiceStartCommand(const Sender: TObject; const Intent: JIntent; Flags, StartId: integer): integer; begin Result := TJService.JavaClass.START_STICKY; // тут может быть и START_NOT_STICKY - это не важно SendPost('post запрос до сервера'); PendIntent(); end; procedure TDM.PendIntent(); var Intent: JIntent; PendingIntent: JPendingIntent; begin Intent := TJIntent.Create; Intent.setAction(StringToJString('60sec')); Intent.setClassName(TAndroidHelper.Context, StringToJString('com.embarcadero.services.CabSrv')); PendingIntent := TJPendingIntent.JavaClass.getService(TAndroidHelper.Context, 1, Intent, 0); TAndroidHelper.AlarmManager.&set(TJAlarmManager.JavaClass.RTC_WAKEUP, getTimeAfterInSecs(60), PendingIntent); // раз в минуту вызываем сервис end; procedure TDM.SendPost(txt: string); var aResponse: IHTTPResponse; aResponser: TResponser; sStream: TStringStream; aHttpClient: TNetHTTPClient; sList: TStringList; begin TTask.Run( procedure begin try aHttpClient := TNetHTTPClient.Create(nil); aHttpClient.OnValidateServerCertificate := OnValidateServerCertificate; aHttpClient.AcceptLanguage := 'ru,en;q=0.8'; aHttpClient.ContentType := 'application/x-www-form-urlencoded'; aHttpClient.AcceptCharset := 'utf-8'; aHttpClient.Accept := 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8'; sStream := TStringStream.Create(); sList := TStringList.Create; sList.Add('txt=' + txt); try aResponse := aHttpClient.Post(Sets.Host, sList, sStream); finally if ((sStream <> nil) and (aResponse <> nil)) then begin Log('SendPost OK'); end else Log('SendPost Error'); sStream.Free; sList.Free; end; finally aHttpClient.Free; end; end); end; Так вот если выгрузить программу (сервис перезапускается) и выключить экран, то через несколько минут сервис не может достучаться до сервера. except java.net.SocketTimeoutException: connect timed out В чем может быть проблема и как ее решить?
×
×
  • Создать...