Основная разница между действиями VS2017 и VS2019

Прошлой ночью я перешел на новую машину, и мне пришлось установить Visual Studio 2019, перенеся все мои проекты с моей предыдущей машины, где я использовал Visual Studio 2017.

Теперь по какой-то причине, создавая пустое приложение для Android, у меня есть новый метод в моем файле MainActivity.cs.

public override void OnRequestPermissionsResult(int 
    requestCode, string[] permissions, [GeneratedEnum] 
    Android.Content.PM.Permission[] grantResults)
    {
        Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);

        base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
    }

При использовании VS2017 мой класс MainActivity содержал только один метод:

protected override void OnCreate

Я изо всех сил пытаюсь понять, изменилось ли это в VS2019 (не уверен, почему это имеет значение), или я сделал что-то неправильно при установке и настройке среды.

Любая помощь будет действительно оценена, так как я ломаю голову над этим.

Поскольку FragmentActivity реализует ActivityCompat.OnRequestPermissionsResultCallback, поэтому ваш класс будет реализовывать OnRequestPermissionsResult.... ИМХО, я не уверен, что бы добавило это, оно было добавлено в 24.1.0, поэтому, если вы изменили цель на это или дальше, это было бы... Проверьте версию, на которую вы ориентируетесь.

Trevor 17.05.2019 19:14

Вы правильно обновились, кто знает, что случилось TBH. На какую версию вы ориентируетесь в своем решении 2019? whycreating a Blank android app, I have a new method, вероятно, потому что он ориентирован на текущую версию...

Trevor 17.05.2019 19:18

Извините, просто проверял. Оба были нацелены на Android Oreo 8.1 (то есть 27+ верно)? Мой проект 2017 года даже не будет собран в 2019 году. Неожиданная ошибка при получении задачи «LinkAssemblies».

James Pavett 17.05.2019 19:28

@ Çöđěxěŕ, поэтому я только что установил VS2017 на свою машину, и она работает отлично, поэтому я совсем запутался.

James Pavett 17.05.2019 19:38

Вы только что установили VS2017, я думал, что это VS2019, который вы установили только что..?

Trevor 17.05.2019 19:39

Я только что установил VS2017 на свою новую машину, чтобы проверить, работают ли на ней проекты. Все еще есть проблема с VS2019.

James Pavett 17.05.2019 19:41

Давайте продолжить обсуждение в чате.

James Pavett 17.05.2019 20:12
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
7
1 032
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Это потому, что Xamarin хочет, чтобы вы знали о Xamarin.Essentials.

Xamarin Essentials позволяет получить доступ к зависящим от платформы функциям, таким как барометр, настройки, геокодирование и т. д., через определенный API.

Чтобы узнать обо всех поддерживаемых функциях, ознакомьтесь с документацией. Имейте в виду, что некоторые функции все еще находятся в предварительной версии.

Начало работы с Xamarin Essentials

Поскольку эти функции зависят от разрешений, библиотека даже запрашивает разрешение, и поэтому xamarin.essentials должен знать о результатах разрешения.

Исходный код запроса разрешения

Это как раз тот ответ, который я искал! Есть ли способ, чтобы VS автоматически обновлял пакет Nuget до версии 1.1.0 для любого нового проекта. Сейчас я получаю довольно много ошибок, которые мешают сборке приложения, пока я не обновлю его.

James Pavett 19.05.2019 11:02

@JamesPavett Шаблоны просто берут файлы, которые были предоставлены для шаблона. Если шаблон не создается сразу, либо в шаблоне есть ошибка, либо у вас неправильная настройка Visual Studio. С моей визуальной студией 2019 проекты xamarin для Android работают без каких-либо настроек. Обычно вы не хотите автоматически обновлять версию пакета в проекте, так как это связано с рисками.

eugstman 21.05.2019 11:37

Другие вопросы по теме