使用NSSearchPathForDirectoriesInDomains和 native 代码一样可以得到路径。搜索后,NSSearchPath可以实现。尝试使用以下代码来访问Library/
路径:
创建一个静态类NSSearchPath:
public static class NSSearchPath
{
public static string[] GetDirectories(NSSearchPathDirectory directory, NSSearchPathDomain domainMask, bool expandTilde = true)
{
return NSArray.StringArrayFromHandle(NSSearchPathForDirectoriesInDomains((nuint)(ulong)directory, (nuint)(ulong)domainMask, expandTilde));
}
[DllImport(Constants.FoundationLibrary)]
static extern IntPtr NSSearchPathForDirectoriesInDomains(nuint directory, nuint domainMask, bool expandTilde);
}
用法如下:
string[] paths = NSSearchPath.GetDirectories(NSSearchPathDirectory.LibraryDirectory, NSSearchPathDomain.All);
Console.WriteLine(paths[0]);
输出日志:
2020-05-20 13:52:11.254843+0800 AppIOS2[4340:108912] /Users/xxxx/Library/Developer/CoreSimulator/Devices/4C2C6DD2-3D42-46EA-8078-D6E0B851AEDD/data/Containers/Data/Application/DB913987-0E55-4603-8993-ED7B3F83CF85/Library
参考文档:https ://docs.microsoft.com/en-us/xamarin/ios/app-fundamentals/file-system#application-directories