我有一行代码如下:
LoggingConfiguration config = LogManager.Configuration;
当我在Debug构建中运行它时,返回配置就好了。当我在Release版本中运行它时会抛出一个异常,我追踪到这个调用返回null。
我解压缩了两个APK,可以看到资产文件夹中的NLog.config文件。 我还编写了一些显式加载文件并将其输出到Console.Writeline的代码,它在Debug和Release版本中都有效。
我添加了一个空检查,但我确实想修改NLog配置,并在调用此代码时进行一些日志记录。
NLog上的Nuget包信息:
<package id="NLog.Config" version="4.4.3" targetFramework="monoandroid41" />
我通过Windows版本测试了应用程序(Xamarin.Windows,因此有些共享代码)。发现日志记录在发布模式下工作正常。
我研究了如何让NLog登录到其内部日志文件(必须使用显式路径指向它有权写入的位置)。
internalLogToConsole ="true" internalLogLevel="Trace" internalLogFile="/storage/sdcard0/Download/nlog-internal.log">
在发布模式下构建和运行时记录的错误是:
Error Parsing configuration from assets/NLog.config failed. Exception: NLog.NLogConfigurationException: Exception when parsing assets/NLog.config. --> NLog.NLogConfigurationException: Cannot access the constructor of type: NLog.Targets.FileTarget. Is the required permission granted?
我解压了Release APK,可以看到资产文件夹中的NLog.config文件。我想知道如何修改此文件的权限。另外,为什么它在Debug构建中很好,但在Release构建中却没有?