The 20-team tournament will be played across eight venues -- five in India and three in Sri Lanka -- between February 7th and March 8th, the ICC said in a statement.
Pakistan will play all their games in Sri Lanka because of their sour political relations with India.
The March 8th final is scheduled for the western Indian city of Ahmedabad, but would be moved to Colombo if Pakistan reach it.
A military conflict between the nuclear-armed neighbours in May overshadowed the subsequent Asia Cup in which India refused to accept the winners' trophy from Asian Cricket Council chief Mohsin Naqvi, who is Pakistan's interior minister.
The teams in the tournament have been divided into five groups of four, with the top two advancing to the Super Eight phase. The top four in that will qualify for the semi-finals.
Defending champions India will begin their Group A campaign against the US in Mumbai on February 7th.
Sri Lanka and Australia are in Group B, which also includes Ireland, Zimbabwe and Oman.
England and West Indies, both twice winners, will face first-timers Italy and Asian sides Bangladesh and Nepal in Group C.
New Zealand, South Africa, Afghanistan, Canada, and the United Arab Emirates make up Group D.
