簡體   English   中英

用於Android的prexisiting dlls(.NET 4框架)問題

[英]Prexisiting dlls (.NET 4 framework) issue with mono for android

我正在使用http://xamarin.com/monoforandroid為Android應用程序創建一個新的Mono 在此輸入圖像描述

使用Visual C#選項為Android應用程序選擇了Mono

我的Android目標版本是: 在此輸入圖像描述

我去了項目的參考,並嘗試添加我現有的dll(在.NET 4 Framework中制作),我得到了這個錯誤:

在此輸入圖像描述

奇怪的是,沒有選項可以從項目屬性更改.NET Framework。 你能告訴我我錯過了什么嗎?

這里的問題是你試圖從不是.NET 4的項目中引用.NET 4 DLL .Mono for Android使用自己的.NET配置文件,這與Silverlight非常相似(但不完全相同)相同)。 雖然添加為不同配置文件編譯的DLL可能會起作用,但由於Mono for Android配置文件中缺少某些內容,因此您可能會在運行時遇到問題,因為您可能會遇到問題。

現在最好的答案是創建一個Mono for Android類庫,鏈接到你想要使用的庫中的相應文件,並引用它。 這將為您提供編譯時檢查,表明您沒有使用Mono for Android配置文件不支持的任何內容,並且從長遠來看有助於您更加清醒。 在這里有一篇舊博客文章 ,討論如何跨項目鏈接文件。

也就是說,在這種情況下,你很幸運,因為其他人已經為你完成了最后一部分! 看看這個Json.NET的分支,它提供MonoTouch和Mono for Android的版本。

奇怪的是,沒有選項可以從項目屬性更改.NET Framework。 你能告訴我我錯過了什么嗎?

這並不特別奇怪 - 該對話框是由Microsoft編寫的,其中考慮了自己的項目類型。 聽起來像Android的Mono沒有相同的選項。

我強烈懷疑你只需要使用面向.NET 3.5的JSON.NET版本。

(話雖如此,Mono for Android聲稱支持“動態語言功能”,聽起來應該是針對.NET 4.奇怪。我懷疑修復是相同的。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM