The agreement was first reported by The Vertical and confirmed by The Undefeated.
The Kings will be Afflalo's sixth team in 10 NBA seasons.
Afflalo became a free agent when he declined his $8 million option for the 2016-17 season with the Knicks.
He scored 12.8 points and posted 3.7 rebounds per game in 2015-16, his first and only season in New York. He played primarily as a starter but was relegated to a reserve role late in the season under interim coach Kurt Rambis. Afflalo had said in April that he still believed he could be a starter in the NBA and that belief would factor into his free-agency decision.