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

M1shQa

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

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

  • Посещение

Сообщения, опубликованные M1shQa

  1. 4 часа назад, Alex7wrt сказал:

    Предлагаю рисовать на канве. По-моему это более универсальный вариант.

    Я, например, так и рисую графики.

     

    А как там отрисовать сетку? Как размер шага нарисовать? Мне кажется проще готовую тулзу использовать

  2. Не нашел нормальных видео/мануалов по TChart и появилось пару вопросов.

    Как добавить точки я понял, но есть другие проблемы. Мне нужно отобразить скачки показателей датчиков с промежутком в 5 минут. 

    Как на графике отметить максимум?

    Как отметить промежуток между точками?

    Буду очень благодарен за микропримеры ?

    А то во всех роликах примеры взаимодействия с бд, которой у меня нету, а казалось бы простую вещь найти не могу..

  3.  

    3 часа назад, Равиль Зарипов (ZuBy) сказал:

    все дело в TidHTTP (Indy) - его нельзя использовть под Андроидом

    Систем.нет.хттп? Кстати да, на андроиде все плохо, особенно когда ковырял сервис, в сервисе заработал только систем нет сокет..

  4. В 30.09.2017 в 03:01, bossalex сказал:

     

    Просто пытаетесь выполнить get запрос? Очень странно, у меня все работало. Даже в справке от эмбы написано:

    For OS X and Android, your application does not need to meet any prerequisite for TLS/SSL support. The required OpenSSL library is available by default on those operating systems.

    http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Securing_Indy_Network_Connections

    Может дело в версии студии/ведра?

  5. 17 часов назад, Rusland сказал:

    Так вот у меня на планшете Lenovo Tab 2 a8-50l (Android 5) с этим кодом ни в какую координаты не передаются, значок GPS не появляется. Не пойму отчего это зависит

    Странно :( может это проверка наличия гпс сенсора как то влияет? Код я с того проекта и не менял даже, а чистый пример у Вас работает? 

    Который здесь выкладывали: 

     

  6. 3 часа назад, Rusland сказал:

    Значек GPS у меня и на планшете Lenovo (андроид 5) не появился... что-то не так с кодом

    Код не изменял с той темы, что указал в первом посте, т.е. я брал те исходники за основу, далее только допиливал обработку координат. Спасибо, буду еще тестировать ;) надо думать как решить проблему с совместимостью, у нас на всех девайсах на работе заводится, а вот у заказчиков не захотело, к сожалению меня рядом не было чтоб глянуть модель и пр.:(

     

  7. 18 минут назад, sinuke сказал:

    в качестве предположения...

    а на какой версии Андройд работает/не работает? в 6.0 и выше нужны отдельные права на небезопасные разрешения. может поэтому не хочет?

    узнать наличие разрешений и запросить их заново можно в блоге Andrey Efimov -  http://delphifmandroid.blogspot.com.by (у меня перестал открываться, более точную ссылку дать не могу)

    Спасибо, гляну тоже. У меня правда на ле еко ле 2 стоит 6 андроид и все работает как часики)

  8. 53 минуты назад, Rusland сказал:

    Какая версия Delphi?

    PS. От Indy компонентов лучше отказаться

    Собираю на Токио, думаю уже попробовать на берлине, все советуют)

    А инди только в самом приложении (по началу было для тестирования, сейчас только компонент остался висеть), в сервисе я запилил через тнетсокет, там инди в принципе не работает :D

  9. 8 минут назад, Rusland сказал:

    Выложи проект, проверю на своем Xiaomi

    Оказалось что работает он крайне странно, на каких то устройствах xiaomi сразу пытается поймать gps, а на каких то даже значка нету. Спрошу у начальство на какой именно модели тестировали. Еще планирую сделать автозапуск сервиса с системой, но пока чет не получается :(

    GTM.7z

    п.с. там есть участки недоделанного кода (допиливаю выгрузку при длительном отсутствии интернета), но все и так работает ;)

  10. Добрый день. Как получить количество спутников? как получить высоту? Как получить направление и скорость? на работе есть черные коробочки (так называем гпс устройства, сыпят эти данные сами, а вот с андроида фиг его знает как получить) Гугл молчит, а нужно допиливать сервис с gps, кое-как криво все работает, но сервер ругается что я не шлю ему данные о количестве спутников и высоте. Еще проблема с телефонами xiaomi, там даже значок gps не хочет гореть :(

    Сервис делал по примеру : 

     

    UPD. 17.08.2017

    Нашел как получать дополнительную информацию:

    Цитата

    SatInt:=TGpsStatus.Current.SatelliteCount;

    a:=gpssensor.Altitude;

    b:=gpssensor.Speed;

    Где gpssensor - ваш кастом локейшн сенсор. 

     

  11. Добрый день. Пишу на RadStudio 10.2 Tokyo, появилась нужда перезагружать приложение после рестарта системы.

    Нашел статью http://delphifmandroid.blogspot.ru/2016/01/broadcastreceiver.html которую уже здесь обсуждали, но даже с сэмплом из самой статьи у меня возникают проблемы.

    Батник поправил, он вроде даже отрабатывает оставляя только варнинги :

    Цитата

    warning: [options] bootstrap class path not set in conjunction with -source 1.7
    1 warning

    Файлы появляются, пытался и с .dex файлом в деплойменте закреплять, так и с .jar (по отдельности) и оба метода не перезапускают приложение. Проверил оба манифеста (и в корне и в папке андроид деплоймент и т.д.) там ресивер прописывается нормально, пермишн тоже проверял - стоит true. Что я делаю не так? Может кто проверить проект? Или опять ставить предыдущую версию студии? :(

    Телефоны для тестов использую разные (lg k8, xiaomi и le eco le2). Но везде по перезагрузке просто ноль реакции. Закрепил проект с батником, манифестами т .д.

    asd.7z

  12. Все делаю по Вашей статье, даже успешно создался файл  .jar который я закрепил к проекту, вот только сервис не стартует. Что я сделал :

    1. Поправил манифест, проверил - везде есть ресивер, выдал пермишн.

    2.Сгенирировал .jar файл, все прошло без ошибок, файл появляется, к проекту крепится (лежит рядом с севрисом), но после сборки сервис все равно не стартует.

    Так же здесь поменял имя на имя своего сервиса :

    Цитата

    TestLauncher.setClassName(context, "com.embarcadero.services.Srv");

    Вот частичка из моего батника:

    Цитата

    if x%ANDROID% == x set ANDROID=C:\SDK
    set ANDROID_PLATFORM=%ANDROID%\platforms\android-23
    set PROJ_DIR=%CD%
    set VERBOSE=0
    echo.
    echo Compiling the Java service activity source files
    echo.
    mkdir output 2> nul
    mkdir output\classes 2> nul
    if x%VERBOSE% == x1 SET VERBOSE_FLAG=-verbose
    javac -source 1.7 -target 1.7 %VERBOSE_FLAG% -Xlint:deprecation -cp %ANDROID_PLATFORM%\android.jar -d output\classes src\com\TestReceiver\BootCompletedReceiver.java

    После просто тыкаю по проекту правой кнопкой -> ADD -> Выбираю сгенерированный файл и собираю проект. Что я делаю не так?

    UPD. Пробовал собирать на 1.8 джаве - собирается без варнингов, но вот такой jar не хочет кушать рад студио, выдает ошибку связанную с path o_O

  13. Потратил час чтоб понять как работает эта процедура. Если кому еще нужно, то вот пример:

    Цитата

     

    string1:='';

    string2:='192.168.0.1';

    string3:='';

    portword:=1234;

    Socket.connect(string1,string2,string3,portword);

     

    При этом обязательно все должно быть указано либо вручную, либо через переменные (если указать .connect('',ip,'',port); то будет выдавать ошибку при попытке отдебажить). Можно еще указать вручную .connect('','192.168.0.1','',1234); так тоже работает. Стало актуально, когда начал отправлять данные в потоке в сервисе, компоненты инди там не работают, а по этим сокетам нигде почти примеров нету, особенно когда ip нужно указывать динамически.

  14. В 07.08.2016 в 22:01, Dmitry Sobko сказал:

    Добрый день! У меня тоже такой вопрос.

    Я использую XE10

    В примерах есть получение списка устройств, подключение к ним, и даже как отправить текст на устройство, но к сожалению этот пример не рабочий (про отправку текста). Т.е. я подключаюсь к устройству, пытаюсь отправить на него текст и после ожидания появляется ошибка в логе.  

    Помогите пожалуйста разобраться с приемом/передачей текстовой информации с/на устройство.

    Спасибо!

    Ошибка решается изменением service gui

      ServiceGUI = '{00001101-0000-1000-8000-00805F9B34FB}';

    У меня с этим заработало, понятия не имею как это работает, но начал отправляться текст, а вот с приемкой - если глянуть код, она реализована. Там есть кнопка старт текст сервис, которая по идее создает поток и пытается принимать байты, но она не работает. Для приема используйте Socket.RecieveData , но он почему то у меня отказывается работать в потоке, а без него - фризит приложение.

  15. Переделал потоки (Один принимает данные, другой синхронит и отображает на мемо) , но всегда срабатывает эксепшн. Даже не знаю уже как принять данные так, чтоб приложение не фризилось.

    UPD. В примере Классик БТ апп нашел функцию  procedure TServerConnectionTH.Execute; КОТОРАЯ И ДОЛЖНА ОТВЕЧАТЬ ЗА ПРИЕМ ТЕКСТА, но она как и ожидалось не работает, вообще.

    Может есть какой ивент On Receive?

     

  16. Как организовать правильный прием сообщений через блютус? В стандартном classic примере нету приема. Попробовал метод.ReceiveData; - работает, но морозит (ожидаемо) приложение. Сделал отдельный поток (тут я совсем новичок) и первый раз сообщение получается нормально , код примерно такой:

    Цитата

    ReceiveBytes:=FSocket.ReceiveData;
    ReceiveString := TEncoding.UTF8.GetString(ReceiveBytes);
    Memo1.Lines.Add(ReceiveString);

    Как постоянно принимать что-либо без фриза приложения, может есть примеры какие?Причем оно и в потоке не всегда срабатывает, но если срабатывает, то только один раз. Пробовал добавить конструкцию repeat until terminated; - не помогло.

    Цитата

    procedure Reciever.Execute;
     begin
     repeat
     Synchronize(Viv);
     until terminated;
     end;

    Может поток нужно как то перезапускать? или использовать что то другое?

    UPD. Нашел функцию ресив дата

    Цитата

    function ReceiveData: TBytes; overload; inline;
    var
    receives:string;
    begin
    Form1.DisplayR.Lines.Add('БУМ!');
    ReceiveS := TEncoding.UTF8.GetString(ReceiveData);
    Form1.DisplayR.Lines.Add(ReceiveS);
    end;

    Но проблема та же, после первого получения - приложение нормально отправляет текст, но не получает его.

  17. 14 часа назад, Andrey Efimov сказал:

    В Java файле всё правильно прописали?

    Можно, но тогда нужно добавить jar-файл.

    В вашем случае - нет.

    На Токио не проверялось. Статья написана для Seattle, но 100% работает на Berlin (только вчера реализовывал данную функцию в новом приложении), а вот Токио пока в топку.

    Хорошо, попробую сгенерить jar еще раз, спасибо за советы.

  18. Есть у кого готовый сэмпл приложения, которое загружается при перезагрузки системы? На Tokyo приложение из блога товарища Andrey Efimov собирается отлично, но крашится уже на телефоне, причем тут же при запуске, без ошибок.

  19. В 19.02.2017 в 15:18, Andrey Efimov сказал:

    Спасибо, приятно слышать :).

    А конечный файл нормальный получается? по размерам и по работоспособности?

    По размерам должен получиться на несколько КБ больше, чем основной classes.dex приложения.

    Ага, поэтому, я в каждой статье связанной с classes.dex пишу об этом :)

    Кстати можно ли использовать classes.dex из вашего семпла? правда у меня ни со сгенерированным не работает, ни с Вашим :(

  20. В 31.01.2016 в 21:02, Andrey Efimov сказал:

    Ссылка: http://delphifmandroid.blogspot.ru/2016/01/ansroidservicebroadcastreceiver.html

    Автор: Ефимов Андрей

    Описание: [AndroidService+BroadcastReceiver] Автозапуск службы после рестарта ОС

     

    p.s. Тему почистил

    Скачал пример, собрал сервис, добавил его к приложению, но оно почему-то крашится. Т.е. только запускается,  мы видим лого и бдыщ, без ошибок вылетает на рабочий стол. С загрузкой приложения после рестарта тоже проблемы - собираю проект, проверяю все галочки, приложуха запускается, но после рестарта - ничего.

    UPD. Пересобрал свой проект (gps трекер). Пытаюсь запустить после рестарта именно само приложение, но ничего не помогает. Делал как в ЭТОЙ статье. Собственно даже предоставленный сэмпл у меня не работает. Пытаюсь подсунуть в библиотеки сгенерированный java файл, в юзер пермишнах галочку ставлю, .dex решил не добавлять ибо в инструкции написано что так можно.

    UPD 2. Пересобрал с .dex классами - приложение тут же крашится после запуска. Почти прям как сэмпл из блога (rad studio tokyo).

  21. В 30.05.2017 в 12:27, Pax Beach сказал:

    Что-то не так в логах. Фигурирует три пакета com.embarcadero... А должно быть максимум два.

    Надо всё почистить и заново собрать. Если не заработает, смотреть код.

    GPS трекер отлично работает нас телефонах. Только Xiomi не победил пока.

    Можете сделать сэмпл? Уже установил Rad Studio Tokio, сменил мобильник на LG, проблема не решается. Как только я тапаю на кнопку домой то gps данные перестают лететь в логи, а как только закрываю приложение то пропадает значок gps.

    p.s. я уже было за голову схватился, но оказалось что gps все же шлет данные в свернутом виде. Проблема при закрытии самого приложения осталась. 

    Прикладываю логи: 

    Цитата

    06-06 15:01:07.785: I/info(4760): New location available -> Latitude: 40,278767, Longitude: 70,895717 
    06-06 15:01:15.730: I/info(4760): FMX: LocationSensorDemo: [Context Exception]: Error in context method 'DoFinalizeShader'.
    06-06 15:01:15.730: I/info(4760): FMX: LocationSensorDemo: [Context Exception]: Error in context method 'DoFinalizeShader'.
    06-06 15:01:15.730: I/info(4760): FMX: LocationSensorDemo: [Context Exception]: Error in context method 'DoFinalizeShader'.
    06-06 15:01:15.730: I/info(4760): FMX: LocationSensorDemo: [Context Exception]: Error in context method 'DoFinalizeShader'.
    06-06 15:01:17.307: W/linker(5097): /data/app/com.embarcadero.LocationSensorDemo-1/lib/arm/libProxyAndroidService.so: unused DT entry: type 0xf arg 0x8f21
    06-06 15:01:17.307: W/linker(5097): /data/app/com.embarcadero.LocationSensorDemo-1/lib/arm/libProxyAndroidService.so: is missing DT_SONAME will use basename as a replacement: "libProxyAndroidService.so"
    06-06 15:01:17.325: W/linker(5097): /data/app/com.embarcadero.LocationSensorDemo-1/lib/arm/libLocationService.so: unused DT entry: type 0xf arg 0x9f19
    06-06 15:01:17.325: W/linker(5097): /data/app/com.embarcadero.LocationSensorDemo-1/lib/arm/libLocationService.so: is missing DT_SONAME will use basename as a replacement: "libLocationService.so"

     

×
×
  • Создать...