Свернуть приложение Магазина Windows 8 при отслеживании местоположения с помощью GPS

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

Недавно мы развернули планшеты для наших полевых представителей, и нам нужно добавить отслеживание GPS. С GPS намного проще иметь дело в городских библиотеках (это примерно 4 строки кода по сравнению с неуправляемыми), поэтому мы надеемся, что сможем продвигать городское приложение вместо того, чтобы тратить время на кодирование настольного приложения winforms/wpf (таблетки полная версия Windows, так что это вариант, если мы не можем скрыть приложение метро. Я чувствую, что это должно быть возможно, поскольку плитки начального экрана обновляются автоматически, не открывая основную программу).

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

В настольных программах это довольно просто. Вы делаете что-то вроде:

<Page
x:Class = xxxxxxxx
..
Visibility="Hidden">

К сожалению, с метро единственные варианты, которые у меня есть, свернуты и видны. Collapsed, похоже, не имеет никакого эффекта, если только это не потому, что он не развернут, и визуальная студия все равно показывает это...

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


person Aaron    schedule 18.09.2013    source источник


Ответы (3)


Если вы действительно хотите создать метро-приложение и хотите, чтобы оно работало в «свернутом виде», вам нужно посмотреть фоновая задача. Чтобы запустить фоновую задачу, пользователю все равно нужно будет запустить приложение хотя бы один раз, кроме того, фоновая задача имеет ограничения на то, как часто и как долго они могут выполняться. Кроме того, существует много ограничений на развертывание приложения из магазина Windows, если вы не можете опубликовать его в магазине.

Если ваша цель — просто получить доступ к GPS через API C#, GPS — это фактически один из API WinRT, который вы можете использовать с рабочего стола, вы можете найти руководство о том, как получить доступ к API WinRT с рабочего стола здесь

Вот полный список API winRT, доступный с рабочего стола (среди них вы можете найти класс Geoposition).

person Benoit Catherinet    schedule 18.09.2013
comment
Спасибо Бенуа. Сначала я пытался сделать это как настольное приложение. Я открыл файл манифеста и добавил ‹TargetPlatform›8.0‹/TargetPlatform› и импортированные окна. Однако я столкнулся с проблемой с типизированными делегатами. Когда я запустил программу, я получил сообщение об ошибке, похожее на то, что эта опция недоступна в языке (я полагаю, что с typedevenhandler). Я еще не просматривал учебник, я сделаю это сейчас, у него могут быть другие способы предоставления API RT, чем просто изменение TargetPlatform. - person Aaron; 19.09.2013
comment
Я считаю, что это решает эту проблему! Еще раз спасибо!! Из учебника: вам может понадобиться добавить ссылку на System.Runtime.WindowsRuntime.dll, если вы используете сопоставленные типы, такие как обработчики событий среды выполнения Windows: :) - person Aaron; 19.09.2013
comment
Работал безотказно!! Мне не хватало ссылки на System.Runtime.WindowsRuntime.dll. Добавил это и никаких дополнительных изменений не требуется. Отмечен как ответ и проголосовал. Если бы я мог сделать для вас больше, я бы сделал :) - person Aaron; 19.09.2013

Задумывались ли вы о создании фоновой задачи, которая передает GPS? Фоновая задача может выполняться без запуска приложения.

person Eric    schedule 18.09.2013

Я не совсем уверен, что вы можете добровольно свернуть приложение Магазина Windows от имени пользователя. Я ничего не вижу в IntelliSense об этом, и я не нашел ничего в Интернете или не видел, чтобы какое-либо приложение делало это.

Однако имейте в виду, что для развертывания приложения без использования Магазина Windows — с загрузкой неопубликованных приложений — требуются компьютеры с Windows 8 Корпоративная, присоединенные к домену, ИЛИ Windows 8 Pro с ключом для неопубликованной загрузки (30 долларов США за ключ, приобретаемый в упаковках не менее 100 штук). Возможно, приложение WPF с неуправляемым кодом стоит денег и усилий.

person Guttsy    schedule 18.09.2013
comment
Нам удалось получить его в настольном приложении с целевой платформой версии 8.0 и ссылкой на System.Runtime.WindowsRuntime.dll в папке framework 4.5. Мы уже используем Enterprise, так что это не проблема :) Я начал тестировать сегодня. Кажется, что он обновляется только каждые 5-6 минут, даже если вы настроите геолокатор на более быстрое обновление (1 секунду, 15 секунд и т. д.), так что я мог бы изучить это позже. На данный момент широта и долгота идентичны в течение достаточно долгого времени (у меня было ~ 30 записей точно так же, прежде чем он обновился ... но я также не двигал планшет). Я ожидаю, что последние 2-3 цифры будут часто меняться. - person Aaron; 20.09.2013