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

Rusland

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

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

  • Посещение

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

    26

Активность репутации

  1. Like
    Rusland отреагировална Равиль Зарипов (ZuBy) в Стилизованный компонент на базе нативного   
    порядок отрисовки компонентов на форме, сейчас нативные лежат всегда сверху
  2. Like
    Rusland отреагировална Равиль Зарипов (ZuBy) в Стилизованный компонент на базе нативного   
    ждать следующий релиз, там будет z-order вроде правильный для нативных и стилизованных
  3. Like
    Rusland получил реакцию от rareMax в Таймер в сервисе   
    cherezovmax, 
    uses AndroidApi.Log, // LOGI Androidapi.Timer, ... private { Private declarations } FTimerHandle: integer; FTimerCounter: integer; TimerInterval: integer; procedure StartTimer; procedure WaitComplete(TimerId: Integer); ... procedure TDM.AndroidServiceCreate(Sender: TObject); begin FTimerHandle := AndroidTimerCreate; FTimerCounter := 0; TimerInterval:=5000; end; function TDM.AndroidServiceStartCommand(const Sender: TObject; const Intent: JIntent; Flags, StartId: Integer): Integer; begin StartTimer; LogI('TJService.JavaClass.START_STICKY'); Result := TJService.JavaClass.START_STICKY; end; procedure TDM.StartTimer; begin LogI('... timer to be started'); AndroidTimerSetInterval(FTimerHandle, TimerInterval); AndroidTimerSetHandler(WaitComplete); LogI('+ Timer started'); end; procedure TDM.WaitComplete(TimerId: Integer); begin   LogI('WaitComplete procedure') end;  
  4. Like
    Rusland отреагировална Andrey Efimov в [Статья] [Android] Очередь событий Delphi приложения на Android   
    Ссылка: http://delphifmandroid.blogspot.ru/2016/09/delphi-android.html
    Автор: Андрей Ефимов
    Описание: Это маленькая заметка о том, какие события происходят, когда мы запускаем приложение на Android. В ней я покажу логи из LogCat (с описанием тестов, которые провёл) и мы выясним, какие же события происходят всегда, а какие нет.
  5. Like
    Rusland получил реакцию от Pax Beach в Фильтр по типу "облака тегов"   
    Можно наверное воспользоваться TRoundRect, изменив Fill Color и Stroke Color на #FF4B90BE и положить на него пару TText... будет похоже.

    Самое трудное придумать как их объединять в ряды.
  6. Like
    Rusland отреагировална Brovin Yaroslav в Получить голос из микрофона потоками   
    А обычный TAudioCaptureDevice не подходит? И почему указан кодек MP4 для записи аудио?
  7. Like
    Rusland отреагировална Pax Beach в Получить голос из микрофона потоками   
    ... или обычный TJMediaRecorder?
    Вот готовый пример записи микрофона в файл.
    Так не подойдет?
    А определение уровней звукозаписи для нормализации (normalization) — это обычно постпроцесс, выполняемый для всего файла записи.
     
  8. Like
    Rusland получил реакцию от azm_ezm_ivan в Получить голос из микрофона потоками   
    Не, тут никто не знает... )
    Ну может так еще попробуете:
    recorder := TJMediaRecorder.Create;  
  9. Like
    Rusland получил реакцию от Равиль Зарипов (ZuBy) в Получить голос из микрофона потоками   
    Не, тут никто не знает... )
    Ну может так еще попробуете:
    recorder := TJMediaRecorder.Create;  
  10. Like
    Rusland получил реакцию от Pax Beach в как из сервиса узнать, что приложение основное сейчас закрыто   
    брал отсюда 
     Интересно что в стандартном Androidapi.JNI.App.pas вроде те же функции описаны, но с ним не получается работать.
  11. Like
    Rusland отреагировална Andrey Efimov в Как изменить версию АПИ для компиляции проекта   
    1. Можно поставить и самую последнюю версию АПИ (на данный момент последняя версия АПИ 24 Android 7, но использовать рискованно, т.к. Студией официально заявлена поддержка только до версии АПИ 23) Google поддерживает обратную совместимость.
    2. Частично, выбор зависит от версии АПИ, пример: в "Build Tools, Revision 23.0.0" появилась официальная поддержка Android 6.0 (API level 23). Т.е. если используете АПИ 23, то Build Tools должны быть версии 23.0.0 или более поздней. Опять же поддерживается обратная совместимость. Подобную информацию можно посмотреть тут SDK Build Tools Release Notes
    Те же правила относятся и к SDK Tools. По умолчанию студия ставит версию 24.3.3 (19 АПИ)
    3. Версия только устанавливаемая вместе со студией! Буквально вчера удалось это на себе прочувствовать. По умолчанию ставится версия NDK r9c. Не обновляйте самостоятельно на последнюю версию, приложения перестанут запускаться на устройствах!
    4. Для внутренней работы студии с НДК? не знаю точного ответа...
    5. Изменить можно в файле AndroidManifest.template.xml
    6. Всё это техническая информация, которая позволяет гуглу выдавать списки приложений под устройство пользователя. Т.е. если у пользователя АПИ 19 устройство, а ваше приложение работает с версиями не ниже 20 АПИ, то этому пользователю не будут показывать ваше приложение.
     
    Пример приложения написанного с такими настройками:
    SDK 23 АПИ NDK r9c в приложении я мониторю версию АПИ, чтобы не пытаться выдать новый функционал из 23 АПИ для версии (например) 19 АПИ. разработка проводилась на устройстве с АПИ 19 Тесты прошли на всех версиях АПИ выше 4.4 Приложение: Wifi Info (Установки: активные/всего - 119/337)
    Надеюсь хоть немного смог объяснить, хотя сам ещё не до конца понимаю, что хорошо для студии, что плохо...
    p.s. Всё описанное выше, справедливо для RAD Studio Berlin
     
  12. Like
    Rusland получил реакцию от sargon в Фильтр по типу "облака тегов"   
    Можно наверное воспользоваться TRoundRect, изменив Fill Color и Stroke Color на #FF4B90BE и положить на него пару TText... будет похоже.

    Самое трудное придумать как их объединять в ряды.
  13. Like
    Rusland получил реакцию от Равиль Зарипов (ZuBy) в как из сервиса узнать, что приложение основное сейчас закрыто   
    брал отсюда 
     Интересно что в стандартном Androidapi.JNI.App.pas вроде те же функции описаны, но с ним не получается работать.
  14. Like
    Rusland отреагировална Pax Beach в После "сна" программа с сервисом не стартует   
    При таких параметрах SDK Manager у меня в Берлине не виснет:
    SDK

    NDK

    JAVA

     
  15. Like
    Rusland получил реакцию от Равиль Зарипов (ZuBy) в как из сервиса узнать, что приложение основное сейчас закрыто   
    ZuBy, огромное спасибо, выручил )
  16. Like
    Rusland отреагировална Равиль Зарипов (ZuBy) в как из сервиса узнать, что приложение основное сейчас закрыто   
    всего-то нужны было дописать
    procedure TForm9.Button2Click(Sender: TObject); // Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.JavaTypes, // Androidapi.JNIBridge, Androidapi.JNI.App, Androidapi.Helpers, Androidapi.JNI.ActivityManager; var ActivityServiceManager: JObject; FActivityManager: JActivityManager; List: JList; Iterator: JIterator; ri: JActivityManager_RunningServiceInfo; begin ActivityServiceManager := TAndroidHelper.Context.getSystemService(TJContext.JavaClass.ACTIVITY_SERVICE); FActivityManager := TJActivityManager.Wrap((ActivityServiceManager as ILocalObject).GetObjectID); List := FActivityManager.getRunningServices(MAXINT); Iterator := List.Iterator; while Iterator.hasNext do begin ri := TJActivityManager_RunningServiceInfo.Wrap((Iterator.next as ILocalObject).GetObjectID); with ListView1.Items.Add do begin Text := JStringToString(ri.service.getPackageName); Detail := JStringToString(ri.service.getClassName); end; end; end; ri.service.getPackageName - показывает родителя сервиса (т.е. приложение)
     

  17. Like
    Rusland получил реакцию от Pax Beach в как из сервиса узнать, что приложение основное сейчас закрыто   
    Виноват
    Это вот апи скачанные с интернета: AndroidApi.zip
    В uses 
    Androidapi.JNI.GraphicsContentViewText, // TJIntent (Receive Intent) Androidapi.JNI.JavaTypes, // JList Androidapi.JNIBridge, // ILocalObject Androidapi.JNI.App, // TJService Androidapi.Helpers, // StringToJString AndroidApi.Log, // LOGI Androidapi.JNI.RunningServiceInfo, // поиск запущенных приложений - https://stackoverflow.com/questions/34262554/how-to-check-if-a-service-is-running-in-delphi-10-seattle Androidapi.JNI.ActivityManager, // поиск запущенных приложений - http://blog.csdn.net/flcop/article/details/17190009uses b:boolean;  
  18. Like
    Rusland получил реакцию от Error в Повтор акции C++Builder® 10.1 Berlin Starter Edition   
    https://www.embarcadero.com/ru/products/delphi/starter/promotional-download
  19. Like
    Rusland отреагировална AngryOwl в Получить голос из микрофона потоками   
    С удовольствием бы, но уж очень все подвязано на рабочий проект, а вырезать фрагменты - не получится быстро.
    Если будет достаточно свободного времени - постараюсь оформить как-нибудь.
    Смотрите форум un4seen.
  20. Like
    Rusland отреагировална Равиль Зарипов (ZuBy) в Многоязыковое приложение   
    вот недавно @AlexG выкладывал решение
  21. Like
    Rusland отреагировална Andrey Efimov в Многоязыковое приложение   
    Можно использовать возможности Android API, а можно сделать всё самостоятельно, через какой-нибудь ini файл например
    Пример использования АПИ: Автоматическая смена названия приложения в зависимости от языка системы
    Пример нужно немного расширить: добавляем переводы меню и всего, что хотим в strings.xml, после этого, при запуске приложения получаем ресурсы из автоматически выбранного strings-**.xml.
    Вот так выглядит функция получения ресурса:
    class function TLoadR.LoadRString(const value: String): String; var resourceId: integer; begin resourceId := TAndroidHelper.Activity.getResources.getIdentifier (StringToJString(value), StringToJString('string'), TAndroidHelper.Activity.getPackageName); Result := JStringToString(TAndroidHelper.Activity.getResources.getString(resourceId)); end;  
    Внимание! Не пытайтесь использовать функцию TAndroidHelper.GetResourceID, в ней я обнаружил багу. В след. релизе поправят. Предложенный выше код, полностью рабочий.
     
  22. Like
    Rusland отреагировална Равиль Зарипов (ZuBy) в Многоязыковое приложение   
    1) можно использовать DeviceInfo
    2) все зависимости есть в модуле выше
    if TPlatformServices.Current.SupportsPlatformService(IFMXLocaleService, IInterface(LocaleService)) then DeviceInfo.diLang := LocaleService.GetCurrentLangID;  
  23. Like
    Rusland отреагировална Error в Повтор акции C++Builder® 10.1 Berlin Starter Edition   
    Delphi тоже еще раздают вроде...
  24. Like
    Rusland получил реакцию от Andrey Efimov в как из сервиса узнать, что приложение основное сейчас закрыто   
    Оставлю здесь ссылочку как полуответ на вопрос
  25. Like
    Rusland отреагировална rareMax в Компоненты для работы с сетью   
    Все там же: System.Net.Socket
×
×
  • Создать...