-
Постов
2 517 -
Зарегистрирован
-
Посещение
-
Победитель дней
265
Активность репутации
-
Равиль Зарипов (ZuBy) получил реакцию от Alex7wrt в [Обзор] #3 ModernListView - динамическая подгрузка контента
Ссылка: http://blog.rzaripov.kz/2016/12/3-modernlistview.html
Автор: Зарипов Равиль @ZuBy
Описание: Реализация динамической подгрузки контента:
Бесконечный скроллинг (например как лента в ВК) Паджинация/Пагинация (постраничная загрузка) -
Равиль Зарипов (ZuBy) получил реакцию от Steepe_Hare в Управление окном заставки
никак
если хотите менять текст и прочее, создайте форму сами и сделайте её главной. там и заставку ставьте и текст и прочее
-
Равиль Зарипов (ZuBy) отреагировална krapotkin в Управление окном заставки
главное - главную форму делать из трех компонентов - бэкграунд, лого и кнопка Начать
тогда все будет очень хорошо и быстро
-
Равиль Зарипов (ZuBy) получил реакцию от Andrey Efimov в ListView получить текст Item
WebBrowser1.URL := ListView1.Items[ListView1.ItemIndex].Text;
-
Равиль Зарипов (ZuBy) получил реакцию от Steepe_Hare в 'Share With'
в коде прописан поиск MIME-Type по расширению, т.к. на устройстве для баз данных нет приложении у вас ничего и не выходит.
смените расширение у файла (например на .txt) и тогда у вас появится список приложении указать самому mime-type как text/plain не исключено что файл может быть испорчен, после этих операции
-
Равиль Зарипов (ZuBy) получил реакцию от RubenKamp в ListView получить текст Item
WebBrowser1.URL := ListView1.Items[ListView1.ItemIndex].Text;
-
Равиль Зарипов (ZuBy) получил реакцию от Rusland в ListView получить текст Item
WebBrowser1.URL := ListView1.Items[ListView1.ItemIndex].Text;
-
Равиль Зарипов (ZuBy) отреагировална Rusland в Как достучаться до папки /data/data/... ?
К этой папке есть доступ только у самой программы (если аппарат не рутован).
Так как программа твоя, то ты можешь скопировать файл в общедоступную папку, например, TPath.GetSharedDownloadsPath
-
Равиль Зарипов (ZuBy) получил реакцию от dnekrasov в ANDROID не приходят PUSH Уведомления
Такс, начнём с этого:
Project Options Entitlement List Recieve Push Notification = true Version Info apiKey = server_key (из консоли) uses секция
в private секции формы пишем
процедура для получения и отправки токенов на сервер
событие OnServiceConnectionChange
событие OnReceiveNotificationEvent
AndroidManifest.template.xml
Ваша реализация может отличаться, т.к. у меня работа с FCM выполнена на PHP
-
Равиль Зарипов (ZuBy) получил реакцию от Pax Beach в баг в компоненте TBluetoothLE
@Rusland
не в том месте редактируешь, вот тут попробуй
-
Равиль Зарипов (ZuBy) получил реакцию от Rusland в Ошибка No mapping for Unicode character...
ListBox1.Items.LoadFromFile(TPath.Combine(TPath.GetDocumentsPath, 'test1.txt'), TEncoding.UTF8);
-
Равиль Зарипов (ZuBy) отреагировална Pax Beach в баг в компоненте TBluetoothLE
Если бы мы здесь писали в Android Studio или любой другой IDE на JAVA для Android, можно было бы через Android менеджер GATT устройств обратиться к JAVA интерфейсу конкретного устройства BLE и вызвать нужный нам метод.
Но ты ставишь задачу, сделать вызов, работая с устройствами через компонент TBluetoothLE. В Delphi работа с модулем Androidapi.JNI.Bluetooth.pas не явная, этот файл всего лишь обертка для внешней Android библиотеки, вызовы к ее методам осуществляются через патч, работу внесенных изменений можно проверить в процессе отладки на устройстве. Участники написали, что нужно сделать, осталось только протестировать, делается ли вызов метода requestMTU(), проходит ли согласование корректно. Может быть у тебя метод вызывается, но твое BLE не дает согласие на изменение размера пакета.
Хорошая мысль, сделать параметр "MTU_Size" в компоненте, чтобы компонент на любой платформе при сопряжении с устройствами выполнял принудительное согласование MTU. Для этого нужно написать разработчикам, как сказал ранее ZuBy.
-
Равиль Зарипов (ZuBy) отреагировална Andrey Efimov в Ошибка invoke error method onTextUpdated.
Для начала, обновите студию как минимум на версию XE8, именно с этой версии появилась поддержка Android 5.*. В идеале, обновить до версии Берлин, с апдейтами.
Более подробно, по всем версиям, читайте тут
-
Равиль Зарипов (ZuBy) получил реакцию от Andrey Efimov в Как принудительно завершить поток скачивания
Посмотрите примеры студии
примерный путь
-
Равиль Зарипов (ZuBy) отреагировална Andrey Efimov в баг в компоненте TBluetoothLE
Важно, ещё уточнить, на какой версии Андроида пробуете.
Метод введен в API 21, соответственно работать будет на Android 5.0 и выше.
-
Равиль Зарипов (ZuBy) получил реакцию от Pax Beach в баг в компоненте TBluetoothLE
ну ок, держите (в том же файле)
procedure TAndroidBluetoothGattListener.onConnectionStateChange(gatt: JBluetoothGatt; status, newState: Integer); begin FGatt.FConnectionStatus := TBluetoothDeviceState(newState); FGatt.FServicesEvent.SetEvent; case FGatt.FConnectionStatus of TBluetoothDeviceState.None: if Assigned(FGatt.OnDisconnect) then FGatt.OnDisconnect(FGatt); TBluetoothDeviceState.Connected: if (not FGatt.FConnecting) and Assigned(FGatt.OnConnect) then begin if TJBuild_VERSION.JavaClass.SDK_INT >= TJBuild_VERSION_CODES.JavaClass.LOLLIPOP then FGatt.FJGatt.requestMtu(64); FGatt.OnConnect(FGatt); end; // TBluetoothDeviceState.Paired:; end; FGatt.FConnecting := False; end; В следующий раз подготовьте как можно больше материала, никому не охото копаться в проблеме тем более не имея на руках нужного девайса.
Если есть код на Java и место куда его вставить, так мы переведём на делфи (по возможности)
Надеюсь ваша проблема решится
-
Равиль Зарипов (ZuBy) получил реакцию от Pax Beach в баг в компоненте TBluetoothLE
Я не проверял код, но попробуйте.
копируем себе в проект файлик System.android.Bluetooth.pas, он расположен по пути source\rtl\net\
далее находим constructor TAndroidBluetoothGattListener.Create(const ALEDevice: TAndroidBluetoothLEDevice);
и заменяем на это
constructor TAndroidBluetoothGattListener.Create(const ALEDevice: TAndroidBluetoothLEDevice); var retry: Integer; status: Boolean; begin inherited Create; FGatt := ALEDevice; // вставляем наш код retry := 5; status := False; while (not status) or (retry > 0) do begin status = FGatt.FJGatt.requestMtu(тут значение); dec(retry); end; end; если в этот момент уже есть доступ к интерфейсу JBluetoothGatt, то все получится.
проверять не на чем, так что дальше сами
-
Равиль Зарипов (ZuBy) получил реакцию от Andrey Efimov в ANDROID не приходят PUSH Уведомления
Такс, начнём с этого:
Project Options Entitlement List Recieve Push Notification = true Version Info apiKey = server_key (из консоли) uses секция
в private секции формы пишем
процедура для получения и отправки токенов на сервер
событие OnServiceConnectionChange
событие OnReceiveNotificationEvent
AndroidManifest.template.xml
Ваша реализация может отличаться, т.к. у меня работа с FCM выполнена на PHP
-
Равиль Зарипов (ZuBy) получил реакцию от enatechno в ANDROID не приходят PUSH Уведомления
Такс, начнём с этого:
Project Options Entitlement List Recieve Push Notification = true Version Info apiKey = server_key (из консоли) uses секция
в private секции формы пишем
процедура для получения и отправки токенов на сервер
событие OnServiceConnectionChange
событие OnReceiveNotificationEvent
AndroidManifest.template.xml
Ваша реализация может отличаться, т.к. у меня работа с FCM выполнена на PHP
-
Равиль Зарипов (ZuBy) отреагировална Rusland в баг в компоненте TBluetoothLE
Наверное ничего из этого не поддерживает BLE
-
Равиль Зарипов (ZuBy) получил реакцию от Pax Beach в ANDROID не приходят PUSH Уведомления
Такс, начнём с этого:
Project Options Entitlement List Recieve Push Notification = true Version Info apiKey = server_key (из консоли) uses секция
в private секции формы пишем
процедура для получения и отправки токенов на сервер
событие OnServiceConnectionChange
событие OnReceiveNotificationEvent
AndroidManifest.template.xml
Ваша реализация может отличаться, т.к. у меня работа с FCM выполнена на PHP
-
Равиль Зарипов (ZuBy) получил реакцию от Andrey Efimov в Стандартные константы цветов не работают (TAlphaColorRec.cRed)
Все работает как положено, просто для текстовых элементов нужно убирать зависимость от стиля
TEdit.StyledSettings := TEdit.StyledSettings - [TStyledSetting.FontColor]; и после этого присвоить цвет
-
Равиль Зарипов (ZuBy) отреагировална Brovin Yaroslav в Описание TfgSignature - Получение подписи на устройстве
Описание:
Назначение: Получение подписи клиента в графическом виде. Позволяет получить векторную подпись клиента на устройстве и сохранить ее в файл с любым разрешением Поддерживаемые платформы: Windows, OSX, Android, iOS Демо проект: Samples\SignatureDemo\SignatureDemo.dproj Доступен с версии: R102 Возможности:
Экспорт подписи в файл или поток с любым разрешением (TfgSignature.SaveToFile, TfgSignature.SaveToStream). При этом в файле подпись кадрируется, то есть пустые не заполненные области справа, слева, сверху и снизу игнорируются. Доступно изменение точности записи подписи (TfgSignature.TrackingAccurancy). Возможность получить в процентах степень заполнения подписи клиента (TfgSignature.CalculatePercentFilling, TfgSignature.IsValidSignature) Возможность установить цвет (TfgSignature.Stroke) Возможность задать цвет заднего фона (TfgSignature.Brush) Доступно редактирование длительности отображения уведомления (TfgToast.Duration) Возможность менять глобальные параметры отображения всех тостов в рамках приложения (TfgToast.DefaultBackgroundColor, TfgToast.DefaultMessageColor и TfgToast.DefaultPadding) Скриншоты:
-
Равиль Зарипов (ZuBy) получил реакцию от pogromist в DropBox Rest
на например можно вот так
DropBox_test.rar
UPDATE: Там не используется TRest** компоненты, я их не люблю. Поэтому написал по своему.
В мемо показана картинка, другого ничего не было на дропбоксе, думаю разберетесь в коде
-
Равиль Зарипов (ZuBy) получил реакцию от Kitty в Item.ItemData.Bitmap
Можно конечно, но какая будет производительность я незнаю. давно TListBox не использовал