You have to spend emeralds to get a new character. Mario Kart Tour is generous with this currency at the beginning, but will become scarce quickly. Spend emeralds is the only way to unlock characters, karts, or gliders.
When you accumulate five emeralds, you will have to fire the cannon once to unlock it. If savings of 45 emeralds, you can get a small discount and get 10 shots of the cannon.
There are also events that allow you to earn more points by using some of the characters. You always have the guarantee of getting the character described, before the tube is empty. Each tube has 99 unlockable before being considered empty. It will take about 450 emeralds to empty a tube.