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

Лидеры

  1. Равиль Зарипов (ZuBy)

    Равиль Зарипов (ZuBy)

    Модераторы


    • Баллы

      20

    • Постов

      2 517


  2. Pax Beach

    Pax Beach

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


    • Баллы

      3

    • Постов

      414


  3. krapotkin

    krapotkin

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


    • Баллы

      2

    • Постов

      2 185


  4. Kitty

    Kitty

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


    • Баллы

      2

    • Постов

      792


Популярный контент

Показан контент с высокой репутацией 05.07.2016 во всех областях

  1. несколько дней убили с Андреем (Andrey Efimov) на решение этой задачи За что ему большое спасибо, он доделал до рабочего варианта вот результат использовать fmx.zip скопировать fmx.dex.jar в папку с проектом далее по картинке компилируем и ждём пуш
    5 баллов
  2. вот тест с 600 объектами, незнаю меня скорость устраивает для меня столько много конечно, так ради теста сделал lv_demo.zip
    3 балла
  3. то о чем вы говорите, действует для локальных уведомлении. С пушами (те что генерит GCM) обстоит немного иначе, тут именно нужен java код и правки в классе который публикует нотификации. При реализации расширенных уведомлении, нужно будет библиотеку писать под каждый отдельный проект (что в принципе и правильно) А это решение универсальное, который даёт пользователям просматривать полный текст и разработчикам "свободу слова" это кстати так и работает, когда уведомление одно в шторке, оно показывается на полную, когда много любое можно раздвинуть и прочитать
    3 балла
  4. теперь можно сделать http://fire-monkey.ru/topic/2965-gcmintentservice-или-multiline-push-notification/#comment-17705
    3 балла
  5. Kitty

    Eddystone

    Удалось увидеть уведомление в шторке телефона. Выяснилось, что протокол ссылки должен быть https. Поэтому не удалось получить в шторке url для fire-monkey.ru
    2 балла
  6. Из PlatformSDK (PlatformSDKs\android-sdk-windows\sources\android-23\android\support\v4\content\) портировал в Delphi класс TJLocalBroadcastManager. Это очень полезный класс, если вы не хотите рассылать сообщения по всей системе, а есть необходимость общаться только внутри приложения или между хост-приложением и сервисом. Во вложении сам класс, в своем приложении убедитесь, что в Target Platforms (Android) → Android → Libraries включена библиотека android-support-v4.dex.jar. Прилагаю пример, для изучения и использования в работе, который демонстрирует работу обычного BroadcastReceiver и LocalBroadcastReceiver. В примере демонстрируется работа сообщений в приложении и сервисе. Сначала делаем build проекта LBCRService, потом будет доступна возможность собрать LocalBCR. Собираю в Berlin 10.1, но на младших версиях тоже должно работать, по крайней мере в Seatlle. В реализации методов procedure RegisterReceiver(); procedure UnRegisterReceiver(); необходимо снять комментарий с соответствующих строчек, в зависимости от того, какой тип ресивера вы хотите использовать. Androidapi.JNI.LocalBroadcastManager.pas.zip LocalBroadCastReceiver.zip
    1 балл
  7. Впечатляет! Вот бы еще сорцы от этого примера глянуть! Все понимаю, нет, так нет! Можно в личку!
    1 балл
  8. Можете показать ваш тест, на 500+ объектов. Хочу посмотреть скорость отрисовки ваших компонентов. Ничего мудрить не нужно, можете даже использовать мой файлик с данными и любую статическую картинку
    1 балл
  9. Жалко, что смог только сейчас подключиться к теме. Спасибо большое за ваше решение! Если говорить о больших Notifications, хотелось бы не просто весь текст всех уведомлений читать на экране, а разворачивать только те, что заинтересовали. Т.е. сделать у себя расширяемые и управляемые (с кнопками) уведомления. И хотелось бы, делать это без импорта дополнительных JAVA классов, если уж Embarcadero предоставляет нам возможность делать мосты, а Android SDK содержит все необходимые классы. К сожалению, я завис на своем проекте, и не могу сейчас предоставить готовый PAS код. Но вот, с чего бы я начал в первую очередь: 1. Взял пример работы с GSM из \Embarcadero\Studio\18.0\source\rtl\common\System.Android.Notification.pas; 2. Использовал порт \Embarcadero\Studio\18.0\source\rtl\android\Androidapi.JNI.Support.pas или выдернул последний из SDK 3. Изучил готовые примеры на Java, которые используют bigText и setAction; 4. Сделал бы свой Unit (компоненты я не научился пока хорошо делать) для работы с Big Smart Notifications (название сам придумал). Удачи в этом. Ваши исследования очень полезны для нас.
    1 балл
  10. haword

    Отображение в виде плиток

    использовать плавающие панели с html текстом вместо прорисовки колонок это извращение. при этом хз как это все себя поведет при 500 панелей. ну и стоимость сего добра то же не малая.
    1 балл
  11. Да, это легко реализовать. Проблема заключается в следующем: привязка к платформе, когда касается кастомного шрифта, все рушится. Поэтому я и предложил кроссплатформенное решение
    1 балл
  12. У меня всё сработало, внёс одно изменение (не считая изменений в путях sdk) Не правильно обновляется, потому что вы разместили класс в неправильной папке com.embarcadero\rtl\notifications\NotificationPublisher.class Должно быть com\embarcadero\rtl\notifications\NotificationPublisher.class и соответственно папка embarcadero должна лежать в папке com.
    1 балл
  13. var LJO: JObject; AM: JActivityManager; begin try LJO := TAndroidHelper.Activity.getSystemService(TJContext.JavaClass.ACTIVITY_SERVICE); AM := TJActivityManager.Wrap((LJO as ILocalObject).GetObjectID); Log('Try to kill ' + JStringToString(TAndroidHelper.Context.getPackageName())); AM.killBackgroundProcesses(TAndroidHelper.Context.getPackageName()); except Log('Can not Access Activity Service!'); end; end; Этот код у меня работает. Добавил разрешение: <uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" /> Еще есть такая тема
    1 балл
  14. вот батник на исполнение с генерацией classes.dex (в идеале) @echo off setlocal if x%ANDROID_SDK% == x set ANDROID_SDK="C:\Users\Public\Documents\Embarcadero\Studio\17.0\PlatformSDKs\android-sdk-windows" if x%JAVA% == x set JAVA="C:\Program Files\Java\jdk1.8.0_66\bin" set ANDROID_PLATFORM=%ANDROID_SDK%\platforms\android-23 set DX_LIB=%ANDROID_SDK%\build-tools\23.0.3\lib set EMBO_DEX="C:\Program Files (x86)\Embarcadero\Studio\17.0\lib\android\release\classes.dex" set FMX_JAR="C:\Program Files (x86)\Embarcadero\Studio\17.0\lib\android\release\fmx.jar" set PROJ_DIR=%CD% set VERBOSE=0 echo. echo COPY ORIGINAL fmx.jar copy %FMX_JAR% %PROJ_DIR%\fmx.jar" echo. echo UPDATE FILE NotificationPublisher.class %JAVA%\jar uf "fmx.jar" "com.embarcadero\rtl\notifications\NotificationPublisher.class" echo. echo CONVERTING FROM jar TO dex mkdir output\dex 2> nul if x%VERBOSE% == x1 SET VERBOSE_FLAG=--verbose call %DX_LIB%\dx.jar --dex %VERBOSE_FLAG% --output=%PROJ_DIR%\output\dex\test_classes.dex --positions=lines %PROJ_DIR%\fmx.jar echo. echo MERGING dex FILES echo.com.android.dx.merge.DexMerger java -cp %DX_LIB%\dx.jar com.android.dx.merge.DexMerger %PROJ_DIR%\output\dex\classes.dex %PROJ_DIR%\output\dex\test_classes.dex %EMBO_DEX% echo. del output\dex\test_classes.dex del output\jar\test_classes.jar rmdir output\jar echo. echo Now we have the end result, which is output\dex\classes.dex :Exit endlocal распаковать архив проверить пути к java, android sdk, delphi что не работает: обновление JAR файла (с оригинальным fmx.jar все генерируется) directory.rar
    1 балл
  15. java файл NotificationPublisher(java).rar class файл NotificationPublisher(class).rar fmx.jar файл переименован в rar fmx.jar.rar откомпилил файл вот так cls&javac -d "c:\users\ZuBy" "NotificationPublisher.java" -cp "android-19.jar";"android-support-v4.jar" потом просто заменил в jar архиве файл NotificationPublisher.class на новый (незнаю, правильно или нет) так делать не правильно, пробовал такой командой (источник) cls&jar uf fmx.jar "com.embarcadero\rtl\notifications\NotificationPublisher.class" ошибок не выдаёт, но файл имеет не правильную иерархию а вот так должно быть уже незнаю что делать
    1 балл
  16. я еще раз в этой теме приложу тестовый проект полностью рабочий под берлин с ресайзом ListViewTestBerlin.7z
    1 балл
  17. krapotkin

    OnUpdateObjects OnUpdatingObjects в Берлине

    Короче, нащупал линию поведения. поместил код в OnUpdatingObjects и поставил AHandled:=True; Срабатывает он теперь не при Items.Add, а при первом обращении к Item.Objects ! Будьте внимательны P.S. ItemAppearance можно ставить любой
    1 балл
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...