Question: do ranked battles give bp?
Answer: Unlocked After Becoming Champion. You must beat the game by becoming Pokemon Champion in order to unlock the Battle Tower. From there, you will be able to do Rank Battles to get and earn some BP.