将应用程序图标和启动画面文件放在哪里?

Where to put the app icons and splash screen files?

由于 PhoneGap build 说只上传 www.zip 文件夹,所以我无法理解我必须为每个平台放置图标和启动画面文件夹的位置.我应该把它放在 www 里面吗?

问这个问题的原因是,如果我们应该只保留 www 内的图标和启动画面,那么我的应用程序将变得非常沉重,并且不必要的图标和启动画面文件将作为我的应用程序添加到我的应用程序中是跨平台的,我已经包含了所有平台的图标和启动画面。

如果我们离线工作(PhoneGap CLI),那么我们过去常常将文件保存在 reswww 文件夹之外,而 Cordova构建过程会自动仅复制特定于平台的图标和启动画面文件,但在这里它会添加所有文件,即使是所选平台所需的文件。

如您所知,PhoneGap Build 的项目结构略有不同。是的,您只压缩和上传 www 文件夹,没有别的。顺便说一句,zip 文件的名称不必是 www.zip,它可以是任何其他名称,但它必须只包含 www 文件夹,或者最好只包含 www 文件夹的内容而不包含文件夹本身。

您需要在 www 根文件夹中有 icon.png 和 splash.png 作为默认图标和初始屏幕。然后为其他图像添加一个子文件夹。您可以将其命名为 res 或您想要的任何名称,其中包含任意数量的文件夹,但在其根目录中添加一个名为“.pgbomit”的空文件,这将告诉 PhoneGap Build 仅包含您提到的该文件夹中的所需文件.然后你在 config.xml 中引用每个文件的完整路径,它也必须在 www 根文件夹中。

所以结构应该是这样的:

www
   res
      icon
          android
          ios
      splash
          android
          ios
   config.xml
   icon.png
   splash.png
   index.html

与图标和初始屏幕相关的 config.xml 部分应该是这样的(在版本 5 及更高版本中):

  <icon src="icon.png" />
  <splash src="splash.png" />
  <platform name="ios">
    <icon src="res/icon/ios/icon.png" width="57" height="57" />
    <icon src="res/icon/ios/icon@2x.png" width="114" height="114" />
    <icon src="res/icon/ios/icon-72.png" width="72" height="72" />
    <icon src="res/icon/ios/icon-72@2x.png" width="144" height="144" />
    <icon src="res/icon/ios/icon-60.png" width="60" height="60" />
    <icon src="res/icon/ios/icon-60@2x.png" width="120" height="120" />
    <icon src="res/icon/ios/icon-60@3x.png" width="180" height="180" />
    <icon src="res/icon/ios/icon-76.png" width="76" height="76" />
    <icon src="res/icon/ios/icon-76@2x.png" width="152" height="152" />
    <splash src="res/splash/ios/Default~iphone.png" width="320" height="480"/>
    <splash src="res/splash/ios/Default@2x~iphone.png" width="640" height="960"/>
    <splash src="res/splash/ios/Default-Portrait~ipad.png" width="768" height="1024"/>
    <splash src="res/splash/ios/Default-Portrait@2x~ipad.png" width="1536" height="2048"/>
    <splash src="res/splash/ios/Default-Landscape~ipad.png" width="1024" height="768"/>
    <splash src="res/splash/ios/Default-Landscape@2x~ipad.png" width="2048" height="1536"/>
    <splash src="res/splash/ios/Default-568h@2x~iphone.png" width="640" height="1136"/>
    <splash src="res/splash/ios/Default-667h.png" width="750" height="1334"/>
    <splash src="res/splash/ios/Default-736h.png" width="1242" height="2208"/>
    <splash src="res/splash/ios/Default-Landscape-736h.png" width="2208" height="1242"/>
  </platform>

以上配置适用于 iOS,因此请为您希望支持的其他平台添加类似的部分,但与上面的 iOS 部分一样,请确保您遵循正确的图像尺寸和名称其他平台。