Я разрабатываю приложение для Android, которое извлекает журнал вызовов и сохраняет его в текстовом файле. Я использую ContentObserver для наблюдения за изменениями и получения обновленной записи после изменения. Я могу правильно ввести записи, если у меня есть вызов промаха, входящий звонок и исходящий вызов, набрав номер из телефонной книги. Если я делаю исходящий вызов, щелкнув номер из журнала вызовов, метод onChange() называется трижды. OnChange() вызывается после того, как я выберем имя из журнала вызовов, прежде чем совершать вызов, чтобы получить предыдущее событие один раз. После того, как вызов сделан, исходящее событие извлекается дважды, полностью делая три записи. Пожалуйста, предложите мне решение. Спасибо!Получить обновленный журнал вызовов и сохранить его в файле
0
A
ответ
0
В котором URI зарегистрировал наблюдателя. Это android.provider.CallLog.Calls.CONTENT_URI? Если это так, метод onChange() будет вызываться только один раз.
Также, полагаясь на поставщиков контента, это не очень хорошая идея. См. http://android-developers.blogspot.com/2010/05/be-careful-with-content-providers.html. Вместо использования наблюдателей контента вы можете попробовать использовать широковещательный приемник с действиями android.intent.action.PHONE_STATE android.intent.action.NEW_OUTGOING_CALL
Смежные вопросы
- 1. Как создать журнал приложений и сохранить его?
- 2. Добавить журнал вызовов VOIP в журнал вызовов IOS
- 3. Получить вывод команды Symfony и сохранить его в файле
- 4. ANDROID: Как сохранить данные JSON в файле и получить его?
- 5. Получить Предварительный просмотр и сохранить его в файле PDF
- 6. Журнал вызовов android ContentResolver
- 7. Как сохранить журнал вызовов фиксированной телефонной линии в базе данных
- 8. Журнал вызовов стиля Android
- 9. Как обновить журнал вызовов
- 10. Как удалить журнал вызовов
- 11. Как сохранить журнал автодиалога asterisk
- 12. Добавление фальшивого вызова в журнал вызовов андроида
- 13. Как сохранить репозиторий проекта и обновленный источник?
- 14. Как получить вспомогательный метод в классе утилиты, чтобы использовать его журнал вызовов в log4net?
- 15. Обновленный CSS не отображается в объединенном файле
- 16. Получить флажок и сохранить его в IList
- 17. Сохранить NSArray в iCloud и получить его
- 18. Как сохранить обновленный список объектов?
- 19. NormalizationHelper - как сохранить его в файле
- 20. Динамический журнал регистрации вызовов в JVM
- 21. Сохранить обновленный объект в общем списке
- 22. как заменить строку (после чтения файла) и сохранить обновленный контент в новом файле?
- 23. Получить обновленный документ в MongoDB
- 24. Как исключить журнал в файле?
- 25. Извлечь функции из сигнала и сохранить его в файле
- 26. awk, чтобы заменить строку в текстовом файле и сохранить его
- 27. Phplot нарисовать изображение и сохранить его в файле
- 28. Как сохранить имя в файле cookie и повторить его?
- 29. Сделать массив из значений массива и сохранить его в файле
- 30. Найти позицию символа в файле и сохранить его позицию bash
Я видел ссылку, которую вы упомянули. Да, я пытался использовать широковещательный приемник раньше, когда телефон переходит в состояние IDLE, я написал функцию, которая извлекает журнал вызовов. Но проблема, с которой я столкнулся, заключается в том, что состояние IDLE вызывается дважды, делая две записи. И если для этого есть какое-либо решение, я хочу использовать широковещательный приемник, который слушает состояние телефона, и как только состояние телефона будет IDLE, я хочу запустить службу, которая извлекает журнал вызовов. Любое решение для этого было бы оценено. – vishnu