Arhn - архитектура программирования

Xamarin.UITesting NU1201 Ошибка: Android 8.1 несовместим с .NETFramework 4.6.1

В последние пару дней у меня возникла небольшая проблема, когда я создам новый проект Xamarin Forms в Visual Studio 2017 и добавлю кросс-платформенный тестовый проект Xamarin.UITest для модульного тестирования. Я получаю серию ошибок NU1201, когда я ссылаюсь приложение .Android в проекте UITest.

Вот точная ошибка, которую я получаю:

Error NU1201    Project App1.Android is not compatible with net461 (.NETFramework,Version=v4.6.1) / win-x64. Project App1.Android supports: monoandroid81 (MonoAndroid,Version=v8.1)    

Я поиграл с номерами версий Android, чтобы убедиться, что пакет UITesting не поддерживает последнюю версию Android, но независимо от того, какую версию Android я использую, проблема остается прежней.

Вот скриншот проекта. введите описание изображения здесь Весь код не изменился по сравнению с проектом по умолчанию и отлично работает в симуляторе, но выдает эти ошибки только тогда, когда приложение Android ссылается на проект UITest.


Ответы:


1

Решил это после многих часов тестирования и испытаний. Вместо того, чтобы добавлять проект Android в ссылки, в AppInitializer я добавил еще один метод к вызову StartApp() следующим образом:

public class AppInitializer
{
    public static IApp StartApp(Platform platform)
    {
        if (platform == Platform.Android)
        {
            return ConfigureApp.Android.InstalledApp("com.companyname.App1").StartApp();
        }

        return ConfigureApp.iOS.StartApp();
    }
}

Поэтому, как только я впервые запустил приложение через эмулятор и установил его на устройство, UITest просто использует установленный APK на эмуляторе вместо проекта.

13.07.2018
  • Спасибо, что поделились. @Fakelzaman, так что в конце концов вы все еще сохранили свою DLL UITests, используя .NET v4.6.1, верно? 21.07.2018
  • Да, эта версия осталась прежней @Damian 21.07.2018
  • Не вызывает ли это проблем при попытке запустить тест в AppCenter? 10.09.2018
  • Вызов по имени приложения у меня не сработал, сработал следующий код. Не забывайте, что apk должен находиться в папке bin, для чего требуется развертывание, а не только сборка. Приложение IApp = ConfigureApp.Android.ApkFile(../../../AndroidProject/bin/Debug/android.apk).StartApp(); вернуть приложение; 24.12.2020

  • 2

    Для тех, кто столкнулся с ошибкой NU1201, возможно, вы попали в нужное место. Это может не относиться к заданному вопросу, но на днях я столкнулся с ошибкой NU1201, и причина этого в том, что файл конфигурации nuproj для нашего проекта nuget имеет неправильную целевую конфигурацию. Это должно было быть

    <TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>

    вместо

    <TargetFramework>net462</TargetFramework>

    потому что проект не в стиле SDK.

    Ссылки: https://docs.microsoft.com/en-us/visualstudio/msbuild/msbuild-target-framework-and-target-platform?view=vs-2019

    08.05.2021
    Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..