ответ

0

Как уже писали другие, программная деинсталляция недоступна для приложений, установленных в магазине, по дизайну.

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

Промывка ваше AppData означает следующее:

  • Удалить все файлы в локальных и временных папок AppData.
  • Удалите все локальные настройки appdata в контейнере настроек.
  • Очистить все, что вы положили в Windows.Storage.AccessCache.
  • Очистить любую информацию, сохраненную в Windows.Storage.PasswordVault.

Я не упоминал о роуминге файлов и настроек приложений по какой-либо причине. Если вы используете роуминг-приложения, эти данные будут автоматически сохраняться в облаке в течение некоторого периода времени, даже если все экземпляры приложения на устройствах пользователя будут удалены. Это делается по дизайну, поэтому, если пользователь пытается удалить все экземпляры всех, а затем переустановить в течение примерно месяца, их настройки и данные все еще существуют. (Представьте, что вы убираете ноутбук и планшет, чтобы их можно было продать, а затем получить некоторые новые.)

Результат состоит в том, что если вы хотите гарантировать, что данные будут стерты, избегайте вообще использовать роуминг-приложения. Если вы хотите перемещаться, используйте другую облачную службу, над которой у вас больше контроля (например, таблицы в Azure Mobile Service). Таким образом, вы можете специально очистить все данные по запросу пользователя.

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

В качестве примечания вы можете быть заинтересованы в этом сообщении моего блога о блоге Windows Dev, http://blogs.windows.com/buildingapps/2014/06/19/common-questions-and-answers-about-files-and-app-data-part-1-app-data/, а также о разговоре, который я сделал в // build 2013 под названием «История государства», http://channel9.msdn.com/Events/Build/2013/3-9118.

+0

Да, я сделал все это. Единственное, что я хотел, это удалить, которая кажется невозможной сейчас. – Query21

+0

Исправить: Хранить приложения не удается. API-интерфейсы, которые это делают, находятся в Windows.Management.Deployment.PackageManager (https://msdn.microsoft.com/en-us/library/windows/apps/windows.management.deployment.packagemanager.aspx), но они ограничивается только процессами полного доверия.Это означает, что настольное приложение может выполнять такую ​​работу, но приложения Store не могут. Таким образом, пользователю остается сделать этот явный шаг. –

+0

Кроме того, если у вас есть хорошее обоснование того, почему разработчик должен иметь доступ к таким API-интерфейсам, я предлагаю разместить их на https://wpdev.uservoice.com/forums/110705-dev-platform, чтобы они были видны команде продукта и доступный для других людей. –

0

Нет. Ни на C#, ни на C++.

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

+0

Это не функциональность для пользователей. В определенных условиях разработчик хотел бы иметь этот контроль. – Query21

0

Это невозможно, так как пользователь должен всегда находиться под контролем.

Смежные вопросы