Перейти до основного вмісту

Журнали збоїв

Огляд​

Журнали збоїв є цінними діагностичними інструментами, які допомагають розробникам виявляти та виправляти проблеми та помилки, що спричиняють збій програми або її несподівану поведінку. Можна ділитися журналами зі свого пристрою Android з командою розробників OsmAnd. Наразі користувачі iOS мають лише один тип журналу збоїв для надсилання.

Журнали збоїв та журнали застосунку​

OsmAnd дозволяє надсилати розробникам два типи даних:

  • Журнали збоїв. Генеруються, коли програма OsmAnd стикається з критичною помилкою або винятком, що спричиняє її збій. Ці журнали надають детальну інформацію про стан програми під час збою, включаючи дані збірки, трасування стека, повідомлення про помилки та інші відповідні деталі.
  • Журнали поточного сеансу/застосунку. Запис потоку журналів OsmAnd, що фіксує різні події та повідомлення. Ці журнали допомагають розробникам відстежувати поведінку програми, відстежувати потік виконання, трасувати конкретні дії та досліджувати проблеми, не пов'язані зі збоями. Журнали Logcat зазвичай містять записи активності з моменту останнього запуску програми.
Ваша приватна інформація

Будьте обережні під час надсилання журналів застосунку, оскільки вони можуть містити приватну інформацію, таку як місцезнаходження пристрою, пошукові запити, результати побудови маршруту та навігаційні дані.

Надсилання журналів з програми OsmAnd​

Send crash logs from Android 1 Send crash logs from Android 2

  1. Перейдіть до Меню → Довідка → Надіслати журнал збоїв або Надіслати вміст журналу (Надіслати поточний журнал застосунку на iOS). Залежно від вашої ситуації, виберіть відповідний тип журналу. Ви можете звернутися до розділу Журнали збоїв та журнали застосунку для отримання детальної інформації про відмінності між типами журналів.
  2. У спливаючому меню виберіть Gmail або бажану програму електронної пошти. Ми рекомендуємо надсилати журнали на адресу support@osmand.net.
  3. Натисніть кнопку Надіслати.

Гістограма купи для проблем з пам'яттю (Android)​

Тільки Android

Гістограма купи — це таблиця, яка показує, чим заповнена Java-пам’ять застосунку: назви класів, кількість об’єктів і їхні розміри. Вона допомагає розробникам з’ясувати, що саме споживає пам’ять, коли застосунок сповільнюється, зависає або закривається через деякий час. Вона не містить ваших місцезнаходжень, назв треків чи пошукових запитів. OsmAnd створює повний дамп пам’яті на пристрої, перетворює його на гістограму та одразу видаляє дамп.

Створення дампу заморожує застосунок на 5–10 секунд. Якщо торкнутися екрана в цей час, Android може показати повідомлення OsmAnd не відповідає. Саме тому автоматичний збір вимкнено за замовчуванням.

Коли вмикати:

  • OsmAnd закривається самостійно або знову й знову показує не відповідає, особливо після певного часу використання або під час відкриття пошуку, карти з великою кількістю POI чи Моїх місць з великою кількістю треків.
  • Застосунок сповільнюється зі збільшенням часу роботи, а перезапуск допомагає.
  • У звіті про збій вказано, що застосунку не вистачило пам’яті (OutOfMemoryError).
  • Підтримка OsmAnd попросила вас зібрати гістограму купи.

Коли залишати вимкненим:

  • Повсякденне використання та навігація, коли застосунок працює нормально.
  • Збої, які відбуваються одразу при кожному запуску або під час конкретної дії, наприклад відкриття одного файлу. У таких випадках достатньо звичайного журналу збоїв.

Як зібрати та надіслати:

  1. Увімкніть плагін розробки OsmAnd і перейдіть до Головне меню → Плагіни → Розробка OsmAnd → Налаштування → Пам’ять → Java-пам’ять.
  2. У панелі Дамп купи виберіть один із варіантів:
    • Збирати при високому використанні. Гістограма збирається автоматично, коли Java-пам’ять майже заповнена, не частіше ніж раз на 30 хвилин, і додається до наступного звіту про збій. Продовжуйте користуватися застосунком як зазвичай, доки проблема не повториться.
    • Зібрати та проаналізувати зараз. Збирає гістограму негайно та показує результат. Використовуйте, коли застосунок уже сповільнений і Java-пам’ять показує високе використання.
  3. Натисніть Поділитися звітом, щоб надіслати останній звіт розробникам, або надішліть його з діалогу звіту про збій під час наступного запуску застосунку.
  4. Вимкніть Збирати при високому використанні після надсилання звіту.

Java memory Android Heap dump panel Android

Надсилання файлів Tombstone (Android)​

Важливо

Тільки для досвідчених користувачів!

У певних складних або незвичайних випадках можуть знадобитися файли Tombstone. Ці файли надають детальні трасування стека для всіх потоків у процесі, що зазнав збою (не тільки того, що спричинив помилку), повну карту пам'яті та список усіх відкритих дескрипторів файлів. Файли Tombstone є життєво важливими для налагодження та діагностики проблем, пов'язаних з нативним кодом на платформі Android.

Використання вашого пристрою​

Щоб експортувати файли tombstone, вам потрібно згенерувати звіт про помилку за допомогою системних налаштувань Android:

  1. Увімкніть Параметри розробника (цей екран за замовчуванням прихований).

    • Перейдіть до Налаштування → Про телефон → Інформацію про програмне забезпечення (цей шлях дійсний для пристроїв Samsung).
    • Натисніть Номер збірки сім разів, доки не з'явиться спливаюче вікно, що підтверджує активацію режиму розробника.
  2. Перейдіть до Параметри розробника, зазвичай розташованих унизу списку налаштувань. Ви також можете скористатися функцією пошуку.

    • Натисніть опцію Зробити звіт про помилку.
    • Виберіть тип звіту про помилку та натисніть Звіт.

Після того, як звіт про помилку буде готовий, ви отримаєте сповіщення. Натисніть на поле сповіщення, щоб завантажити звіт на свій пристрій. Розпакуйте файл і надішліть файли tombstone команді розробників OsmAnd (електронна пошта: support@osmand.net).

Send crash logs from Android 3 Send crash logs from Android 4

примітка

Зверніть увагу, що звіти про помилки можуть містити приватні дані, включаючи використання програми або місцезнаходження.

Використання ADB​

Android Debugging Bridge (ADB) — це інструмент командного рядка, який дозволяє розробникам налагоджувати свої програми. Щоб використовувати ADB для експорту файлів tombstone, вам потрібно спочатку завантажити та встановити його. Дотримуйтесь інструкцій, наданих на офіційному сайті розробників Android.

Підготуйте свій пристрій​

Переконайтеся, що Параметри розробника увімкнено (цей екран за замовчуванням прихований) і Налагодження USB увімкнено:

  • Перейдіть до Налаштування → Про телефон → Інформацію про програмне забезпечення.
  • Натисніть Номер збірки сім разів, доки не з'явиться спливаюче вікно, що підтверджує активацію режиму розробника.
  • У Параметрах розробника увімкніть Налагодження USB.

Потім підключіть свій пристрій до робочої станції через USB. Якщо це перше підключення, з'явиться спливаюче вікно з запитом дозволу на налагодження.

Згенеруйте звіт про помилку​

  1. Відкрийте термінал командного рядка. На Mac або Linux використовуйте програму Термінал, а на Windows — Командний рядок.
  2. Перейдіть до папки platform-tools, де розташовано ADB, за допомогою команди cd (наприклад, ‘cd /Users/Username/Downloads/Tools’).
  3. Згенеруйте звіт про помилку:
    • На Mac: adb bugreport
    • На Windows: adb.exe bugreport
  4. Зачекайте кілька хвилин, поки звіт буде згенеровано. Отриманий файл буде збережено в папці platform tools.
  5. Розпакуйте файл.
  6. Знайдіть паперу tombstones з файлами, такими як tombstone_00, tombstone_01 тощо.
  7. Надішліть файли tombstone на адресу support@osmand.net.

Використання рутованих пристроїв або емулятора Android Studio​

  • З root-доступом до вашого пристрою ви можете безпосередньо відкрити папку /data/tombstones.

  • В Android Studio використовуйте емулятор, щоб перейти до Device File Explorer і знайти папку /data/tombstones. Всередині ви знайдете файли з назвами, такими як tombstone_00, tombstone_01 та інші. Завантажте ці файли та надішліть їх на адресу support@osmand.net.

Для отримання додаткової інформації про звіти про помилки зверніться до документації Android.