2016-08-02 10 views

Antwort

1

Wenn wir die LaunchUriAsync(Uri) Methode verwenden, um eine App zu starten, wird das System zunächst versuchen, die installierte App zu starten, die dieses Protokoll registriert, wenn das Ziel App nicht installiert ist, dann wird es die Store App öffnen und die empfohlenen Anwendungen zeigt die registriert dieses Protokoll.

FindPackagesForCurrentPublisher Methode kann nur die App-Pakete mit dem gleichen Verlag ID als App für andere app, die nicht mit dem gleichen Verlag ist, müssen Sie FindPackages method verwenden, und diese Methode erfordert ID_CAP_OEM_DEPLOYMENT. Für den Desktop gibt es keine Methode, Sie benötigen einen speziellen Zugang, um diese Arbeit zu erledigen, sonst können Sie die Sandbox der UWP-App nicht beschädigen. Wenn Ihre App nicht im Store veröffentlicht wird, gibt es eine Methode, die PackageManager class verwendet, um das installierte Paket zu finden. Um diese Klasse zu verwenden, müssen Sie packageManagement Fähigkeit in Ihrer App manifestieren wie folgt hinzuzufügen:

<Package 
    xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10" 
    xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest" 
    xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" 
    xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities" 
    IgnorableNamespaces="uap mp rescap"> 

    ... 

    <Capabilities> 
    <Capability Name="internetClient" /> 
    <rescap:Capability Name="packageManagement" /> 
    </Capabilities> 
</Package> 

Für diese Fähigkeit, die Sie Special and restricted capabilities beziehen.

Endlich können Sie diese Klasse in Ihrer Anwendung, zB Liste aller installierten Pakete:

var packageManager = new PackageManager(); 
IEnumerable<Windows.ApplicationModel.Package> packages = (IEnumerable<Windows.ApplicationModel.Package>)packageManager.FindPackagesForUser(""); 
var list = packages.ToList(); 
+0

Danke für die Antwort! Die App, die ich starten möchte, stammt vom selben Publisher. Gibt es eine Möglichkeit zu finden, ob es installiert ist? –

+0

@JamesEsh, Ja, aber nur auf Handy .... –

+0

Gibt es einen Grund dafür? Und es gibt absolut keine Möglichkeit zu finden, ob eine App desselben Herausgebers auf dem PC installiert ist? Das scheint dumm ...: | –

Verwandte Themen