2011-01-24 7 views
3

Как получить журналы ошибок моего приложения с устройства (и отправить их через Интернет на сервер)?Журнал регистрации ошибок Android

+1

уточнить - вы имеете в виду собирать записи журнала (созданные вашим приложением) с телефонов других людей и отправлять их на веб-сервер программно? –

+0

В идеале вы можете создать класс обработки ошибок, который создает экземпляр объекта при возникновении ошибки. После создания объекта он подключается и отправляет этот журнал на ваш веб-сервер. –

ответ

2

(Предполагая, что вы используете рамки журнала из android.util.Log пакета.)

Вы можете начать процесс «LogCat» с конкретными параметрами из вашего процесса. Он сбрасывает последние 16k журналов (16k - по умолчанию для моего телефона, он может быть другим на других телефонах).

Ниже приведен пример командной строки, которая сбрасывает все журналы: logcat -d -f /mnt/sdcard/log-dump.txt
Другой пример, который сбрасывает ошибки всех приложений: logcat -d -f /mnt/sdcard/err-dump.txt *:e

Вам нужно запустить процесс из приложения программно. А затем обработать log-dump.txt/err-dump.txt так, как вы хотите.

Вы также можете отслеживать журналы дольше, чем по умолчанию, которые могут позволить вам 16k. Для этого вам нужно запустить logcat без параметра -d. Если это будет сделано, процесс logcat будет записывать журналы в файл столько, сколько захотите. Когда вы закончите, просто запустите процесс logcat.

В любом случае вы можете посмотреть & проверить вручную logcat с помощью adb logcat <params> с вашего компьютера.

2

Я думаю, вам нужно реализовать блок try_catch.

try 
{ 

} 
catch(Exception e) 
{ 
    Log.e("Exception found ",e.getMessage); 
    // post the exception message to your server 
} 

Таким образом, вы можете отправлять сообщения журнала ошибок на сервер.

+0

Если разработчик не имеет серьезной потребности в немедленных уведомлениях об ошибках, это, вероятно, может быть уменьшено до одного раза в день или менее! – Hamy

Смежные вопросы