Other options for PCL
If you are able to guarantee that the target platforms will have the facilities you need and they are handled in the same way with the same directories that are able to be accessed in the same way (for example, Android being a Linux-based system, certain directories cannot be accessed, but the application itself has access to all the directories that it owns, as well as any public directories).
On iOS, Apple has locked down a large number of directories that look like they should be available (they are listed with IntelliSense when you look at the environment path), but on compile time, the app crashes because you have no access to certain directories. As a result, a Shared Code Library (SCL) can be used.
Note
PCL libraries cannot be used on versions of .NET before 4.0.