5

Desidero aprire Windows Store della mia attuale applicazione (in modo che l'utente possa valutare/rivedere l'app). In tal modo, ho bisogno di ottenere l'ID dell'app. Tuttavia, mi imbatto in this article in SO che dice che CurrentApp.AppId richiede molto tempo e offre l'ID del pacchetto come sostituzione. Non ho mai rilasciato un'applicazione su Windows Store e non posso testarla ora senza un'app pubblicata/pubblicata su Windows Store.L'ID app e ID pacchetto sono identici?

Qualcuno può aiutarmi a confermare le seguenti due righe di codice?

 //var appId = CurrentApp.AppId.ToString(); 
     var appId = Windows.ApplicationModel.Package.Current.Id; 

risposta

4

No, AppId e PackageId non sono identici.

Come potete vedere AppId è una struttura Guid mentre PackageId è una classe. AppId viene generato da Windows Store quando la tua app è stata certificata per la registrazione in Windows Store, mentre PackageId fornisce informazioni di identificazione del pacchetto, come nome, versione ed editore, che possono essere trovate nel tuo manifest appx.

Poiché AppId è correlato a Windows Store, quindi la prima volta che si tenta di ottenerlo, potrebbe essere necessario del tempo. Ma questo non sarà troppo lungo, nel mio test è di circa 1 secondo. Dopo questo, quando si tenta di ottenere nuovamente il AppId, sarà molto veloce. (Penso che sia stato memorizzato nella macchina locale in quanto il suo valore è invariato.)

Tuttavia, se si desidera avviare la pagina dei dettagli del prodotto (PDP) per un prodotto. L'ID prodotto è consigliato per i clienti su Windows 10. E l'ID prodotto non è il AppId.

Per ottenere il numero di serie, come detto Launch the Windows Store app:

Questi valori possono essere trovati nel cruscotto di Windows Dev Center sulla pagina App identity nella sezione di gestione App per ogni app.

Per ottenere risultati a livello di codice, possiamo provare ad usare CurrentApp.LinkUri proprietà, questa proprietà restituisce l'URI della pagina di quotazione del app in Windows Store come:

https://www.microsoft.com/store/apps/<your app's Product ID>.

Anche l'ID prodotto è invariato, quindi penso che sia possibile trovarlo nella dashboard di Windows Dev Center e inserirlo nella propria app.

+0

Può finire il lavoro, per esempio in 'C#' con 'var id = uriLink.Substring (uriLink.LastIndexOf ('/') + 1);' – bunkerdive

1

Questo dovrebbe ottenere ciò che si vuole:

await Launcher.LaunchUriAsync(new Uri($"ms-windows-store:REVIEW?PFN={Package.Current.Id.FamilyName}")); 

Il negozio sarà gestire il protocollo ms-windows-store:, e gli argomenti punterà a "Punteggio e Commenti" del vostro app sezione.

+0

Grazie mille. Questo è davvero ciò di cui ho bisogno. Tuttavia, per riferimento futuro, mi piacerebbe se ci fosse una vera risposta alla mia domanda. Se non c'è nessuno domani, cambierò la mia domanda e segnerò la tua come risposta. –

+1

Inoltre, in base a questo articolo MSDN: https://msdn.microsoft.com/en-us/windows/uwp/launch-resume/launch-store-app?f=255&MSPPError=-2147217396 'Avvia la pagina dei dettagli del prodotto (PDP) per un prodotto. L'ID prodotto è consigliato per i clienti su Windows 10, ma i modi precedenti di farlo (es: PFN) funzionano ancora. Dice che dovrei usare l'ID prodotto? –

Problemi correlati