Yuriy2606

Пользователи
  • Публикаций

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

  • Посещение

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

    1

Yuriy2606 стал победителем дня 25 ноября

Yuriy2606 имел наиболее популярный контент!

Информация о Yuriy2606

  • Звание
    Новичок

Посетители профиля

Блок последних пользователей отключён и не показывается другим пользователям.

  1. Здравствуйте коллеги. Внедряю в приложение вход через Facebook. Всё получилось, работает. Вот кусок кода: procedure TForm1.Auth; begin //WebForm:=Tfrm_OAuthWebForm.Create(nil); //WebForm. OnAfterRedirect:=AfterRedirect; OAuth2Authenticator1.AccessToken:=EmptyStr; OAuth2Authenticator1.ClientID:=cAppID; OAuth2Authenticator1.ClientSecret:=cAppKey; OAuth2Authenticator1.ResponseType:=TOAuth2ResponseType.rtTOKEN; OAuth2Authenticator1.AuthorizationEndpoint:=cEndPoint; OAuth2Authenticator1.RedirectionEndpoint:=cRedPoint; OAuth2Authenticator1.Scope:=cScopes; WebBrowser1.Visible:=true; WebBrowser1.Navigate(OAuth2Authenticator1.AuthorizationRequestURI); //WebForm.ShowWithURL(OAuth2Authenticator1.AuthorizationRequestURI); end; Пробовал использовать frm_OAuthWebForm и просто WebBrowser, работает и так и так. Но есть проблема: после захода в приложение, при постановке курсора на любой Edit, приложение виснет и вылетает. Стоит убрать WebBrowser - проблема исчезает. Наблюдается только в Android. Windows версия работает без нареканий. Если ответа не найду, то придется исключить Вход через FB, а не хочется. Заранее спасибо за ответ. Delphi 10.1 Berlin Version 24.0.22858.6822
  2. Там всё закомментарено, нет ни одной открытой строчки.
  3. Большое спасибо за ответ. Еще раз внимательнее все проверив у меня все таки получилось динамически запросить разрешения при помощи KastriFree в Berline Запрос сделал так {cPermissionACCESS_COARSE_LOCATION = 'android.permission.ACCESS_COARSE_LOCATION'; cPermissionACCESS_FINE_LOCATION = 'android.permission.ACCESS_FINE_LOCATION'; cPermissionACCESS_NETWORK_STATE = 'android.permission.ACCESS_NETWORK_STATE'; cPermissionCALL_PHONE = 'android.permission.CALL_PHONE'; cPermissionCAMERA = 'android.permission.CAMERA'; cPermissionINTERNET = 'android.permission.INTERNET'; cPermissionREAD_EXTERNAL_STORAGE = 'android.permission.READ_EXTERNAL_STORAGE'; cPermissionREAD_PHONE_STATE = 'android.permission.READ_PHONE_STATE'; cPermissionWAKE_LOCK = 'android.permission.WAKE_LOCK'; cPermissionWRITE_EXTERNAL_STORAGE = 'android.permission.WRITE_EXTERNAL_STORAGE'; } FRequester.RequestPermissions([cPermissionACCESS_FINE_LOCATION,cPermissionACCESS_COARSE_LOCATION,cPermissionREAD_EXTERNAL_STORAGE, cPermissionWRITE_EXTERNAL_STORAGE, cPermissionCAMERA], cPermissionsCodeExternalStorage); Обработка так procedure TForm1.PermissionsResultHandler(Sender: TObject; const ARequestCode: Integer; const AResults: TPermissionResults); begin case ARequestCode of cPermissionsCodeExternalStorage: begin if AResults.AreAllGranted then DoShow; //Что-то делаем else ShowMessage('You need to grant all required permissions for the app to be able to take photos!'); end; cPermissionsCodeSMS: begin if AResults.AreAllGranted then ShowMessage('SMS permissions granted') else ShowMessage('You need to grant all required permissions for the app to be able to handle SMS!'); end; end; end; Там в коде примера KastriFree все описано более подробно https://www.delphiworlds.com/2018/06/targeting-android-8-and-higher-continued/ Вот ссылка, это для тех, у кого Berlin
  4. Здравствуйте коллеги. Написал приложение с необходимостью разрешений LocalSensor, MediaLibrary, Read/Write Storage и т.д. С АПИ Левел 14 все работало на ура. Дошел до выкладки на Play Market и уперся в API level 26. Нашел решение для Tokio (у меня Berlin) - KastriFree ( https://www.delphiworlds.com/2018/06/targeting-android-8-and-higher-continued/) попробовал реализовать как в статье и все равно не работает, приложение просто закрывается сразу после открытия. Ошибка I/O 17 в первом же месте обращения к файлам на карте памяти. Если в манифесте указать таргетлевел 14, то все нормально запускается и работает. Но такое приложение не пускает фильтр Play Marketa. Что делать? Как быть? И еще, думал скачать RAD 10.3 Community, получил на почту ключ, но на этапе установки после ввода ключа пишет, что не может обратиться к серверу. Если кто знает ответ - дайте ссылку, пожалуйста.
  5. Yuriy2606

    TMapView завешивает программу

    Здравствуйте коллеги. Проблему с зависанием приложения решил при помощи отслеживания Hide приложения и MapView1.Visible:=false; Соответственно при возобновлении активности делаю MapView1.Visible:=true; Зависания почти пропали на 90%. Прыгающий GPS я победил отключением WiFi/GSM локации. Оставил только GPS. Как-то это костыльно, масса пользователей до этого не догадаются и на карте будет куча прыгающих машин.
  6. Yuriy2606

    TMapView завешивает программу

    Здравствуйте коллеги. Приятно, что есть люди, готовые помочь Проблема следующая: Программа содержит карту MapView на которую наносятся маркеры в динамике (раз в 10 сек передвигаются машинки по карте). Все нормально работает пока я не перейду к другой активности. После возобновления моей активности, с вероятностью 50\50, приложение не отображается, просто черный экран, иногда на черном экране появляются кнопки Google карты. Помогает снятие процесса приложения и запуск его заново. Проверено на двух девайсах. Методом логирования я вычислил, что приложение падает тут: begin try mapPolygon.DisposeOf; //тут исключение except end; SetLength(Outline,5); Outline[0]:=TMapCoordinate.Create(VLLat, VLLon); Outline[1]:=TMapCoordinate.Create(VLLat, NPLon); Outline[2]:=TMapCoordinate.Create(NPLat, NPLon); Outline[3]:=TMapCoordinate.Create(NPLat, VLLon); Outline[4]:=TMapCoordinate.Create(VLLat, VLLon); Plg:=TMapPolygonDescriptor.Create(Outline); Outline:=nil; Plg.StrokeColor := TAlphaColorRec.Slateblue; Plg.StrokeWidth := 3; Plg.Geodesic := True; Plg.ZIndex := 0.9; //Plg.FillColor := TAlphaColorRec.Yellow; try mapPolygon := Form1.MapView1.AddPolygon(Plg); //зависает тут, и это при наличии try except except end; end; Ставил перехват события сворачивания приложения и запрет на обновление карты при этом. Но это не помогло. В приложении используются потоки типа: TThread.CreateAnonymousThread(procedure () begin TThread.Synchronize(nil, procedure begin end); end).Start; Вышеуказанная отрисовка в основном потоке, по таймеру. Может в этом причина? Одним словом не знаю что делать. Пока смирился, но надеюсь на лучшее. И еще, вычислил только что: в приложении используется LocationSensor1.Sensor и для отладки я использую FakeGPS. Почему-то LocationSensor1.Sensor в большинстве случаев выдает правильные координаты из FakeGPS, а иногда те, которые он получает по wifi/gsm. При этом на улице, с отключеным Fake GPS, наблюдается то же самое, но реже. Это странно. При этом синяя точка на карте отображается в правильном месте. Может кто-то сталкивался? Заранее спасибо за ответы. 10.1 Berlin
  7. Yuriy2606

    TMapView завешивает программу

    Добрый день. Та же проблема. Бьюсь уже 3 дня. Уже думаю уходить на Android Studio (: Смогли решить? Или может кто-то подскажет...