2016-02-23 5 views
12

Wenn ich die App-Zertifizierung auf meine Vorlage 10 basierte Anwendung ausführen, ich die folgende Fehlermeldung erhalten:App Certification schlägt fehl, da der PreLaunch-Test

Fehler gefunden: Die App prelaunch Validierung folgende Fehler festgestellt: ◦The App prelaunch fehlgeschlagen test - 49581RisingSoundMedia.ElectionCentral_1.1.7.0_x64__xrbjpqg44kdgm.

• Auswirkung, wenn nicht behoben: Die App startet länger, selbst wenn der Vorstart aktiviert ist.

• Vorgehensweise: Stellen Sie in der OnLaunched-Methodenimplementierung der App sicher, dass Sie die LaunchActivatedEventArgs.PreLaunch-Option so behandeln, dass sie als prelaunch-Ereignis bekannt ist.

Offensichtlich kann ich OnLaunched nicht sogar mit Vorlage 10 überschreiben, weil die Bootstrap-Klasse es abschließt.

Ich habe versucht, OnPreLaunchAsync zu überschreiben und setzen continueStartup = false; aber es hat das Problem nicht behoben.

Irgendwelche Ideen?

+0

Wenn ich setze continueStartup = true; und ich debugge den Prelaunch in Visual Studio, die App läuft gut. Wenn continueStartup = false ist (oder nicht gesetzt ist), wird OnInitializeAsync niemals ausgeführt, und beim OnStartAsync-Ereignis erhalte ich eine NULL-Referenzausnahme. –

+0

Wenn ich die App packe und den App-Cert-Test ausführe, schlägt sie beim PreLaunch-Test jedoch immer noch fehl. Ich habe es von VS getestet mit .net Native aktiviert, und es hat gut funktioniert. –

Antwort

8

Es stellte sich heraus, dass ich im Laden veröffentlichen konnte, und es Zertifizierung bestanden, obwohl es das lokale Windows App Cert Kit lokal fehlgeschlagen.

+0

ohne Fehler? – yalematta

4

Ja, ich hatte dieses Problem, zuerst haben Sie 10 (1.1.4) auf die neueste Version von Vorlage aktualisiert: https://www.nuget.org/packages/template10

Nächste, was ich tun musste, war, alle meine Code zu bewegen, die in OnInitializeAsync und OnStartAsync war das war in app.xaml.cs in die App().

Sie müssen OnInitializeAsync und OnStartAsync so schlank wie möglich halten, Sie sollten nur den notwendigen Template10-Code in ihnen behalten und Ihren spezifischen Code in App() hinzufügen.

 public override Task OnInitializeAsync(IActivatedEventArgs args) 
     { 
      // content may already be shell when resuming 
      if ((Window.Current.Content as ModalDialog) == null) 
      { 
       // setup hamburger shell 
       var nav = NavigationServiceFactory(BackButton.Attach, ExistingContent.Include); 
       Window.Current.Content = new ModalDialog 
       { 
        DisableBackButtonWhenModal = true, 
        Content = new Shell(nav), 
        ModalContent = new Views.Busy(), 
       }; 
      } 
      return Task.CompletedTask; 
     } 


    public override async Task OnStartAsync(StartKind startKind, IActivatedEventArgs args) 
     { 
      NavigationService.Navigate(typeof(MainView)); 
      return Task.CompletedTask; 
     } 

In App() Ich meine alle Methoden meiner Initialisierung hinzugefügt für meinen app so mein App() sieht liek dies:

public App() 
    { 
     Microsoft.ApplicationInsights.WindowsAppInitializer.InitializeAsync(
      WindowsCollectors.Metadata | 
      WindowsCollectors.UnhandledException | 
      WindowsCollectors.PageView | 
      WindowsCollectors.Session 

      ); 

     this.InitializeComponent(); 
     var element = new ViewModelLocator(); 
     //Template10.Services.LoggingService.LoggingService.Enabled = true; 


     //Template 10 stuff 
     // DOCS: https://github.com/Windows-XAML/Template10/wiki/Docs-%7C-Cache 
     CacheMaxDuration = TimeSpan.FromDays(1); 

     // DOCS: https://github.com/Windows-XAML/Template10/wiki/Docs-%7C-BackButton 
     ShowShellBackButton = SettingsService.Instance.UseShellBackButton; 

     // DOCS: https://github.com/Windows-XAML/Template10/wiki/Docs-%7C-SplashScreen 
     SplashFactory = (e) => new Views.Splash(e); 


     //My code here 
     ApiRoot.Instance.Init(); 
     InitDeviceTypeAndResource(); 
     InitApiLanguage(); 
     InitAppLanguage(); 
     InitABCRatings(); 

     //For updating Tiles 
     RegisterBackgroundTask(); 
    } 

Ich hoffe, dass dies hilft Ihnen heraus!

+0

Hmmm, ich verwende v1.1.4 von Template 10, und ich habe nur den Standardcode in den App.cs-Methoden. –

+0

Können Sie Ihren Fehler mit den Beispielen in template10 reproduzieren?Wenn nicht, kannst du mir Code zeigen, damit ich dich besser sehen kann? – Damien

9

Dies scheint ein bekanntes Problem mit Windows-App Cert Kit zu sein: https://developer.microsoft.com/en-us/windows/develop/app-certification-kit

"Die App Prelaunch Validation Test schlägt fehl ig Sie vor der Version 1607 (Windows Anniversary Edition auf einer Version von Windows-10-Freigabe laufen Hinweis), dass dieser Test nicht ausgeführt wird als Teil der endgültigen Zertifizierung für Windows Store Einreichungen "

Auflösung:. um die Ergebnisse zu diesem Test Pass-Test mit Windows 10 SDK Version (14393) sicherzustellen, läuft auf Windows-10 Jubiläumsausgabe.

Verwandte Themen