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

zairkz

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

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

  • Посещение

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

    12

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

  1. Like
    zairkz отреагировална Steepe_Hare в [Обзор] #3 ModernListView - динамическая подгрузка контента   
    Настоящий программист!
    Даже на выходных обновляет свой продукт
    P.S. Спасибо за ответы в личке
  2. Like
    zairkz отреагировална Равиль Зарипов (ZuBy) в [Обзор] #3 ModernListView - динамическая подгрузка контента   
    Ссылка: http://blog.rzaripov.kz/2016/12/3-modernlistview.html
    Автор: Зарипов Равиль @ZuBy
    Описание:  Реализация динамической подгрузки контента:
    Бесконечный скроллинг (например как лента в ВК) Паджинация/Пагинация (постраничная загрузка)
  3. Like
    zairkz отреагировална Andrey Efimov в Событие при входящем звонке   
    Со свежей головой. В дополнение к предыдущим замечаниям. Ну понеслась...
    Что это такое?
    BroadcastReceiver.Add('android.intent.action.READ_PHONE_STATE'); Зачем это?
    var telephonyService: JObject; telephonyManager: JTelephonyManager; ... begin outputResult:= #13#10; telephonyService := TAndroidHelper.Context.getSystemService(TJContext.JavaClass.TELEPHONY_SERVICE); telephonyManager := TJTelephonyManager.Wrap((telephonyService as ILocalObject).GetObjectID); Где определение статуса? (EXTRA_STATE_RINGING)
     
    В общем, я внёс некоторые правки в ваш код и всё работает, но далее только в раздел Ищу подрядчика или ищите того, кто вам бесплатно реализует вашу задачу (сомневаюсь, что такие найдутся).
    Call2.zip
  4. Like
    zairkz отреагировална Andrey Efimov в Событие при входящем звонке   
    Исходники - это файлы из корневой папки проекта, без подпапок, в которых собирается проект. Т.е. папка Android не нужна.
    Далее, по коду.
    Где у вас это?:
    procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin if Assigned(BroadcastReceiver) then BroadcastReceiver.Free; end; procedure TForm1.FormCreate(Sender: TObject); begin CreateBroadcastReceiver; end; Далее, на вибрацию нужно выставить пермишен "Vibrate" (на днях выложу на свой гитхаб, класс, упрощающий работу с вибрацией)
    Менять местами код в регистрации ресейвера, смысла нет, делайте так как и было.
    incomingCallNumber - вообще не понял, что это, где код, в котором вы заносите в эту переменную номер?
    По поводу глобальных переменных -это уже придирка, но лучше пишите их в классе, как поля.
     
    Вот в этом коде:
    if incomingCallNumber = 'номер телефона' then VibratorObj := SharedActivity.getSystemService(TJActivity.JavaClass.VIBRATOR_SERVICE); Vibrator := TJVibrator.Wrap((VibratorObj as ILocalObject).GetObjectID); Vibrator.vibrate(10); словите ошибку, возможно AV, если звонок будет просто с другого номера.
    Пока вроде всё, что бросилось в глаза, но уже ночь и мог что-то не углядеть. Правьте и пробуйте.
    Ваш архив перезалил, номер потёр.
     
    Итог: Плохо копируете код.
    Мой совет: Если не знаете, что делаете или просто не охото изучить представленные примеры, то лучше обратитесь в раздел Ищу подрядчика. Или можете попробовать помучить ещё форумчан, хотя вам дали примеры с избытком...
  5. Like
    zairkz отреагировална Andrey Efimov в Событие при входящем звонке   
    А с чего у вас будет срабатывать метод
    CheckPhoneCallState если вы его не зарегистрировали как OnReceive
    У вас вообще строчка закомментирована
    //BroadcastReceiver.OnReceive:= BroadcastReceiverOnReceive; и ещё, вы используете динамическую регистрацию ресейвера, значит по окончании работы приложения вам нужно разрегистрировать ресейвер. Ну и соответственно, работать динамическая регистрация будет только когда запущено приложение.
    Если вам необходимо использование только во время работы приложения, то лучше гляньте ссылку, которую дал вам Ярослав, там уже есть событие.
     
    Дополнение:
    А что за компонент вы используете? там при каждом Add перерегистрация происходит? Обычно регистрация в таком порядке происходит:
    BroadcastReceiver:= TCSBroadcastReceiver.Create(nil); BroadcastReceiver.OnReceive:= BroadcastReceiverOnReceive; BroadcastReceiver.Add('android.intent.action.PHONE_STATE'); BroadcastReceiver.Add('android.intent.action.READ_PHONE_STATE'); BroadcastReceiver.RegisterReceive; Вопросы снимаются, нашёл реализацию этого компонента на stackoverflow.
  6. Like
    zairkz отреагировална Andrey Efimov в Событие при входящем звонке   
    Ну, а что именно подчёркнуто? Если
    BroadcastReceiverOnReceive то и правильно, метода же нет у вас в классе, впишите свой
    CheckPhoneCallState  
    или вот гляньте ответ http://stackoverflow.com/questions/33609494/how-to-check-and-hag-up-reject-incoming-outgoing-calls-on-android-in-delphi, там как раз по этому компоненту и очень похоже на ваш код...
     
    АП.
    Кстати, у @Rusland в той теме, тоже метода не хватает...
  7. Like
    zairkz отреагировална Andrey Efimov в Событие при входящем звонке   
    Так...
    Значит пишите так:
    BroadcastReceiver:= TCSBroadcastReceiver.Create(nil); BroadcastReceiver.OnReceive := CheckPhoneCallState; BroadcastReceiver.RegisterReceive; BroadcastReceiver.Add('android.intent.action.PHONE_STATE'); BroadcastReceiver.Add('android.intent.action.READ_PHONE_STATE'); Не сработает, тогда добавляйте такой код
          в секцию private
    procedure BroadcastReceiverOnReceive(csContext: JContext; csIntent: JIntent);
          далее в секцию implementation
    procedure TForm1.BroadcastReceiverOnReceive(csContext: JContext; csIntent: JIntent); begin CheckPhoneCallState(csContext, csIntent); end;      
          в коде регистрации ресейвера
     
    BroadcastReceiver:= TCSBroadcastReceiver.Create(nil); BroadcastReceiver.OnReceive:= BroadcastReceiverOnReceive; BroadcastReceiver.RegisterReceive; BroadcastReceiver.Add('android.intent.action.PHONE_STATE'); BroadcastReceiver.Add('android.intent.action.READ_PHONE_STATE');  
  8. Like
    zairkz отреагировална fabiano Bom dia в In WebBrowser I can not select files.   
    I'm using WebBrowser to open the website. I can not select the file .. It does not work correctly. I click to select the File and nothing happens. The same happens with facebook I can not post photos. .
    How to solve it?
     
     
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      WebBrowser1.Navigate('https://www.facebook.com');
    end;
    end.


  9. Like
    zairkz отреагировална rareMax в Проиграть несколько аудиофайлов параллельно   
    Теоретически басс будет надежнее - т.к. опыта у него больше. Но это не значит что МедиаПлеер вам не подойдет.
     
  10. Like
    zairkz отреагировална Error в Проиграть несколько аудиофайлов параллельно   
    https://github.com/EmbarcaderoPublic/DelphiArcadeGames
    Не уверен, но вроде бы как, здесь сделано одновременное воспроизведение для разных платформ
  11. Like
    zairkz отреагировална Legioner в Сложности с трехвезнкой   
    Согласен, не пояснил все более открыто
    Библиотеки скачивал с различных ресурсов и закидывал в различные папки (системные папки и в папку проекта включительно)
    Даже добавлял в деплоймент (мало ли)
    К тому же ставил OpenSSL-Win32 и OpenSSL-Win64 (система 64-битная, приложение 32-битное)
    В общем перепробовал все советы всезнающего гугла
    Сообщение я прочитал и естественно загуглил на тот случай, если я что-то неправильно понял.
    После компиляции автоматически происходит исполнение (извините, если говорю что-то не так)
     
    Ко всему этому хочу добавить, столкнулся с данной проблемой только на Берлине. Да, можно вернуться на Сиетлл, но не хочу сдавать просто так (решение пригодится многим)
  12. Like
    zairkz отреагировална Error в Сходка в Питере   
    О, отлично, 3 человека уже готовы:)
  13. Like
    zairkz отреагировална #WAMACO в Сходка в Питере   
    Дайте знать, когда, где...
  14. Like
    zairkz отреагировална Brovin Yaroslav в Сходка в Питере   
    Я готов :-) 
  15. Like
    zairkz отреагировална Error в Сходка в Питере   
    Равиль Зарипов предложил отличную мысль - устроить сходку дельфистов в Питере, посидеть где-нибудь, пообщаться
    Собственно, кому интересно, отпишитесь в комментариях, можно будет в декабре устроить встречу
    Думаю надо хотябы 5-6 человек.
  16. Like
    zairkz отреагировална #WAMACO в [Обзор] #2 ModernListView - режим мультивыделения   
    Скоро такими темпами сможем увидеть ZuBy в Embarcadero!:))
    Все правильно делаете! Пишите больше! Я уже Ваш блог добавил в закладки!
    Ждем новых статей! и не только для Android, но и для iOS что-нибудь....
  17. Like
    zairkz отреагировална Равиль Зарипов (ZuBy) в [Обзор] #2 ModernListView - режим мультивыделения   
    надо же познакомить народ с возможностями ModernListView, зря писал что-ли?)
  18. Like
    zairkz отреагировална Равиль Зарипов (ZuBy) в [Обзор] #2 ModernListView - режим мультивыделения   
    Ссылка: http://blog.rzaripov.kz/2016/11/2-modernlistview.html
    Автор: Зарипов Равиль @ZuBy
    Описание: Как сделать режим мультивыделения в TListView

  19. Like
    zairkz отреагировална Brovin Yaroslav в [Обзор] #2 ModernListView - режим мультивыделения   
    оу оу оу, придержи коней, а то так скоро все темы напишешь и остальным не чего будет писать :-)))
  20. Like
    zairkz отреагировална krapotkin в Проектирование интерфейса   
    думаю, можно попробовать TPath
  21. Like
    zairkz отреагировална Alexander в Проектирование интерфейса   
    Что касается примера, я бы экран  просто нарисовал на канве, а при нажатии анализировал в какой цвет попадают координаты.  После этого соответсвующую границу "подсвечивал" серым градиентом - эффект нажатия. 
    TPath имеет прямоугольные границы, поэтому при нажатии в углах не те камни могут нажиматься
  22. Like
    zairkz отреагировална Error в Проектирование интерфейса   
    Нет никакой надобности рисовать самому, для определения попала точка в Path или нет есть метод TCanvas.PtInPath
  23. Like
    zairkz отреагировална Равиль Зарипов (ZuBy) в [Обзор] #0 ModernListView - знакомство   
    Ссылка: http://blog.rzaripov.kz/2016/11/0-modernlistview.html
    Автор: Равиль Зарипов @ZuBy
    Описание: Знакомство с ModernListView
  24. Like
    zairkz отреагировална Brovin Yaroslav в [Обзор] #0 ModernListView - знакомство   
    С первым почином
    UPD. А нет, уже с четвертым :-)
  25. Like
    zairkz отреагировална krapotkin в Перспективы RAD   
    Всеволод, я совсем не согласен с вашей гипотезой "сами разработчики виноваты"
    Начиная c XE4 всем говорили - волк, волк вот, программируйте на Андроид. А оно не работает.
    XE5, XE6, XE7, XE8 и все равно падает на ровных местах и никакой работодатель не хочет слушать, что я не знаю, почему (( 
    Править исходники Delphi квалификация не позволяет, да и слишком темная магия там ...
    Репутация сложилась, однако. С Сиэтла, наконец, программы перестали просто падать, а репу-то уже трудно поправить.
    Ну вот я сумел практически шантажом и обманом выкатить один проект на делфи в релиз. Но больше пока никто не соглашается выплатить мне 150000 для покупки апгрейда...
×
×
  • Создать...