Promotions really are the reason why cricket is so famous while other sports are lagging behind. But we cannot expect media or companies to just promote for the sake of the game, they have done their market research and there is just not enough money in other sports while in cricket they can earn in lakhs if not in crores. What really matters is that we people, its our choice to like a game or not. If we don't watch other games then why will the promoters and sponsors even bother about the game. No one watched commonwealth games or lets say Asian games in DD sports while all were after getting cable connection for world cup and twenty twenty.
People in India have no appreciation for other sports, although it is changing now, as people have started to watch soccer and tennis, but more or less there is no career for an Indian in any other game except cricket.