Change theme
Help
Press space for more information.
Show links for this issue (Shortcut: i, l)
Copy issue ID
Previous Issue (Shortcut: k)
Next Issue (Shortcut: j)
Sign in to use full features.
Vote: I am impacted
Notification menu
Refresh (Shortcut: Shift+r)
Go home (Shortcut: u)
Pending code changes (auto-populated)
View issue level access limits(Press Alt + Right arrow for more information)
Attachment actions
Unintended behavior
View staffing
Description
😃 (
Please describe the problem in detail. Be sure to include:
- Steps to reproduce the problem (including sample code if appropriate).
Including the smiley character in string.xml line causes a resources.arsc parsing error. If it is the last character on the line, the end-of-text character of the resources file will be swallowed, effectively joining it with whatever string constant is afterwards.
- What happened.
App crashes because the resources.arsc is parsed incorrectly.
- What you think the correct behavior should be.
The resource handler should parse resources.arsc no matter what characters are in there.
- Don't forget to mention which version of Android you're using, and/or which device the problem appears on (model and Android version).
Everything up to and including 4.4 have been crashing because of this bug. Android 5.0 might be immune, but I doubt it.
- Please also run "adb bugreport" and archive the output.
I don't believe that will help as the crash depends on how the resource map is built, but it is easily reproducible with attached project
When _omitting_ uses-sdk in the manifest, the resources.arsc is built with a completely different character set, and that is parsed correctly (just comment out <uses-sdk> in the manifest).
The utf-8 style resources.arsc seems correct (the character is properly utf-8 encoded and is followed by a NUL), so it's more likely a parser issue than a tooling issue.
I am not expert in resources.arsc, but since it isn't viable to update all the old devices, could the tooling support prioritize the "other" (utf-16?) way of encoding resources.arsc?