Ranter
Join devRant
Do all the things like
				++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
				Sign Up
			Pipeless API
				From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
				Learn More
			Comments
		- 
				
				@joewilliams007 you should consider adding that "feature" to your android devrant app :)
 - 
				
				Apparently, this happens if you use 16-bit encoding in your text and you lose a byte so the alignment is off. Not entirely sure how that effects icons like this, but that's at least one way how text can turn Chinese.
 - 
				
				It's a bug in DevRant App for sure.
It seems like the wrong font gets chosen at startup, kinda like a race condition / fallback thing.
If you close the app and restart, everything's fine usually.
Mostly happens (thus my guess regarding race condition) when the dev is slow to start up - 
				
				Byte order mismatch. These particular Chinese characters have all-zero lower bytes so if you flip the endianness of normal English text it does that.
 - 
				
				Also happens if a byte gets lost in UTF16, but errors in transit are vastly less likely than errors in interpretation so I say it's endianness.
 - 
				
				On the other hand, the symbols are supposed to be in the private use area of Unicode so that's a riddle.
 - 
				
				@lorentz endianness is another option but I couldn't figure how it could happen only sometimes. Everything is possible, I suppose.
 - 
				
				@electrineer A library needs to be imperatively configured to follow a particular byte order. Android provides multiple distinct entry points to an app corresponding to different combinations of available vs empty/lost states of data and parameters. Some of these fail to initialize the library.
 - 
				
				C# loves imperative initialization, often mislabeled as a builder. I imagine Java does too.
 

Why is the navigation bar, and other UI elements in, I wanna say Mandarin?
question