There is no uniform way to handle push notifications in Xamarin Forms since the implementation relies heavily on platform specific features and events. Therefor platform specific code will always be necessary.
However, by using the DependencyService
you can share as much code as possible. Also there is a plugin designed for this by rdelrosario, which can be found on his GitHub.
Code and screenshots are taken from a blog series by Gerald Versluis which explains the process in more detail.