Извлечь все жестко закодированные строки в строковый ресурс

Я знаю, что есть комбинация Alt + Enter для извлечения одного String для ресурса строки. Но мне интересно, есть ли что-нибудь, что я могу извлечь всю строку моего проекта в ресурс строки?

Также студия Android не делает такой же String для строкового ресурса, если я сделаю один из них.

String s = "Hello World";
String s2 = "Hello World";

Например. Я делаю "Hello World" для строкового ресурса, еще один остается Hardcoded в том же файле, что и в проекте.

String s = getString(R.string.helloworld);
String s2 = "Hello World";

Если кто-то знает что-то подобное.

Ответ 1

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

  • Перейдите к "Analyze > Run Inspection .." и введите "Hardcoded strings". Запустите это во всем своем проекте, и вы получите панель результатов проверки, которая покажет весь жесткий код проектов. Затем нажмите Alt + Enter, и вы получите возможность автоматически извлекать эти строки.

  • Другой подход - Найти и заменить, но это не лучше из-за потребления времени. Чтобы упростить подход, вы можете найти здесь для гибкости.

Ответ 2

В Android 3.2.1 вы можете перейти к Edit->Find->Find In Path... и затем Edit->Find->Find In Path... поиск android:text=". Это даст вам список всех жестко закодированных строк в xml files.

Найдите Toast.makeText чтобы найти все элементы тостов из java files.

Искать setText(" для поиска текстовых наборов в java files и т.д.

Вы можете выполнить поиск, подобный этому, для элементов, которые вы хотели бы найти в проекте, и заменить их.

Ответ 3

Я считаю, что ярлык, который вы ищете, - это (на Mac) Alt + Command + C