Mam zadanie niestandardowe w moim build.gradle który generuje pewne zasoby wyrażenie:Generowanie zasobu ciąg zawierający% od build.gradle z resValue
android.defaultConfig.resValue "string", "my_string", "Some Value"
To wszystko działa prawidłowo: struny są wyświetlane poprawnie w generated.xml i są dostępne za pośrednictwem getResources().getString(R.id.my_string)
w kodzie aplikacji.
Nie działa, gdy jeden z ciągów zawiera symbol %
. Daje ten błąd:
Error:(1) Multiple substitutions specified in non-positional format; did you mean to add the formatted="false" attribute?
rozumiem z Android XML Percent Symbol które normalnie obejść ten problem, dla zasobu string w strings.xml, dostarczając dodatkowej formatted="false"
atrybut następująco:
<string formatted="false">My string with a % symbol</string>
Jak dołączyć atrybut formatted="false"
, gdy łańcuch jest generowany przy użyciu resValue
w skrypcie budowania?
(Próbowałem również ucieczki z podwójnie% jak sugeruje, ale to powoduje %%
pojawiające się w ostatnim ciągiem.)