В учебнике я выполнил несколько шагов по интеграции NLog в наше приложение Xamarin (не Forms). Там есть папка для хранения файлов журнала: $ {specialfolder: folder = MyDocuments}. Если я изменю эту папку, например, на / sdcard / Download, то увижу, что папка журналов создана, и я могу получить доступ к файлам журналов / скопировать их.
C:\Users\bachph>C:\Android\android-sdk\platform-tools\adb.exe pull /sdcard/Download/logs/ D:\temp
/sdcard/Download/logs/: 2 files pulled. 5.4 MB/s (2077256 bytes in 0.370s)
Если я сейчас верну папку на $ {specialfolder:folder = MyDocuments} и распечатать путь к этой папке
LogManager.GetCurrentClassLogger().Info("NLog.config loaded. Application Start.");
LogManager.GetCurrentClassLogger().Info($"NLog logs to {Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)}");
Я не вижу данные в оболочке и не могу получить доступ / скопировать их из этой папки. Теперь я не уверен, разрешает ли мне Android доступ к папке / файлам или NLog не может писать в эту папку.
Есть идеи?
Редактировать: внутренняявывод журнала трассировки
2019-10-07 11:39:47.6959 Debug FileTarget(Name=f): Process file '/data/data/de.app.debug/files/logs/app-2019-10-07.log' on startup
2019-10-07 11:39:47.7298 Debug Creating file appender: /data/data/de.app.debug/files/logs/app-2019-10-07.log
2019-10-07 11:39:47.7377 Debug Mutex for file archive not supported
2019-10-07 11:39:47.7439 Trace Opening data/data/de.app.debug/files/logs/app-2019-10-07.log with allowFileSharedWriting=False
2019-10-07 11:39:47.6440 INFO App.Activities.Base.MainActivity NLog.config loaded. Application Start.