The 26-year-old's previous deal was due to expire at the end of the 2014/15 campaign.
"Schalke's a really special club with exceptional fans, who have really got behind me down the years," Uchida explained. "I want to thank them for their support by continuing to perform well in the years ahead."
The fan favourite has made 90 Bundesliga appearances since joining the Royal Blues from J-League outfit Kashima Antlers in June 2010, scoring one goal and setting up another 12. He has also played eight times for the club in the DFB Cup and 34 in Europe, and boasts 71 caps for the Japanese national team.