Как найти идентификатор ресурса # сейчас, когда Android Studio больше не создает R. java? - PullRequest
1 голос
/ 14 марта 2020

Я пытаюсь отладить следующие предупреждения:

03-13 16:27:13.248 6636-6636/sleepfuriously.com.warningtest W/Resources: Converting to string: TypedValue{t=0x12/d=0x0 a=2 r=0x7f09002a}
03-13 16:27:13.248 6636-6636/sleepfuriously.com.warningtest W/Resources: Converting to string: TypedValue{t=0x12/d=0x0 a=2 r=0x7f090028}

(еще 26 аналогичных сокращений для краткости)

Похоже, я использую некоторый ресурс в качестве строки, которая должна быть чем-то остальное. Обычно я просто открываю файл R. java и вижу, к чему относятся эти цифры, и вуаля, есть проблемные ресурсы.

Но новая версия Android Studio обходит создание R. java. Поэтому у меня нет возможности узнать, какие ресурсы вызывают эти предупреждения. Любая подсказка о том, как отладить это?

1 Ответ

1 голос
/ 14 марта 2020

Хотя утомительно, вы можете использовать APK Analyzer в Android Studio. Вы можете добраться до этого через Build> Analyze APK из главного меню.

После выбора APK, нажмите на запись resources.arsc в верхней панели. Это даст вам нижнюю панель, показывающую различные типы ресурсов. Выбор типа дает вам ресурсы для этого типа, включая шестнадцатеричное значение для идентификатора ресурса:

APK Analyzer in Android Studio

Нет опции поиска по идентификатору ресурса, но вы могли бы покопайтесь в ресурсах и попытайтесь выяснить, откуда эти идентификаторы.

...