Строковые ресурсы Android не работают с $

После обновления до Android Studio 3.0.1 строковые ресурсы с $ в их имени, например: <string name="$KEY$">value</string>

выдать ошибку

Error:(615, 3) error: resource 'string/$KEY$' has invalid entry name '$KEY$'. Invalid character '$KEY$'.

след:

AGPBI: {"kind": "error", "text": "error: resource \ u0027string / $ KEY $ \ u0027 имеет недопустимое имя записи \ u0027 $ KEY $ \ u0027. Недействительный символ \ u0027 $ KEY $ \ u0027." , "sources": [{"file": "../ src / main / res / values-es / strings.xml", "position": {"startLine": 559, "startColumn": 2, "startOffset" : 60748, "endColumn": 54, "endOffset": 60800}}], "original": "", "tool": "AAPT"}


person ir2pid    schedule 12.12.2017    source источник


Ответы (1)


Aapt2 включен по умолчанию, когда вы используете плагин android для gradle 3.0. Вы можете исправить свою проблему, установив android.enableAapt2=false в своем gradle.properties

person Jumper    schedule 11.04.2018
comment
«$» - недопустимый символ для имени ресурса. AAPT1 скоро устареет, поэтому вместо этого я предлагаю провести рефакторинг кода, чтобы исключить недопустимые символы. - person Izabela Orlowska; 12.04.2018