Xamarin UWP: приложение впереди / сзади (метод не существует?) - PullRequest
0 голосов
/ 29 апреля 2020

У меня есть приложение в xamarin, которое прослушивает папку и выполняет некоторые действия при создании файла. Но дело в том, что мне нужно иметь возможность:

  1. выводить мое приложение вперед при создании файла
  2. pu sh мое приложение сзади после завершения acyion

У меня есть начало ответа с

Window.Current.Activate();

, но это работает, только если мое приложение не свернуто (приложение не в первом просмотре) Я уже пробовал это:

IList<AppDiagnosticInfo> infos = await AppDiagnosticInfo.RequestInfoForAppAsync();
IList<AppResourceGroupInfo> resourceInfos = infos[0].GetResourceGroups();
await resourceInfos[0].StartSuspendAsync();

но Visual Studio сообщает мне

AppResourceGroupInfo не имеет определения для StartSuspendAsyn c ()

, но в документации упоминается AppResourceGroupInfo.StartSuspendAsyn c Метод

у кого-нибудь есть идея?

ОБНОВЛЕНИЕ [2020-04-29 16:48]:

  • Это проект pcl

  • . Цель состоит в том, чтобы использовать службу зависимостей, чтобы иметь различное соответствие в функции платформы (уже реализовано, требуется только передний / задний

интерфейс в pcl

public interface IWindowManager
    {
        void Minimize();
        void Maximize();
    }

в uwp

class WindowManager : IWindowManager
    {
        public async void Maximize()
        {
            try
            {
                Window.Current.Activate();
            }
            catch(Exception ex)
            {
                DependencyService.Get<IErrorLogger>().LogError(ex);
            }
        }

        public async void Minimize()
        {
            IList<AppDiagnosticInfo> infos = await AppDiagnosticInfo.RequestInfoForAppAsync();
            IList<AppResourceGroupInfo> resourceInfos = infos[0].GetResourceGroups();
            resourceInfos[0].StartSuspendAsync();
        }
    }

и, как я говорю, StartSuspendAsyn * 1 049 * () возникла проблема

1 Ответ

0 голосов
/ 30 апреля 2020

AppResourceGroupInfo не имеет определения для StartSuspendAsyn c ()

Получено из официального документа, StartSuspendAsync() доступно в обновлении Windows 10 1803 (сборка 17134) , Поэтому, пожалуйста, измените мини-версию проекта UWP на 17134.

, но это работает, только если мое приложение не свернуто (приложение не в первом виде)

Для создания приложения передний план , вы можете использовать следующий код.

IEnumerable<AppListEntry> appListEntries = await Package.Current.GetAppListEntriesAsync();
        await appListEntries.First().LaunchAsync();
...