|
Android:что не так с Broadcast receiver?
|
|||
---|---|---|---|
#18+
В продолжении http://www.sql.ru/forum/1033973/android-ustanovit-sobytiya-v-alarmmanager-posle-rebuta-ustroystva] этой темы класс, который получет уведомление системы о перезагрузке (прошу прощения за разметку, ADT такое творит) класс перебирает курсор и запихивает данные в AlarmManager ( new AlarmTask ....) Код: 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. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103.
класс Ararmtask Код: 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. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90.
вопрос: когда я вызываю вот так (просто по клику на button, например) - работает! ура! Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
когда перегружаю смарт - класс AuroraAlarmsSetter не отрабатывает срабатывает только тогда, когда загружаю приложение (видно по логам), но AlarmManager, сцуко, не отрабатывает ни в том, нИ в том случае. WTF? манифест Код: xml 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.
и еще, подскажите, как можно перегрузить AVD? или только вкл/выкл ? спс ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2013, 20:10 |
|
Android:что не так с Broadcast receiver?
|
|||
---|---|---|---|
#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. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83.
зы - имхо, тот баран, который придумал январь начинать с 0 - думал явно жопой ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2013, 10:09 |
|
Android:что не так с Broadcast receiver?
|
|||
---|---|---|---|
#18+
стоит ничего не ответить как человек сам разберется :-) з.ы. кусок с проходом по курсору - жесть. 1) нафига проверять его на null? 2) нафига проверять на кол-во записей 3) зачем проверять вернул ли cursor.moveToFirst() true, если уже проверили, что записей больше нуля? ты пессимист? вся порнография выше заменяется строчками Код: java 1. 2. 3. 4.
з.з.ы. зачем тебе куча Runnable, если ты их вызываешь напрямую, а не асинхронно? на всякий случай? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2013, 10:51 |
|
Android:что не так с Broadcast receiver?
|
|||
---|---|---|---|
#18+
chpasha, хоть кто то ответил спс по курсору - это все ради безопасности. типа хороший стиль программирования...я ж нуб в яве - что буржуи пишут - то и принимаю на веру. по кол-ву записей - их может быть = 0 - тогда и не бергаемся а moveToFirst - для организации цикла, а иначе - ошибка что то типа illegal argument position bla bla bla не помню по поводу Код: java 1. 2. 3. 4.
спс - гляну по поводу runnable - ну так хз чем может мой андроид ща быть занят, поэтому в отдельном потоке выполняю как то так ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2013, 12:43 |
|
Android:что не так с Broadcast receiver?
|
|||
---|---|---|---|
#18+
VladislavVVchpasha, хоть кто то ответил спс по курсору - это все ради безопасности нету никакой безопасности, запрос не может вернуть null, будет пустой курсор. VladislavVVпо кол-ву записей - их может быть = 0 - тогда и не бергаемся лишняя проверка VladislavVVа moveToFirst - для организации цикла, а иначе - ошибка что то типа illegal argument position bla bla bla не помню курсор после создания находится на позиции "до первой записи". moveToNext делает в этой ситуации тоже самое, что moveToFirst. moveToFirst нужен совсем для другого, а именно для возвращения в начало. VladislavVVwhile (cursor.moveToNext()) только так и надо. следите за "правильными" ответами на stackoverflow - там тусуются такие люди, что соврать не дадут, а не за всем, что по-английски пишут. VladislavVVпо поводу runnable - ну так хз чем может мой андроид ща быть занят, поэтому в отдельном потоке выполняю это ты так думаешь. runnable.run() выполняется в том же потоке линейно. кстати это тебя и спасло. читаем: apiA BroadcastReceiver object is only valid for the duration of the call to onReceive(Context, Intent). Once your code returns from this function, the system considers the object to be finished and no longer active. This has important repercussions to what you can do in an onReceive(Context, Intent) implementation: anything that requires asynchronous operation is not available, because you will need to return from the function to handle the asynchronous operation, but at that point the BroadcastReceiver is no longer active and thus the system is free to kill its process before the asynchronous operation completes. т.е. никаких асинхронных операций там быть не должно. как только происходит возврат из метода, процесс будет в скорости убит (а твои потоки еще шуршат). Если нужно делать что-то асинхронно, нужно старовать сервис из броадкаста. но как я уже сказал, твои вызовы run() линейны, так что Runnable в этой ситуации просто бесполезны. если бы ты их запускал правильно, они бы были даже вредны - не все таймеры успели бы установиться (а то и вовсе ни один не успел бы). ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2013, 13:10 |
|
Android:что не так с Broadcast receiver?
|
|||
---|---|---|---|
#18+
chpasha, спс за советы! прислушаюсь! ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2013, 18:30 |
|
|
start [/forum/topic.php?fid=13&fpage=28&tid=1331766]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
69ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
others: | 272ms |
total: | 422ms |
0 / 0 |