You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET MAUI应用日志文件默认存储位置与访问方式技术问询

.NET MAUI Android和iOS平台默认日志文件路径及访问方案

Android平台

  • 应用私有存储默认路径:
    • 应用数据目录:/data/data/[你的应用包名]/files/(对应MAUI中FileSystem.AppDataDirectory)
    • 缓存目录:/data/data/[你的应用包名]/cache/(对应MAUI中FileSystem.CacheDirectory)
  • MAUI本身不会自动生成日志文件,若使用Serilog、NLog等日志库,需将日志路径配置为上述目录之一。
  • 系统级日志(Logcat)并非文件形式,可通过命令查看:adb logcat -d
  • 导出日志文件可使用adb命令:adb pull /data/data/[你的应用包名]/files/app.log ./(需设备开启调试模式)

iOS平台

  • 应用沙盒内默认路径:
    • 文档目录:/var/mobile/Containers/Data/Application/[应用UUID]/Documents/(对应MAUI中FileSystem.AppDataDirectory)
    • 缓存目录:/var/mobile/Containers/Data/Application/[应用UUID]/Library/Caches/(对应MAUI中FileSystem.CacheDirectory)
  • MAUI默认无自动日志文件,日志库需配置到上述路径。
  • 访问方式:
    • 模拟器:可直接通过打印的UUID在Finder中定位路径
    • 真机:需通过Xcode的「Devices and Simulators」窗口,选中应用后点击「Download Container」导出沙盒文件,再查看内部日志

通用解决方案

  1. 获取正确路径:在MAUI中使用FileSystem类获取平台适配的路径,示例代码:
using System.IO;
using Microsoft.Maui.Storage;

var logFilePath = Path.Combine(FileSystem.AppDataDirectory, "app.log");
  1. 打印路径调试:将路径输出到调试窗口,确保配置正确:
System.Diagnostics.Debug.WriteLine($"日志文件路径:{logFilePath}");
  1. 日志库配置:以Serilog为例,配置写入指定路径:
Log.Logger = new LoggerConfiguration()
    .WriteTo.File(logFilePath, rollingInterval: RollingInterval.Day)
    .CreateLogger();

内容的提问来源于stack exchange,提问作者Divyesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 07:45:49