я не могу сослаться на существующую строку

1

Я пытаюсь запустить этот код:

gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                .requestIdToken(getString(R.string.default_web_client_id))
                .requestEmail()
                .build();

но R.string.default_web_client_idчасть не работает (не удается разрешить символ default_web_client_id).

Я знаю, что строка 'default_web_client_id' существует, но ее нет в String XML, ее в сгенерированном 'values.xml'

печать файла values.xml и пути к нему

я что-то делаю не так или должно работать?

9
  • 1
    это ошибка в течение некоторого времени, когда вы запускаете приложение, она автоматически исчезает 2 дня назад
  • 1
    вам не нужно ставить, default_web_client_idкогда вы добавляете зависимость AUTH от firebase, она автоматически сгенерирует эту строку 2 дня назад
  • 1
    я подумал об этом и попытался бежать, я не работал 2 дня назад
  • 1
    что "values.xml" - это автоматически сгенерированный xml; -; 2 дня назад
  • 1
    Думаю, твое приложение никуда не вылетит. Просто IDE студии androids выдаст эту ошибку. Вы можете игнорировать это. 2 дня назад
1

Думаю, твое приложение никуда не вылетит. Просто IDE Android Studio вызовет эту ошибку. Вы можете игнорировать это.

0

тебе нужно положить это внутрь

/app/src instead of /app/build folder else it won't work because /app/build folder is a misc folder that contains files that are compiled when you build the apk

2
  • это сгенерированный xml, я не могу его изменить 2 дня назад
  • Я имею в виду, что вы должны поместить этот файл values.xml в папку / app / src / main / res / values, также к нему должен быть доступ, как R.values.default_web_client_id, потому что значение хранится в файле values.xml, а не в string.xml 2 дня назад
0

Я не понимаю, почему бы не поместить строку в strings.xml? (app / src / main / res / values ​​/ strings.xml) или поместите его в отдельный класс, содержащий некоторые постоянные переменные.

Я использую класс с именем Configs.javaдля сохранения этих переменных.

public class Configs {
    ... 
    public final static String WEB_CLIENT_APP_ID = "XXX"
    ... 
}
val options = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                .requestIdToken(Configs.WEB_CLIENT_APP_ID)
                .requestEmail()
                .build()