After years of strained relations, Canadian Prime Minister Mark Carney has met Chinese President Xi Jinping in Beijing.