Перейти к содержанию
Fire Monkey от А до Я
  1. Общие вопросы

    1. 557
      постов
    2. 1,5т
      поста
    3. 949
      постов
    4. Базы данных и REST

      Работа с базами данных и с REST из FireMonkey

      1,7т
      постов
    5. 10,5т
      пост
    6. Положение, размеры, выравнивание

      Положение контролов, размеры, способы выравнивания, абсолютные, локальные и экранные координаты

      476
      постов
    7. Работа с текстом

      Текстовые настройки, шрифты, отображение

      436
      постов
    8. Приложение и формы

      Настройки приложения и работа с формами

      1,4т
      постов
    9. Отладка

      Вопросы отладки и логирования delphi приложений. Поиск ошибок.

      579
      постов
    10. Развертывание приложений

      Deployment Manager, копирование своих файлов на устройство при установке приложения, подготовка к публикации, распространение.

      687
      постов
    11. 1,1т
      постов
    12. Общая информация о TControl

      Общая информация о TControl, на основе которого строятся все остальные визуальные компоненты FireMonkey

      77
      постов
    13. 319
      постов
    14. Прочие вопросы

      Если нет соответствующего раздела форума, то сюда публикуем свой вопрос, затем тема перейдет в нужный раздел форума.

      3,3т
      поста
  2. Вопросы по платформам

    1. 7,2т
      постов
    2. 1,8т
      постов
    3. OSX

      200
      постов
    4. 721
      пост
    5. 6
      постов
    6. 98
      постов
  3. Вопросы по использованию RAD Studio

    1. Лицензирование

      Вопросы связанные с редакциями RAD Studio и лицензированием

      157
      постов
    2. 135
      постов
    3. 44
      поста
    4. 27
      постов
    5. 330
      постов
  4. Обучение

    1. 39
      постов
    2. 155
      постов
      • Сообщений пока нет
  5. Поиск специалистов по FireMonkey

    1. Консультации

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

      618
      постов
    2. Ищу подрядчика

      В этом разделе заказчики ищут подрядчиков для разовых/проектных работ на FireMonkey

      180
      постов
  6. Дополнительные ресурсы по FireMonkey

    1. Сторонние компоненты

      Раздел для публикации существующих компонентов для FireMonkey

      892
      поста
    2. Приложения, написанные с использованием FireMonkey

      Подборка ссылок на приложения, написанные с использование FireMonkey и RAD Studio

      343
      поста
    3. Примеры

      Подборка ссылок на официальные примеры

      9
      постов
    4. Руководства

      Книги, брошюры по FireMonkey

      69
      постов
    5. Шаблоны

      Шаблонные проекты

      166
      постов
    6. Статьи и заметки

      Публикация ссылок на интересные стать о Delphi и FireMonkey. Каждый пользователь может поделиться здесь своими ссылками.

      408
      постов
    7. Информация о версиях RAD Studio

      Информация о новых возможностях, появившихся в каждый версиях RAD Studio. А так же исправлениях и улучшениях

      812
      поста
    8. 567
      постов
  7. Организация работы данного форума

    1. 1
      пост
    2. Нарушения правил форума

      Сюда попадают темы, не отвечающие правилам форума

      23
      поста
    3. 147
      постов
    4. 103
      поста
    5. Функции форума

      Инструкции по использованию функций форума и оповещение о новых функциях

      19
      постов
  • Статистика пользователей

    5 736
    Пользователей
    1 611
    Максимум онлайн
    Алексей Горегляд
    Новый пользователь
    Алексей Горегляд
    Регистрация
  • Кто в онлайне   0 пользователей, 0 анонимных, 27 гостей (Посмотреть всех)

    • Зарегистрированных пользователей в онлайне нет
  • Последние сообщения

    • Спасибо! Работает!
    • blStartDiscovery := FJBluetoothAdapter.startDiscovery;    if TJBuild_VERSION.JavaClass.SDK_INT >= 29  then тогда нужно доп разрешение      FPermissionBackgroundLocation := JStringToString(TJManifest_permission.JavaClass.ACCESS_BACKGROUND_LOCATION); тут через BroadcastReceiver ловим TJBluetoothDevice.JavaClass.ACTION_FOUND и TJBluetoothAdapter.JavaClass.ACTION_DISCOVERY_FINISHED и TJBluetoothAdapter.JavaClass.ACTION_DISCOVERY_STARTED в методе BroadcastReceiver OnReceive(Context: JContext; Intent: JIntent); if JStringToString(Intent.getAction).Equals(JStringToString(TJBluetoothDevice.JavaClass.ACTION_FOUND)) then begin Parcel := intent.getParcelableExtra(TJBluetoothDevice.JavaClass.EXTRA_DEVICE); if Parcel <> nil then BluetoothDevice := TJBluetoothDevice.Wrap((Parcel as ILocalObject).GetObjectID); if BluetoothDevice <> nil then if (BluetoothDevice.getBondState() = TJBluetoothDevice.JavaClass.BOND_NONE) then begin Form1.AddListViewItem(Form1.lvBTOBD, jstringtostring(BluetoothDevice.getName), jstringtostring(BluetoothDevice.getAddress),'Bluetooth'); end; end;        
    • uses ... type TGnnsStatusCallbackDelegate = class(TJavaLocal, JGnssStatusCallbackDelegate) private FCallback: JGnssStatusCallback; protected public procedure onFirstFix(ttffMillis: Integer); cdecl; procedure onSatelliteStatusChanged(status: JGnssStatus); cdecl; procedure onStarted; cdecl; procedure onStopped; cdecl; public constructor Create(); end; ... var GnnsStatusCallbackDelegate := TGnnsStatusCallbackDelegate implementation procedure TForm1.FormCreate(Sender: TObject); begin GnnsStatusCallbackDelegate := TGnnsStatusCallbackDelegate.Create; end; constructor TGnnsStatusCallbackDelegate.Create; begin inherited Create; FCallback := TJGnssStatusCallback.JavaClass.init(TAndroidHelper.Context, Self); end; procedure TGnnsStatusCallbackDelegate.onFirstFix(ttffMillis: Integer); begin // end; procedure TGnnsStatusCallbackDelegate.onSatelliteStatusChanged( status: JGnssStatus); var satelliteCount, usedCount: Integer; begin TTask.Run(procedure var i: Integer; begin try usedCount:= 0; satelliteCount := status.getSatelliteCount(); for i := 0 to satelliteCount - 1 do if status.usedInFix(i) then usedCount := usedCount + 1; TThread.Synchronize(nil, procedure begin Form1.tqsSatMax.Text := satelliteCount.ToString; Form1.tqsSat.Text := usedCount.ToString; Form1.tnSat.Text := usedCount.ToString; end); except Form1.LogCAAdd('TGnnsStatusCallback except'); end; end); end; procedure TGnnsStatusCallbackDelegate.onStarted; begin // end; procedure TGnnsStatusCallbackDelegate.onStopped; begin // end;  
    • Да - чуть было не забыл: тостер внутри J_BT.zip
    • Вообще-то - проект не мой, а лежит по адресу: c:\Users\Public\Documents\Embarcadero\Studio\22.0\Samples\Object Pascal\Multi-Device Samples\Device Sensors and Services\Bluetooth\ и окромя ГолубыхЗубов (базируется, правда на System.Bluetooth) там ещё кучи: ВиФи, акселерометр, геолокация, ... но самый прикольный TabSliding. Как и подсказал OnePeople в потоке TJReceiver ждём CRLF (#10 + #13) и строка выходит целиком, НО время её "коллекционирования" в System.Bluetooth занимает где-то секунд 5, а у мя таймер каждые 500 мС посылает запрос состояния и выводит положение датчиков.... Так что System.Bluetooth - не вариант, а вот исходник (точнее - обрывки) из последнего поста OnePeople после кувалды и напильника шлифанул "нулёвкой" и заработало... Кстати, для таких же почемучек как я (а мож и погоремычнее) приаттачиваю отшлифованный проект на Androidapi.JNI.Bluetooth (Ас Из - искушённые Гуру заметят в нём угловатости но критику эту - в студию: допилим). И чтобы чат заработал необходимо в среде Arduino IDE прошить ЕСП32 скетчем c:\Users\Администратор\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.11\libraries\BluetoothSerial\examples\SerialToSerialBT\... Затем проект затолкать Дэлфёй в телефон, в БТ-меню тела нажать "добавить устройство" и тел начнёт дискаверить.... По завершении законнектиться с ESP32-BT-Slave и тут же разорвать коннект, запустить J_BT, нажать btGetPaired и в комбобоксе (что рядом с ней) выбрать ESP32-BT-Slave и как увидите TJReceiver = Started и FJSocket <> nil  - можно чатиться с ЕСПхой открыв в Arduino IDE монитор сериал порта (Ctrl+Shift+M).  Вот и добрались к центральному вопросу поста:  а как средствами  Androidapi.JNI.Bluetooth  дискаверить устройства поблизости? Нет можно, конечно, забить костыль из System.Bluetooth, но хотелось бы чтобы если уж АПИ, то АПИ. Заранее благодарен. J_BT.ZIP
    • Привет Луди! Извините за рускии язык. У мена ест код на C# проект. Ево надо На делпи перевести. Код маленки. Кто помозет мен на етом? конешно не бесплатно. Поставлау код исходник. Собран на Висуал Студио 2012 на C#  
    • Более тупого вопроса на форуме, посвященному делфи, и не припомню
    • Во все мыслимые стороны. Популярность  Делфи выросла на прямых клиент-серверных приложениях. Сейчас так не пишут, почти везде - веб.  
    • В чем преимущества (кроме бесплатности) у MS Visual Studio перед Delphi при создании  Windows-программ?
  • Последние темы

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