Если я удаляю e.printStackTrace () из моего кода перед публикацией

Я читал документы Публикации Android, и они сказали для удаления всех вызовов Журнала из моего кода. У меня есть некоторые вызовы к e.printStackTrace() в моем коде, который может быть распечатан как часть нормального выполнения моей программы (т.е. если файл еще не существует).

Я должен также удалить эти вызовы?

41
задан Seraphim's 2 August 2016 в 13:23
поделиться

4 ответа

Вы не должны использовать E.PrintStacktrace () напрямую в любом случае - это отправит информацию в журнал Android без отображения какого приложения (тег журнала) из.

Как упомянул другие, по-прежнему уловить исключение , но используйте один из методов Android.util.log для выполнения журнала. Вы можете записать только сообщение, но не трассировку стека, либо использовать весовую ведущую регистрацию для трассировки стека:

try {
    Object foo = null;
    foo.toString();
} catch (NullPointerException ex) {
    Log.w(LOG_TAG, "Foo didn't work: "+ ex.getMessage());
    Log.d(LOG_TAG, Util.stackTraceWriter(ex));
}

, вы должны пробить Debug или Verbose Сообщения журнала из ваших производственных сборки. Самый простой способ состоит в том, чтобы использовать Proguard для удаления журнала. [DV] Вызывы из вашего кода.

46
ответ дан 27 November 2019 в 00:51
поделиться

Я бы использовал класс журнала для отправки сообщения. Для журналов, которые вы считаете важными для проживания в приложении - используйте log.i Для ошибок предупреждение - log.e log.w Для вас отладка log.d - и что вы можете оттухать на базе, если ваше приложение находится в режиме отладки.

http://developer.android.com/reference/android/util/debugutils.html

2
ответ дан 27 November 2019 в 00:51
поделиться

В моем скромном мнениях (я не разработчик Android)

Это должно быть приятно. Я не знаю варианты регистрации для Android, но я уверен, что у вас есть некоторая настраиваемая вещь для вывода (или нет) ваших следов.

И если вы не сделаете PrintStacktrace () Android, не будут делать грязную работу игнорирования.

:)

Это всего лишь хорошее (стиль) вещь.

0
ответ дан 27 November 2019 в 00:51
поделиться

Если проект, который вы разрабатываете, будет открытым, вы всегда можете разместить его на Google Code , который позволит вам использовать Subversion, Mercurial или Git, все отличные, бесплатные системы управления версиями.

Если это не открытый исходный код, вы можете легко найти компании, которые предоставляют размещенные решения для управления версиями, и некоторые из них даже имеют бесплатные программы. Я могу лично рекомендовать Project Locker, который имеет бесплатный уровень обслуживания для небольших проектов и предоставляет Git и Subversion.

Bitbucket также имеет очень отличный уровень бесплатного обслуживания с Mercurial и Git.

Разработка для GAE не блокирует вас в какой-либо системе управления версиями, поэтому используйте то, что вы предпочитаете и что удобно, но кудо для вас, чтобы думать, что вы используете его вообще. Я не могу сказать, сколько раз сотрудники Google Groups, связанные с GAE, спрашивали о том, как вернуть развернутый исходный код, потому что они потеряли копию исходного кода.

-121--3866342-

Это ключевое слово определяет необходимость сохранения значения свойства в файле формы; по умолчанию установлено значение true . Может быть полезно избежать, например, сохранения больших фрагментов двоичной информации в файле .dfm (например, компонент изображения, который должен считывать ее содержимое только во время выполнения)

. -121--2633460-

Если разрешено распространение исключения до ОС, ОС заносит его в журнал, а также открывает окно принудительного закрытия, в результате чего приложение исчезает. Если его поймать, то можно предотвратить быть закрытой силы приложения.

Если вы хотите, чтобы ваши пользователи имели возможность отправлять вам ошибки, которые они получают, то я бы записал трассировку стека. Затем они могут отправить вам журнал через приложение, например Сборщик журналов .

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

3
ответ дан 27 November 2019 в 00:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: