无法AOT Akavache.Sqlite3.dll

时间:2018-06-27 18:27:29

标签: xamarin.forms xamarin.ios akavache

在调试时很好,但是在发布时我得到...

  

错误MT3001:无法AOT程序集Akavache.Sqlite3.dll'   (MT3001)(iOS)

有什么想法吗? Akavache.Sqlite3是5.0.0版。

我发现五年前有this。不知道该怎么做。

编辑:

docs中,它表示...

  

处理Xamarin链接器在您的任何位置添加以下类   项目,以确保Akavache.Sqlite3不会被链接出去   Xamarin

public static class LinkerPreserve
{
  static LinkerPreserve()
  {
    var persistentName = typeof(SQLitePersistentBlobCache).FullName;
    var encryptedName = typeof(SQLiteEncryptedBlobCache).FullName;
  }
}

什么是“链接出”?如果我注释掉“ encryptedName”行,则它将编译。这是有道理的,因为Akavache不进行加密-因此,我猜测缺少加密代码会导致链接器错误。

哦,我拿回去了。它适用于两行。完全没有错误。尽管该应用在启动时崩溃。

0 个答案:

没有答案