Have you ever installed WhatsApp on an Android phone in the Democratic Republic of Congo (aka DRC)?
That might seem like a weird question to many of our readers, but those in the DRC will understand. If you happen to be in the DRC right now, try it: pop a SIM card in your Android phone and install WhatsApp.
Here’s what will happen: WhatsApp will tell you that your country is “Congo-Brazzaville” and that your country code is “+242.” If you know a bit about the DRC, you’ll know that that’s wrong – very wrong. Congo-Brazzaville is a completely different country than the DRC (its official name is the Republic of Congo, but WhatsApp lists it as Congo-Brazzaville because Brazzaville is its capital; people often simply call it Congo).
WhatsApp should be showing you “Congo-Kinshasa” and “+243” as your country (WhatsApp lists the DRC as Congo-Kinshasha because Kinshasa is DRC’s capital) because, well, you’re in the DRC. (And by the way, the DRC is a much much bigger country: 81.5 million people in the DRC vs. 4.5 million in Congo.)
How is this possible? Is WhatsApp really mixing up 2 completely different countries? No.
Yes, you read that right. Google Maps has no problem distinguishing between the 2 countries. Neither does Google search. But Google’s Android operating system (the operating system that runs on more than 82% of smartphones globally) thinks these 2 countries are the same.
We came across this issue recently when a customer was using our Android Application in the Democratic Republic of Congo. Our Android App, the engageSPARK SMS Relay Gateway, allows you to link your local SIM card to the engagements you create on the engageSPARK platform so that you can receive SMS and Missed Call notifications anywhere in the world. Our customer in the DRC is helping smallholder farmers there adjust their fertilizer usage to help increase their crop yield (read about the Mulungwishi Fertilizer program here).
The engageSPARK Android App kept thinking that the phone was in Congo-Brazzaville, and our customer couldn’t understand why. So we dug into it.
Some quick background: the Android operating system passes a bunch of information to Apps running on an Android phone. One thing that Android tells Apps is the country that the SIM card in the phone is from. Android gives Apps the two-letter ISO code of your SIM card’s country. Android passes a parameter called, “sim_country_iso”. The two-letter ISO code for Congo is “cg”; for DRC, it’s “cd”.
At first when we dug into the issue, we thought there was something wrong with the SIM Card. Our customer tried another SIM card from a different DRC telco. Same issue. So, we investigated some more, including into the Android code (which is open source and thus available online), and we came across these two lines:
592 sTable.add(new MccEntry(629,”cg”,2)); //Congo (Republic of the)
593 sTable.add(new MccEntry(630,”cg”,2)); //Democratic Republic of the Congo
We immediately opened an error ticket with Google.
We also added some additional code into our Android App so that our App recognizes the right country. But other apps (like WhatsApp) that seem to rely solely on the two-letter ISO code that Android passes will continue displaying the wrong country for a while.
Hopefully, Google will fix this issue soon…and those living in and visiting the DRC won’t have issues of mistaken identity anymore.