2017-10-21 246 views
2

我正在嘗試使用Windows 10 Fall Creators更新中的新更新程序來更新我在應用商店外發布的UWP應用程序。秋季創作者更新UWP App Installer更新程序無法正常工作

我使用的是.appinstaller文件,並觸發與這樣的鏈接安裝:ms-appinstaller:?source=https://xxx.s3.amazonaws.com/xxx.appinstaller

初始和更新版本的安裝都以這種方式工作。

但是,更新不會自動安裝。

我.appinstaller文件:

<?xml version="1.0" encoding="utf-8"?> 
<AppInstaller 
    xmlns="http://schemas.microsoft.com/appx/appinstaller/2017" 
    Version="1.0.77.0" 
    Uri="https://xxx.s3.amazonaws.com/xxx.appinstaller" > 

    <MainBundle 
     Name="4f479232-f509-428e-a58a-65652003c90f" 
     Publisher="CN=xxx, O=xxx, L=xxx, C=DE" 
     Version="1.0.77.0" 
     Uri="https://xxx.s3.amazonaws.com/xxx/Packaging_1.0.77.0_Test/Packaging_1.0.77.0_x86_x64.appxbundle" /> 
    <UpdateSettings> 
     <OnLaunch/> 
    </UpdateSettings> 
</AppInstaller> 

更新.appinstaller文件的區別僅在於版本beeing 1.0.78.0和MainBundle-URL指向更新包。所有的代碼簽名都是有效的。

我還沒有爲這個更新程序修改該應用程序。

捕捉與Fiddler連接的更新程序不成功。

我真的很感激任何幫助,因爲我甚至不知道如何調試。 應用程序安裝程序是否在任何地方創建日誌?

-

PS C:\Users\marvin> Get-AppxPackage -Name 4f479232-f509-428e-a58a-65652003c90f 


Name    : 4f479232-f509-428e-a58a-65652003c90f 
Publisher   : CN=xxx, O=xxx, L=xxx, C=DE 
Architecture  : X64 
ResourceId  : 
Version   : 1.0.77.0 
PackageFullName : 4f479232-f509-428e-a58a-65652003c90f_1.0.77.0_x64__1mez93s8c8axt 
InstallLocation : C:\Program Files\WindowsApps\4f479232-f509-428e-a58a-65652003c90f_1.0.77.0_x64__1mez93s8c8axt 
IsFramework  : False 
PackageFamilyName : 4f479232-f509-428e-a58a-65652003c90f_1mez93s8c8axt 
PublisherId  : 1mez93s8c8axt 
IsResourcePackage : False 
IsBundle   : False 
IsDevelopmentMode : False 
Dependencies  : {4f479232-f509-428e-a58a-65652003c90f_1.0.77.0_neutral_split.scale-100_1mez93s8c8axt, 
        4f479232-f509-428e-a58a-65652003c90f_1.0.77.0_neutral_split.scale-400_1mez93s8c8axt} 
IsPartiallyStaged : False 
SignatureKind  : Developer 
Status   : Ok 

編輯:由於張貼這,我發現描述日誌和錯誤代碼的頁面:https://msdn.microsoft.com/en-us/library/hh973484.aspx# 在AppXDeployment-Server日誌我看到,大幹快上我的應用程序的每一個開始記錄的事件:

Type: info, DeploymentOperation 31 
Message Started deployment UpdateUsingAppInstallerOperation on a 
package with main parameter 4f479232-f509-428e-a58a-65652003c90f_1.0.77.0_x64__1mez93s8c8axt 
and Options: 0 and 0. See http://go.microsoft.com/fwlink/?LinkId=235160 
for help diagnosing app deployment issues. 

編輯2:我創建了一個示例項目,顯示這裏這個問題:https://github.com/Marv51/appxUpdater

您可以從以下網址下載已編譯,已簽名和打包的二進制軟件包:https://testingappxupdater.s3.amazonaws.com/index.html

+0

我也無法使.appinstaller工作。看到https://twitter.com/tonyvca/status/921693502722990082 – Tony

+0

@Tony安裝與.appinstaller在這裏工作,只有更新器部分不起作用。但是我將它用於Desktop Bridge App,因此沒有依賴關係。 – marv51

+0

我認爲AppInstaller版本應該是1.0.0.0 Tony

回答

0

@ marv51 - Windows 10部署服務目前僅在每次啓動應用程序時每24小時檢查一次更新。因此,請嘗試在24小時後再次啓動該應用程序,並在啓動的應用程序關閉後應用更新。

如果您不想等待,您可以轉發系統時鐘24小時並再次啓動應用程序以觸發更新。

+0

部署服務是否在任何地方記錄任何附加輸出?我可以設置詳細/調試標誌或什麼?我可以從PowerShell啓動進程嗎?我等了24小時試了一下,沒有更新。 我設定時鐘前進一天,重新啓動,啓動應用程序,等待5分鐘,退出應用程序,再次啓動應用程序,同一版本。 EventViewer在每次啓動時都顯示相同的UpdateUsingAppInstallerOperation。而已。 – marv51

+0

很抱歉聽到這個消息。沒有辦法從PowerShell觸發更新過程。您可以使用PowerShell安裝.AppInstaller文件。 您可以驗證您是否可以手動安裝已更新的.AppInstaller文件而沒有任何問題? – Chait

+0

我已驗證手動觸發時,新版本安裝成功。 – marv51

1

下面是我遵循的詳細步驟:

  1. 有一個正確構建AppInstaller文件。在我的測試中,Uri元素屬於<AppInstaller>屬性。
  2. 通過使用自定義方案ms-appinstaller:?source=<http://...>
  3. 驗證安裝在AppInstaller文件中指定的一個版本安裝它。
  4. 通過遞增<AppInstaller>屬性下的Version元素來修改AppInstaller文件。
  5. 修改<MainBundle><MainPackage>屬性下指定的應用程序包以引用新版本。確保名稱,版本,發佈者都匹配應用清單中指定的元素。
  6. 將其保存並上傳到Web服務器中的相同位置。
  7. 請等待24小時或將您的系統時鐘向前移動24小時。 how to change system clock
  8. 24小時後,再次啓動應用程序並關閉它。在此應用程序的啓動時,應該觸發更新檢查。關閉應用後,更新將成功完成。
  9. 再次啓動應用程序,這次它應該是新版本。根據更新的大小,可能需要更長的時間才能完成更新操作。
+0

好的步驟解釋!!!! 非常感謝!你是上帝! 但我找不到有關觸發更新事件的任何信息。應用程序是否包含.appinstaller文件,以便通過應用程序文件(在服務器上)檢查和競爭新版本? 是否將應用程序打包到自己的appinstaller文件中?它如何確定.appinstaller和.appxbundle文件的URL? 預先感謝您。 –