Мое приложение имеет вкладки панели действий с тремя фрагментами (фрагмент из 1 списка со списком запущенных процессов, информация о двух батареях и памяти, 3-только текст) , Он отлично работает, без ошибок на эмуляторе, но на реальном устройстве он начинает нормально, я несколько раз просматриваю вкладки, а затем неожиданно затягивает закрытие. Мой телефон не отображается среди устройств adb, поэтому я не знаю, есть ли ошибки в logcat. В чем может быть проблема?Android-приложение закрывается на реальном устройстве, но работает на эмуляторе
ответ
Сначала включите отладку на телефоне. Это можно найти в настройках.
Есть несколько вещей, которые могут вызвать сбой приложения на устройстве:
, например: ориентации экрана; на эмуляторе ваш экран никогда не вращается, но на устройстве экран может вращаться непреднамеренно. Если приложение является прототипом, некоторые вещи могут ошибиться при вращении.
Вы должны начать разрешив отладку, так что вы можете точечную проблему
Я пробовал включить отладку, но телефон еще не был замечен, и что касается ориентации экрана, я вообще не двигал телефон, поэтому не думаю, что это причина. –
. Какую операционную систему вы используете для разработки? – jeremyvillalobos
Я использую Windows 7 –
- 1. textCapSentences работает на эмуляторе, но не работает на реальном устройстве
- 2. Javascript работает на эмуляторе, но не работает на реальном устройстве
- 3. IntentService работает на эмуляторе, но не на реальном устройстве
- 4. Ошибка приложения на эмуляторе, но он работает на реальном устройстве
- 5. App работает отлично на эмуляторе, но не на реальном устройстве
- 6. Android App не работает на эмуляторе, но на реальном устройстве
- 7. Приложение работает нормально на эмуляторе, но падает на реальном устройстве
- 8. сеанс cookie работает на эмуляторе, но не в реальном устройстве
- 9. Приложение работает в эмуляторе, но не на реальном устройстве
- 10. FCM регистрации работает в эмуляторе, но не на реальном устройстве
- 11. Изображение отображается на эмуляторе, но не на реальном устройстве
- 12. Анимация, показывающая на эмуляторе, но на реальном устройстве
- 13. Android ListView не отображается на реальном устройстве, но на эмуляторе
- 14. Виджет Android работает только на эмуляторе не на реальном устройстве
- 15. Почему FLAG_ACTIVITY_NO_HISTORY не работает на устройстве, но работает на эмуляторе?
- 16. Android C2DM - работает в реальном устройстве, но не в эмуляторе
- 17. Приложение работает в эмуляторе, но сбой в реальном устройстве
- 18. Android HttpResponse - работает в эмуляторе, но не работает на устройстве
- 19. Приложение работает на эмуляторе, сбои на устройстве
- 20. SQLite DatabaseUtils.queryNumEntries не работает на реальном устройстве, но работает на эмуляторе
- 21. Отладка не работает на эмуляторе Nougat, но работает на реальном устройстве KitKat
- 22. Тост не работает на реальном устройстве, но отлично работает на эмуляторе
- 23. Parse Notification работает на эмуляторе, но не работает на реальном устройстве
- 24. ./gradlew connectedCheck работает на эмуляторе, но не работает на реальном устройстве
- 25. CreatePatternBrush/Ellipse не работает на устройстве WinMobile, но на эмуляторе
- 26. AlarmManager хорошо работает в эмуляторе, но не в реальном устройстве
- 27. Android SQLiteDatabase работает с эмулятором, но не на реальном устройстве
- 28. Отображение карты Google на эмуляторе, но не на устройстве
- 29. Facebook приложение Android работает на эмуляторе, но не на устройстве
- 30. Android ListView работает на эмуляторе, но не на устройстве
Android имеет «защитную систему», которая пытается заставить закрыть приложение, которое его UI (основной поток) не реагирует в течение 5 секунд. Зависит от вычислений и процессов, которые вы делаете в своем приложении, и о мощности обработки, которые у вас есть (какие изменения на эмуляторе и на реальном устройстве), поток пользовательского интерфейса приложения может быть «занят» в течение 5 секунд, в результате чего андроид попытается закрыть его. –
Thx, и каково могло быть решение в такой ситуации? –
Если вы делаете много расчетов в своем приложении, в результате чего пользовательский интерфейс застревает, вы можете использовать новый поток для этих вычислений или даже проще (по-моему ...), используя 'AsyncTask', который объяснил [здесь ] (http://developer.android.com/reference/android/os/AsyncTask.html). –