For me a good way to obtain those legendaries that are not gonna be in big events would be with in game quests. Maybe put a code to unlock the quest so it is a unique oportunity per account of getting that legendary, make it universal of course, everyone around the world get's the code in their mailbox or in game notification, with no exceptions.
When you enter the code Professor Willow or another known character from the game starts the quests, something like "we have received reports that a .... has been seen around your area, be careful traveler, this mon is very strong and won't be easy to find or catch...".
Then using the AR and fitness part of the app you have to follow the line to get to that legendary. For example using AR when you find an unown you will find a clue printed in some part of the screen about a legendary dog, this will led to the next step, for example walk 5km with a Pikachu so its static electricity attract x mon with the following clue...At the end of the quest line you get an special ball and berry to make that mon fall sleep and you have a try to get it, just an example of course, many options here in the actual catch process...
I think this kind of quest lines involving fitness and AR is one of the things that should be used more in the game, mixed with some kind of incentive and the beloved characters from the old games.