|
Прием звонка
|
|||
---|---|---|---|
#18+
Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31.
Пишет Non-static method listen cannot be referenced from a static context Куда static писать? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2017, 00:08 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Со скобками разобрался. Остался listen ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2017, 01:23 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
wadman, Я как понял замахнулся на слона. Решил разбирать слона на части. 1.) Сервис, который живет после выхода из приложения получился. 2.) Сервис, который живет после перезагрузки смартфона пока нет. Код: java 1. 2. 3. 4. 5. 6.
Не пойму, как запустить BootBroadcast (прописал в минифесте, как BOOT_COMPLETED), который запустит Сервис 3.)В сервисе реализовать слушателя состояния смартфона и выковыривать входящий номер Или я создал Широковещательный приемник BootBroadcast, который запустит Сервис после перезагрузки? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2017, 13:47 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
JavaStudentпрописал в минифесте, как BOOT_COMPLETED Как-то сложно гадать по кофейной гуще... ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2017, 14:12 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
Я столкнулся с другой задачей. При перезагрузке смартфона, надо как-то еще к MyService подключится... И еще в уведомление сообщения закидывать, мол сервис работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2017, 14:51 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Тут почитай про сервисы https://www.google.com/search?q=startandroid startservice ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2017, 15:47 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
wadman, читаю там и тут, везде где попадается. Я правильно понял, что мне нужно сделать: 1) Сервис, который крутится в смартфоне и ждет сигнала на отработку 2) Широковещательный приемник в сервисе, который ждет звонок и запускает отработку 3) Отсылка POST запроса из сервиса, когда Широковещательный приемник обнаружил звонок 4) Определение номера звонка 5) Широковещательный приемник в сервисе, который запускает сервис после перезагрузки смартфона 6) Приложение, которое запускает, и останавливает сервис. Попробую по кускам сделать. Пока сервис мой вылетает, когда из него шлю POST запрос. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2017, 16:37 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Задача не понятна пока что. Но в принципе описано верно: приемник бутлоад стартует слушателя звонков. Само приложение тоже может запускать слушателя. Слушатель уже может запускать нужные ему сервисы по событиям запускать. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2017, 17:32 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
JavaStudentПишет Non-static method listen cannot be referenced from a static context Куда static писать?1. Создать объект TelephonyManager tm; 2. Юзать его методы. 3. Прием входящих звонков сторонними приложениями заблокирован, начиная с Android 6 "в целях безопасности". До 6 версии можно. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2017, 20:26 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
wadman, Задачка простая. Я написал программу в которой нужно регистрировать заявки, в том числе и вводить телефонные номера. Набирать клиентам, сотрудникам, писать смс и.т.д. Еще их 3 номера телефона. Смотреть на этого сотрудника страшно. 2 гарнитуры в 2 ушах.... Хочу попробовать сделать так, чтобы сотрудник не брал смартфон в руки...... И номер не списывал со смартфона. До набора номера мне еще далеко, а вот передать номер входящего звонка в базу и обработать его, я как понимаю смогу. С сервисом разобрался. Пытаюсь подсунуть вместо простого сервиса вот этот. Это сервис Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Это класс Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
MainActivity откуда запускаю сервис 2 кнопки... Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
Пока ничего не понимаю. Разбираюсь. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2017, 22:23 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Нашел косяк. Пытаюсь вместо сервиса подсунуть широковещателя. Надо запустить из сервиса широковещателя.... и слушать его. Ошибку обнаружил в манифесте, когда пытался широковещателя назвать сервисом. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2017, 22:44 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Пытаюсь объявить в сервисе слушателя Код: java 1. 2. 3. 4. 5. 6. 7.
Ошибки лезут. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.11.2017, 22:59 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Ошибок нет. Но слушателя не знаю, как проверить. Чего слушает? Где слушает? Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Подскажите, куда копать? Мои строчки: Код: java 1. 2. 3. 4.
Может тут чего не так? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2017, 12:51 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Там оказалось все просто. Слушатель регистрируется либо в манифесте, либо в приложении. Дальше он живет своей жизнью. Если его не прибьет система... Если в манифесте, то я не понял, как его отключать. Номер телефона ловит на ура и отсылает POST запросом. Набор номера и отсылка sms, думал не справлюсь с permission или вообще нельзя, но оказалось 2 строчками в коде и 2 строчками в манифесте... Это класс слушателя Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34.
Регистрация слушателя из Activity Код: java 1. 2.
Манифест: Код: java 1. 2. 3. 4. 5. 6. 7. 8.
Всем спасибо ! Без вас не справился бы. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2017, 19:59 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Система вышибает такого слушателя, если приложение закрыто. Какое-то время живет слушатель, потом выносит. Я как понял, из-за того, что слушателя регистрирую из Activity. Кто знает как сервис сделать слушателем? Попробую зарегистрировать слушателя при создании сервиса. Если регистрировать его через манифест, то как его отключать? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 15:30 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Объявляй в манифесте свой BrodcastReciever - в него будешь принимать сообщения. Из него в течение 4 сек ты должен вывалиться. А то приложение упадет. Соответственно в BrodcastReciever ты должен или стартовать сервис через intent или передавать сообщение через EventBus в singleton ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 16:28 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
http://startandroid.ru/ru/uroki/vse-uroki-spiskom/165-urok-100-service-intentservice-foreground-avtozagruzka-servisa.html https://guides.codepath.com/android/Starting-Background-Services ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2017, 16:43 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Oleg Shishkin, Я запутался. BroadcastReceiver запустил из сервиса. BroadcastReceiver должен кинуть номер телефона. Сервис должен принять номер и отработать в потоке запрос к MySQL. Еще надо запустить таймер в потоке, который будет запускать запрос к MySQL отсылать sms. Все работает по отдельности. BroadcastReceiver, Timer, Service, POST запрос к mySQL, отсылка sms. Надо научиться кидаться номером телефона в сервис... Есть надежда, что может система не убьет BroadcastReceiver, если жив Servise, который его запустил. И понять кто кого запускает. ковыряю https://habrahabr.ru/post/265159/ ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2017, 01:21 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40.
День утра мудрее. Пойду спать. 2 дня битвы позади. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2017, 02:14 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
JavaStudent Код: java 1.
context вполне сгодится. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2017, 09:34 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
context вводил, он подчеркивается. Попробую context.startService(new Intent(context, MyService.class).putExtra(str, 1)); Я до конца не понял кто кого поднимает. Читал что BroadcastReceiver долго не живет, нужен Service. А Service получил, сработал, отвалил. Я сейчас добился, что BroadcastReceiver переживает перезагрузку, выход из приложения, 1 сутки не вылетает. Сейчас надо научиться в сервис подсовывать задачки на выполнение, и выполнять задачи по таймеру слушать MySQL. Пока отсылку номера делает BroadcastReceiver, хочу переложить эту задачку на Service. И разобраться откуда и кого запускать. Сейчас: Activity запускает Service, Service запускает BroadcastReceiver слушателей CALL,SMS,BOOT BroadcastReceiver шлет Intent Service, Service принимает и отрабатывает. Если BroadcastReceiver умрет, то Service не сработает. Если Service умрет, то BroadcastReceiver(ы) ни к чему... Приемник убит. Хочется их связать, чтобы умирали, то вместе и с предсмертной запиской. Убили, работать не будет. Задача управлять 3 задачками не беря смарфон в руки. Набирать номер, рассылка cmc , пересылать входящий номер для ввода в базу данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2017, 12:35 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
JavaStudentЧитал что BroadcastReceiver долго не живет Он запускается только при необходимости (при получении события) и ему дается несколько секунд жизни на всёпровсё. Чтобы понять, как оно работает и живет, можно создать пустой приемник, который просто кидает в лог события старта и запустить в отладке на телефоне. Потом добавить запуск сервиса, который пишет в базу и тоже с логом. Помимо встроенного слушателя логов в студии есть внешний android monitor. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2017, 12:54 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Согласен. Что сначала надо набросать болванку. Отработать вкл и выкл всего и всех. Я плохо понял Intent ы. Пойду изучать мат.часть... Наскоком получилось. Но почему работает не пойму. И пока в service задачку из слушателя не получилось закинуть. p.s. Если точно знаешь, кто виноват - не выдавай себя.)) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2017, 19:19 |
|
Прием звонка
|
|||
---|---|---|---|
#18+
Я сделал еще одного слушателя Alarm extends BroadcastReceiver. Он проверяет каждые n минут и если сервис убили, запускает его. if (!isRunning(context)) { context.startService(new Intent(context, MyService.class)); } После проверки isRunning(context) запустим задачку... сегодня попробую. Есть разница где находится слушатель в отдельном файле или вложен в service? (intent к Service пишется по другому, в манифесте receiver регистрируется по другому, а еще подводные камни?) Alarm extends BroadcastReceiver я сделал внутри Service, есть смысл перенести слушателя LISTEN_CALL_STATE туда же. Или без разницы? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2017, 13:57 |
|
|
start [/forum/search_topic.php?author=eugene.yuriev&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
181ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
1ms |
others: | 195ms |
total: | 510ms |
0 / 0 |