Theo dõi từ How can I build a targetting pack for Portable Class Libraries? và lời khuyên trong http://jpobst.blogspot.com/2012/04/mono-for-android-portable-libraries-in.html Tôi đã quản lý để xây dựng một số chương trình ví dụ đơn điệu sử dụng Thư viện lớp học di động.Có thể sử dụng Thư viện lớp di động tham chiếu System.Net trong MonoDroid không?
Tuy nhiên, nếu bất kỳ PCL đầu vào nào của tôi tham chiếu đến lắp ráp System.Net, thì monodroid không gói gói ứng dụng của tôi - vì nó than phiền về Tệp Không tìm thấy cho System.Net.dll.
Khi tôi hiểu nó (từ http://docs.xamarin.com/android/about/assemblies), MonoDroid bao gồm tất cả chức năng System.Net bên trong System.dll.
Có cách nào để có thể sử dụng MonoDroid để sử dụng các PCL tham chiếu System.Net này không?
- Có cách nào để tôi có thể mua trình đóng gói monodroid để hiểu System.net-> Chuyển hướng hệ thống này không?
- Hoặc là có một số bước trước gói tôi có thể chạy mà sẽ "chính xác" tham chiếu chỉ cho monodroid?
- Hoặc bất kỳ đề xuất nào khác?
Cập nhật với thông tin kỹ thuật:
Quá trình đóng gói hiện đang thất bại ở cấp độ:
"C:\Projects\Misc\MVVMCROSS\Sample - Tutorial\Tutorial\Tutorial.UI.Droid\Tutorial.UI.Droid.csproj" (SignAndroidPackage target) (1) ->
(_ResolveAssemblies target) ->
C:\Program Files (x86)\MSBuild\Novell\Novell.MonoDroid.Common.targets(441,2): error : Exception while loading assemblies: System.IO.FileNotFoundException: Could not load assembly 'System.Net, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e'. Perhaps it doesn't exist in the Mono for Android profile? [C:\Projects\Misc\MVVMCROSS\Sample - Tutorial\Tutorial\Tutorial.UI.Droid\Tutorial.UI.Droid.csproj]
C:\Program Files (x86)\MSBuild\Novell\Novell.MonoDroid.Common.targets(441,2): error : File name: 'System.Net.dll' [C:\Projects\Misc\MVVMCROSS\Sample - Tutorial\Tutorial\Tutorial.UI.Droid\Tutorial.UI.Droid.csproj]
C:\Program Files (x86)\MSBuild\Novell\Novell.MonoDroid.Common.targets(441,2): error : at Monodroid.Tuner.MonoDroidResolver.Resolve(AssemblyNameReference reference, ReaderParameters parameters) [C:\Projects\Misc\MVVMCROSS\Sample - Tutorial\Tutorial\Tutorial.UI.Droid\Tutorial.UI.Droid.csproj]
C:\Program Files (x86)\MSBuild\Novell\Novell.MonoDroid.Common.targets(441,2): error : at Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(List`1 assemblies, AssemblyDefinition assembly) [C:\Projects\Misc\MVVMCROSS\Sample - Tutorial\Tutorial\Tutorial.UI.Droid\Tutorial.UI.Droid.csproj]
C:\Program Files (x86)\MSBuild\Novell\Novell.MonoDroid.Common.targets(441,2): error : at Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(List`1 assemblies, AssemblyDefinition assembly) [C:\Projects\Misc\MVVMCROSS\Sample - Tutorial\Tutorial\Tutorial.UI.Droid\Tutorial.UI.Droid.csproj]
C:\Program Files (x86)\MSBuild\Novell\Novell.MonoDroid.Common.targets(441,2): error : at Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(List`1 assemblies, AssemblyDefinition assembly) [C:\Projects\Misc\MVVMCROSS\Sample - Tutorial\Tutorial\Tutorial.UI.Droid\Tutorial.UI.Droid.csproj]
C:\Program Files (x86)\MSBuild\Novell\Novell.MonoDroid.Common.targets(441,2): error : at Xamarin.Android.Tasks.ResolveAssemblies.Execute() [C:\Projects\Misc\MVVMCROSS\Sample - Tutorial\Tutorial\Tutorial.UI.Droid\Tutorial.UI.Droid.csproj]
này đang xảy ra trong phạm vi nhiệm vụ MSBuild:
<!-- Find all the assemblies this app requires -->
<ResolveAssemblies
Assemblies="$(ProjectDir)$(OutDir)$(TargetFileName);@(ReferencePath)"
I18nAssemblies="$(MandroidI18n)"
LinkMode="$(AndroidLinkMode)"
ReferenceAssembliesDirectory="$(TargetFrameworkDirectory)">
<Output TaskParameter="ResolvedAssemblies" ItemName="ResolvedAssemblies" />
<Output TaskParameter="ResolvedUserAssemblies" ItemName="ResolvedUserAssemblies" />
<Output TaskParameter="ResolvedFrameworkAssemblies" ItemName="ResolvedFrameworkAssemblies" />
<Output TaskParameter="ResolvedSymbols" ItemName="ResolvedSymbols" />
</ResolveAssemblies>
được nhập từ:
<UsingTask TaskName="Xamarin.Android.Tasks.ResolveAssemblies" AssemblyFile="Novell.MonoDroid.Build.Tasks.dll" />
Tôi đã hack trong một giờ (cũng đã cố gắng và thất bại tại một số MSBuild Xamarin Build Task hack) và ... Tôi có một số thành công! Cảm ơn. Sẽ báo cáo lại thông qua Twitter – Stuart
Đã viết blog một số ghi chú trên http://slodge.blogspot.co.uk/2012/04/using-portable-library-tools-for.html - sẽ đẩy đến github khi tôi nhận được monotouch làm việc quá ... (vấn đề với phát triển đơn độc hiện nay!) – Stuart