“由Xamarin链接出去”是什么意思?

时间:2018-06-27 19:23:55

标签: xamarin.forms xamarin.ios akavache

Akavache文档中,它表示...

  

在您的项目中的任何地方添加以下类,以确保   Xamarin将不会链接Akavache.Sqlite3

“被Xamarin链接”是什么意思?

1 个答案:

答案 0 :(得分:4)

Xamarin.Android linkerXamarin.iOS linker从已编译的应用程序中删除未使用的代码。他们检查编译后的代码,并删除所有看起来好像在应用程序运行期间将被引用的代码。

由于此分析是在编译后的二进制文件上进行的(例如,静态分析),因此在某些情况下,应用程序使用会使用某些代码,但链接程序无法检测到这种用法。因此,链接器将删除此代码,即使使用该代码也是如此。当应用程序实际运行时,这将导致问题。

引用的Akavache.doc文档暗示Akavache.Sqlite3是其中一种情况,其中Xamarin链接器将无法告知其正在使用,因此链接器将错误地将其删除。文档建议您添加引用,以防止Xamarin链接程序删除Akavache.Sqlite3-即,防止Xamarin将链接库“链接”到您的应用程序。