2013-02-21 3 views
12

Я хочу создать PCL для MonoDroid и MonoTouch, чтобы использовать шифрование AES (RijndaelManaged), но Visual Studio не позволяло мне это делать, вместо этого он заставляет меня добавлять все остальные фреймворки , сообщение следующее:Портативная библиотека классов для MonoDroid и MonoTouch

Следующие рамки будут выбраны автоматически, поскольку они поддерживают все доступные функциональные возможности, которые переносятся между другими вами фреймворками: .NET для приложений Windows Store, .NET Framework 4.5, Windows Телефон 8.

и те рамки не поддерживают систему .Security.Cryptography namespace.

Файлы для MonoDroid и MonoTouch размещаются в папке C: \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework.NETPortable \ v4.5 \ Profile \ Profile78 \ SupportedFrameworks, которая уже содержит .NET для приложений Windows Store. xml, .NET Framework 4.5.xml, Windows Phone 8.xml.

Может кто-нибудь посоветуйте, как изолировать рамки Mono от других, нужен ли мне новый профиль или что-то еще.

+0

Также Followup этовопрос [Невозможно добавить Xamarin.Android и Xamarin.iOS в PCL] (http://stackoverflow.com/q/21571543/1671639) – Praveen

ответ

-7

У Afaik есть Visual Studio нет профиля PCL для продуктов Xamarin. Поэтому вы не можете выбрать его.

Возможно, вы захотите включить: .NET> = 4.0.3 и Silverlight 5, чтобы получить профиль, который должен быть совместим с продуктами Xamarin.

17

EDIT

Это делается автоматически установщиком. Вам также понадобится последняя версия nuget.


Фактически, все, что вам нужно сделать, это добавить xml-файл в нужную папку. Магически появится профиль PCL под названием «Mono for Android».

Имя

файла:

MonoAndroid,Version=v1.6+.xml 

Поместить в папку:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.0\Profile\Profile104\SupportedFrameworks 

Содержание файла:

<?xml version="1.0" encoding="utf-8"?> 
<Framework DisplayName="Mono for Android" 
    Identifier="MonoAndroid" 
    Profile="*" 
    MinimumVersion="1.6" 
    MaximumVersion="*" /> 

Для получения дополнительной информации смотрите на mvvmcross проекта https://github.com/slodge/MvvmCross

+0

Начиная с версии 1.8 это неприлично, потому что установщик автоматически добавит это. Будьте осторожны при параллельном использовании 2012 и 2013 годов, потому что мне кажется, что Xamarin-installer может интегрироваться только в один VS :-(. – sprinter252

+0

У вас нет. Вам просто нужно выбрать VS2013 или VS2012 вручную в установщике. – Cheesebaron