Развертывание автоматизации фонового приложения Win10 IoT на RPi3
RPi3 работает под управлением Win 10 IoT Core v.10.0.17661.1001 и настроен в автономном режиме, поэтому приложение переднего плана не может быть запущено. ссылка: https://docs.microsoft.com/en-us/windows/iot-core/learn-about-hardware/headlessmode
Развертывание должно происходить без какого-либо вмешательства человека, и приложения должны быть настроены по умолчанию при запуске, и здесь начинается проблема.
Фоновое приложение автообновления устанавливается и настраивается как автозагрузка вручную. Это может обновлять или устанавливать другие приложения (загруженные сбоку), не требуя ввода данных пользователем, однако, когда новое приложение установлено, мне нужно настроить его как автозагрузку, поэтому, если устройство перезапускается, я точно знаю, что процесс запущен.
Кроме того, более чем одно приложение должно быть настроено для запуска при запуске.
Я пробовал следующие методы:
1) Расширение задачи запуска не работает в Win10 IoT Core, доступно только для Win Desktop: https://docs.microsoft.com/en-us/uwp/api/windows.applicationmodel.startuptask
2) Настройка при запуске при первом запуске также не работает, и при запросе по идентификатору запуска выдается исключение. https://blogs.windows.com/buildingapps/2017/08/01/configure-app-start-log/
3) Запуск сценариев powershell или команд IotStartup из процесса "автообновления" после установки нового приложения, однако в Win10IoT Core это невозможно выполнить из приложения (по крайней мере, для powershell). https://www.hackster.io/AnuragVasanwala/windows-10-iot-core-setting-startup-app-887ed0
4) Я нашел этот метод для запуска cmd из кода на IoT http://www.iot-developer.net/windows-iot/uwp-programming-in-c/command-line-uwp-programming-in-c/executing-command-line-commands
Самое смешное, что Windows.System.ProcessLauncher и связанные с ним классы не существуют.
Я думаю, что ближе всего к настройке приложений при запуске я обратился к 4-му описанному методу, хотя мне все еще нужно выяснить, что происходит с ProcessLauncher или мне может потребоваться какая-то конкретная версия SDK для его использования.
Уже потрачено несколько часов, пытаясь сделать эту работу, поэтому, если у кого-то есть идеи или идеи, пожалуйста, дайте мне знать!:)