Как настроить код, создаваемый при использовании "Surround with try/catch"?
Каждый разработчик Android застрял в следующей ситуации:
public void catchMeThod() {
throwedMethod();
}
public void throwedMethod() throws IOException{
throw new IOException("File is missing.");
}
Так как IOException
проверено исключение throwedMethod
обязывает нас обращаться с ним.
Когда я перемещаю каретку внутри throwedMethod
и нажимаю Alt + Enter, Android Studio предлагает мне несколько возможных сценариев:
![! [введите описание изображения здесь]()
По умолчанию я выбираю опцию Surround with try/catch
, а Android Studio генерирует следующий код:
![введите описание изображения здесь]()
И мой вопрос: как изменить этот триггер, заменить
e.printStackTrace()
с
Log.e(getClass().getSimpleName(), "Handled exception", e);
Ответы
Ответ 1
-
Перейти к Android Studio Preferences
| Editor
| File and Code Templates
-
Выберите Code
| Catch Statement Body
-
Замените существующий шаблон на:
${EXCEPTION}.printStackTrace();
с:
Log.e(getClass().getSimpleName(), "Exception handled", ${EXCEPTION});
Предварительный просмотр:
![Пользовательский шаблон try..catch]()
Наслаждайтесь настроенным шаблоном:)
Ответ 2
Эти "шаблоны" управляются Postfix Completion ( "Настройки" > "Редактор" > "Общие" > "Завершение постображения" > try
).
К сожалению, они жестко закодированы в IDE и не могут быть изменены. Единственный способ - заменить их вручную.
Изменить только в текущем файле
Нажмите cmd + R (или используйте, если вы используете windows/linux).
В верхней строке введите текст для поиска, в нижней строке - текст для его замены. Затем нажмите "Заменить все".
![введите описание изображения здесь]()
Изменить везде
В представлении проекта щелкните правой кнопкой мыши приложение и выберите "заменить в пути". Заполните поля и нажмите "Найти".
![введите описание изображения здесь]()