Windows 8 appx 上的 MobileFirst 项目升级失败

Posted

技术标签:

【中文标题】Windows 8 appx 上的 MobileFirst 项目升级失败【英文标题】:MobileFirst project upgrade fails on Windows 8 appx 【发布时间】:2016-02-09 17:33:14 【问题描述】:

我正在尝试在 Studio 中将 6.3 项目升级到 7.1,但升级不断崩溃并关闭项目。

如果我从我的应用程序中删除 windows8 项目文件,则升级成功。我已附上我的 appx.manifest 文件,以防有助于调试问题。

10:49:13 AM:[2016-02-09 10:46:18] 将 WLWin8Native 引用和 AuthWinRT.targets 添加到 Windows 8 项目文件 [2016-02-09 10:46:21] FWLST1226I:向 config.xml (C:\Users\IBM_ADMIN\MobileFirst71Prototype\MaximoAnywhere\apps\WorkExecution\iphone\native\config.xml) 添加了 Authorization Manager Cordova 插件。

[2016-02-09 10:46:21] 升级期间出现意外错误:java.lang.NullPointerException at com.worklight.upgrader.upgraders.windows8.AppXManifestUpgrade.upgrade(AppXManifestUpgrade.java:69) 在 com.worklight.upgrader.WLUpgradeEngine.executeUpgrader(WLUpgradeEngine.java:368) 在com.worklight.upgrader.WLUpgradeEngine.performUpgrade(WLUpgradeEngine.java:301) 在 com.worklight.upgrader.WLUpgradeEngine.upgradeProject(WLUpgradeEngine.java:188) 在 com.worklight.studio.plugin.upgrader.WLUpgraderWorkspaceJob.runInWorkspace(未知 来源)在 org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38) 在 org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)

[2016-02-09 10:46:21] java.lang.NullPointerException

这是我的 package.appxmanifest 文件

  <?xml version="1.0" encoding="UTF-8"?>

<Package xmlns="http://schemas.microsoft.com/appx/2010/manifest" xmlns:m2="http://schemas.microsoft.com/appx/2013/manifest">
  <Identity Name="a02b50fe-bb55-4be5-8bd9-6c2f93cef175" Version="7.5.2.1" Publisher="CN=application's author"/>
  <Properties>
    <DisplayName>Work Execution</DisplayName>
    <PublisherDisplayName>IBM</PublisherDisplayName>
    <Logo>images\storelogo.png</Logo>
  </Properties>
  <Prerequisites>
    <OSMinVersion>6.3.0</OSMinVersion>
    <OSMaxVersionTested>6.3.0</OSMaxVersionTested>
  </Prerequisites>
  <Resources>
    <Resource Language="x-generate"/>
  </Resources>
  <Applications>
    <Application Id="App" StartPage="www\default\index.html">
      <m2:VisualElements DisplayName="Work Execution" Description="Work Execution" BackgroundColor="#003f69" ForegroundText="light"
        Square150x150Logo="images\logo.png" Square30x30Logo="images\smalllogo.png">
        <m2:SplashScreen Image="images\splashscreen.png"/>
      </m2:VisualElements>
    </Application>
  </Applications>
  <Capabilities>
    <Capability Name="privateNetworkClientServer"/>
    <Capability Name="internetClient"/>
    <Capability Name="picturesLibrary"/>
    <DeviceCapability Name="webcam"/>
    <DeviceCapability Name="location"/>
  </Capabilities>
</Package>

【问题讨论】:

另外,您是否有一些关于在 androidios 和 Windows8 的升级过程中升级哪些文件的详细信息。我想确保我能利用升级。 MFP 7.1 studio 的确切构建版本是什么? 7.1.0.00-20160206-1558 【参考方案1】:

不知何故,我的 VisualElements 元素中有一些无效的 XML。一旦我将清单的 VisualElements 部分修复为如下所示,升级就完成了。

 <VisualElements BackgroundColor="#003f69" Description="Inspection" DisplayName="Inspection" ForegroundText="light" Logo="images\logo.png" SmallLogo="images\smalllogo.png" ToastCapable="true">
        <SplashScreen Image="images\splashscreen.png"/>
      </VisualElements>

【讨论】:

另一个问题,在我升级后,Windows8 构建现在失败了。这个文件应该移动吗?读取 XML 文件时出错:C:\Users\IBM_ADMIN\MobileFirst71Prototype\MaximoAnywhere\apps\AssetAudit\windows8\native\AssetAudit.Windows8\package.appxmanifest(系统找不到指定的路径)嵌套异常:C:\Users\IBM_ADMIN \MobileFirst71Prototype\MaximoAnywhere\apps\AssetAudit\windows8\native\AssetAudit.Windows8\package.appxmanifest(系统找不到指定的路径) 原来在我的AssetAudit.Shared目录下..,现在好像在AssetAudit.Windows8下检查。

以上是关于Windows 8 appx 上的 MobileFirst 项目升级失败的主要内容,如果未能解决你的问题,请参考以下文章

如何为通用 Windows 平台(UWP)应用程序创建 .appx 包?

Cordova Windows 应用程序未使用依赖项文件夹构建 appx

使用 SQLite 在 Windows Phone 商店上传啥 appx ( x86/ARM )

是否可以在没有 Windows 商店且没有旁加载的情况下安装经过微软认证的 appx?

将 appx 从电子生成器上传到 Windows 应用商店,给出无效的包标识名称......(预期:XXXAppName)

如何在Windows 10上安装.Appx或.AppxBundle软件