/// <summary> /// 获取日志文件目录 /// </summary> /// <returns></returns> private static string getLogPath() { Android.Content.Context context = Android.App.Application.Context; try { foreach (Java.IO.File file in context.GetExternalCacheDirs()) { if (file.CanWrite()) { return(new DirectoryInfo(file.AbsolutePath).fullName()); } } } catch { } { Java.IO.File file = context.GetExternalFilesDir(null); if (file != null && file.CanWrite()) { new DirectoryInfo(file.AbsolutePath).fullName(); } } try { foreach (Java.IO.File file in context.GetExternalFilesDirs(null)) { if (file.CanWrite()) { return(new DirectoryInfo(file.AbsolutePath).fullName()); } } } catch { } return(null); }
public static TileDataSource CreateTileDataSource(Android.Content.Context context, string fileName) { try { string directory = context.GetExternalFilesDir(null).ToString(); string path = directory + "/" + fileName; context.Assets.CopyAssetToSDCard(fileName, path); Log.Debug("Copy done to " + path); MBTilesTileDataSource source = new MBTilesTileDataSource(0, 14, path); return(new MemoryCacheTileDataSource(source)); } catch (IOException e) { Log.Debug("MbTileFile cannot be copied: " + fileName); Log.Debug("Message" + e.Message); } return(null); }