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

Fedor K

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

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

  • Посещение

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

    17

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

  1. Иконка изменится внутри приложения в рамах текущего контекста до ее завершения. С других приложений и в системе ничего не поменяется (см. прикрепление).

    Чтобы не влиять на другой функционал, достаточно сделать следующее:

        //запоминаем ид по умолчанию
        lDefaultId := TAndroidHelper.Context.getApplicationInfo.icon;
        //устанавливаем нашу кастомную иконку
        TAndroidHelper.Context.getApplicationInfo.icon := lId;
        //создаем локальное уведомление
        NotificationCenter.PresentNotification(lNotification);
        //возвращаем обратно
        TAndroidHelper.Context.getApplicationInfo.icon := lDefaultId;

    п.с. Если такой вариант не устраивает, всегда можно написать class helper for TBaseNotificationCenter и использовать классы JNotificationCompat_Builder, JNotificationManager, JNotification. Справка из developer.android.com.

    Test.png

  2. В 02.09.2016 в 09:59, Pax Beach сказал:

    Коллеги, есть ли успехи в решении этого вопроса?

    Поделитесь опытом плиз.

    Чтобы не лезть в исходники, можно сделать так для Android:

    1. В Deployment : добавляешь нужную картинку X.png и устанавливаешь у картинки "Remote Path" "res\drawable\";

    2. В коде перед созданием уведомления добавляешь:

    const
        IMAGE = 'drawable/X'; //расширение картинки не указывается
    var
        lId : Integer;
    begin
        lId := TAndroidHelper.Context.getResources().getIdentifier(
            StringToJString(IMAGE),
            StringToJString('drawable'),
            TAndroidHelper.Context.getPackageName);
        TAndroidHelper.Context.getApplicationInfo.icon := lId; //именно отсюда потом берется Id картинки для локального уведомления

    *Проверял на Android 4.4, в более поздних версиях могут быть различия, версия IDE =  Delphi 10 Seattle.

    **В прошивках типа MIUI код выше может не работать из-за жестокого кеширования.

  3. 9 часов назад, zekelive сказал:

    Не совсем так, в FormShow не работает. работает при нажатии на кнопку. когда форма уже загрузилась. предполагаю что получить доступ к файлам в deployment можно только после полной загрузки формы. событие формы oncreate не пробовал. но думаю что будет аналогично с шоу

    Загрузка картинки успешно работает в событии OnShow (использовал Ваш пример загрузки). Покажите пожалуйста весь код вашего обработчика OnShow. На Андроиде вся работа с Bitmap должна проходить в основном потоке либо через синхронизации с основным.

  4. Недавно была задача реализовать похожее, ПК и Мак разделял океан. Очень просто для этого использовать LogMeIn Hamachi. Для 5-ти пользователей используется бесплатно. Задержка не заставила себя ждать, но все реально.

  5. Для сравнения 2-х строк хорошо подходит алгоритм Расстояние Левенштейна.  Использовал его реализацию на FMX для поиска по словарям при ошибочном вводе, используя ошибку = 2. Про производительность и пример реализации можно посмотреть тут.

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