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

Антон Мякотин

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

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

  • Посещение

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

  1. В 23.10.2019 в 16:30, r@di0 сказал:

    Так не работает?
    setSound(Uri.parse("android.resource://" + this.mContext.getPackageName() + "/raw/sound"));
    и добавить файл sound в Deployment (Remote Path: res\raw\)

    Взял файл NotificationPublisher.java из архива, вроде скомпилировался. По крайней мере при распаковке fmx.jar там свежий NoificationPublisher.class

    Но звук не меняется.

  2. Есть продвижения. Изначально создавались classes.dex, fmx.jar но оказывается ява компилятор ругался, ему не нравились пути при запуске в параметрах из переменных. Прописал напрямую: %JAVA%\javac -d "%PROJ_DIR%" "%PROJ_DIR%\com\embarcadero\rtl\notifications\NotificationPublisher.java" -cp "F:\Program Files\Embarcadero\Studio\20.0\PlatformSDKs\android-sdk-windows\platforms\android-29\android.jar";"F:\Program Files\Embarcadero\Studio\20.0\lib\android\debug\android-support-v4.jar"

    Теперь не может подключить библиотеки видимо, как ее добавить и в каком файле искать этот класс?

     

    
    R:\fmx>я╗┐@echo off
    "я╗┐@echo" не является внутренней или внешней
    командой, исполняемой программой или пакетным файлом.
    
    R:\fmx>setlocal
    
    R:\fmx>if x == x set ANDROID_SDK="F:\Program Files\Embarcadero\Studio\20.0\Platf
    ormSDKs\android-sdk-windows"
    
    R:\fmx>if x == x set JAVA="C:\Program Files\Java\jdk1.8.0_60\bin"
    
    R:\fmx>set ANDROID_PLATFORM="F:\Program Files\Embarcadero\Studio\20.0\PlatformSD
    Ks\android-sdk-windows"\platforms\android-29
    
    R:\fmx>set DX_LIB="F:\Program Files\Embarcadero\Studio\20.0\PlatformSDKs\android
    -sdk-windows"\build-tools\29.0.0\lib
    
    R:\fmx>set EMBO_DEX="F:\Program Files\Embarcadero\Studio\20.0\lib\android\debug\
    classes.dex"
    
    R:\fmx>set FMX_JAR="F:\Program Files\Embarcadero\Studio\20.0\lib\android\debug\f
    mx.jar"
    
    R:\fmx>set PROJ_DIR="R:\fmx"
    
    R:\fmx>echo COMPILLING NotificationPublisher.java
    COMPILLING NotificationPublisher.java
    
    R:\fmx>"C:\Program Files\Java\jdk1.8.0_60\bin"\javac -d ""R:\fmx"" ""R:\fmx"\com
    \embarcadero\rtl\notifications\NotificationPublisher.java" -cp "F:\Program Files
    \Embarcadero\Studio\20.0\PlatformSDKs\android-sdk-windows\platforms\android-29\a
    ndroid.jar";"F:\Program Files\Embarcadero\Studio\20.0\lib\android\debug\android-
    support-v4.jar"
    R:\fmx\com\embarcadero\rtl\notifications\NotificationPublisher.java:17: error: p
    ackage com.embarcadero.firemonkey does not exist
    import com.embarcadero.firemonkey.FMXNativeActivity;
                                     ^
    R:\fmx\com\embarcadero\rtl\notifications\NotificationPublisher.java:243: error:
    cannot find symbol
                newIntent = new Intent(context, FMXNativeActivity.class);
                                                ^
      symbol:   class FMXNativeActivity
      location: class NotificationPublisher
    R:\fmx\com\embarcadero\rtl\notifications\NotificationPublisher.java:307: error:
    cannot find symbol
                    ChannelsManager channelsManager = new ChannelsManager(context);
                    ^
      symbol:   class ChannelsManager
      location: class NotificationPublisher
    R:\fmx\com\embarcadero\rtl\notifications\NotificationPublisher.java:307: error:
    cannot find symbol
                    ChannelsManager channelsManager = new ChannelsManager(context);
                                                          ^
      symbol:   class ChannelsManager
      location: class NotificationPublisher
    4 errors
    
    R:\fmx>pause
    Для продолжения нажмите любую клавишу . . .

     

  3. Всем доброго времени суток! Не могу победить замену стандартного звука в Delphi 10.3. Push реализовал штатными средствами, когда в параметрах проекта можно задать JSON с Firebase. Отредактировал  NotificationPublisher.java, заменил строку на .setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM)), а звук все равно стандартный. Скачал архив FMX с поста выше, отредактировал пути, при запуске install.bat появляются два новых файла: classes.dex, fmx.jar. Их копирую в папку с проектом, в Deployment отключаю старый classes. Пробовал отключать fmx.dex.jar и добавлять fmx.jar. Пробовал не отключать а просто добавлять в папку fmx.jar. Результата нет, воспроизводится стандартный Push. Если использовать fmx.jar и classes.dex из поста выше приложение висит и не открывается. Папки из архива удалил, не понял их сути, там ссылки на прямой каталог студии. Файл NotificationPublisher.java прикрепил, там большие отличия от файлов старых версий. Push отправляю JSON из приложения ARC для Chrome.

    { "notification": {
       "title": "Проверка",
      "text": "Доставки",
      "icon":"ic_launcher",
      "color":"Green"
       },
      "data":{
      "sound":"alarm"},
       
         "to" : "Токен с FireBase"

    Параметр Sound как только не отправлял и из notification, и из data. Но по идее при setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM)) должна воспроизводиться мелодия будильника, а не стандартного уведомления. 

     

    У кого был такой опыт, что я делаю не так? Спасибо.

    NotificationPublisher.zip

     

    P.S. Вот инструкция по Push в 10.3 http://docwiki.embarcadero.com/RADStudio/Rio/en/Firebase_Android_Support

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