public static Task<Stream> OpenStreamForReadAsync(this IStorageFolder rootDirectory, string relativePath)
{
#if WINDOWS_UWP || WINDOWS_APP || WINDOWS_PHONE_APP || WINDOWS_PHONE
return WindowsRuntimeStorageExtensions.OpenStreamForReadAsync((global::Windows.Storage.StorageFolder)((StorageFolder)rootDirectory), relativePath);
#elif __ANDROID__ || __UNIFIED__ || WIN32
string newPath = Path.Combine(rootDirectory.Path, relativePath);
return Task.FromResult<Stream>(global::System.IO.File.OpenRead(newPath));
#else
throw new PlatformNotSupportedException();
#endif
}