Intereting Posts
Отключить сенсорные события для всех видов Принесите фрагмент на фронт (без фрагментального отдыха) Android: После создания источника платформы, как подписать произвольный APK с ключом платформы? IllegalStateException – библиотека поддержки фрагментов Потеря связи с базой данных Firebase после обновления до нового SDK Управление динамической радиокнопкой Java.lang.Exception: пользовательский класс runner AndroidJUnit4 должен иметь открытый конструктор с сигнатурой AndroidJUnit4 (класс testClass) Android Two Fragments в той же деятельности Пользовательский шрифт для вкладок ActionBarSherlock Шифрование и дешифрование API Fingerprint для Android Android получить активность возвращает null Модульное тестирование создания базы данных SQLite с использованием Spock и Robospock Android: Есть ли способ реализовать сканер штрих-кода в приложении? WIFI_SLEEP_POLICY_NEVER, как установить в API-17? Сохранить перечисление в SharedPreference

Слишком много записей в журнале снижает производительность приложений Android?

Я хотел бы знать, может ли ведение журнала снизить производительность приложения? Также, пожалуйста, дайте мне несколько советов по увеличению производительности приложений Android.

Solutions Collecting From Web of "Слишком много записей в журнале снижает производительность приложений Android?"

Лучше не показывать журнал в фактической сборке вашего приложения.

Отключите его в Android Manifest, установив debuggable:

<application android:icon="@drawable/icon" android:label="@string/app_name" android:debuggable="false"> 

Другой путь

Создайте свой собственный класс журнала:

Перед выполнением журнала проверьте режим отладки. Он позволяет изменять одну точку между режимом отладки и развернутым приложением и позволяет делать дополнительные вещи, такие как запись в файл журнала.

 import android.util.Log; public class MyLog { private static final boolean isDebug = false;; public static void i(String tag, String msg) { if (isDebug) { Log.i(tag, msg); } } public static void e(String tag, String msg) { if (isDebug) { Log.e(tag, msg); } } } 


Для получения дополнительной информации читайте http://rxwen.blogspot.com/2009/11/logging-in-android.html

И SO QAs:

Log.d и влияние на производительность

Android Logging – Как очистить для лучшей производительности

Используйте инструкцию «if» перед записью журнала.
Вы можете отключить журнал при выпуске приложения.

пример :

 public class LogTest extends Activity { private static final String TAG = "YOUR_LOG_TAG_NAME"; private static final boolean mDebug = true; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //--[Start Log example]----------------------------------------- if(mDebug) Log.d(TAG, "Log Write Test"); //--[End Log example]----------------------------------------- } 

}

Любой избыточный текст будет замедлять ваше приложение даже при использовании настольного приложения. Чрезмерное протоколирование замедляет работу, но вам в основном нужно безумное количество отправляемых данных, что, кстати, не так сложно сделать с циклом for или while. Вещи, которые происходят в фоновом режиме во время протоколирования, включают в себя манипуляции строк, текстовое рендеринг, управление кешем, фильтрацию данных, ограничение длины журнала и список.

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