2012-04-27 17 views
3

我不斷收到一個錯誤,當我嘗試導出釋放空氣建造:無法與在app.xml中指定的圖標導出AIR發佈版本

錯誤創建AIR文件:富-app.xml中:錯誤303 :圖標/C:/Users/Fred/AppData/Local/Temp/assets/icon_16.png從包中缺少

目錄的樣子:

Foo/ 
    src/ 
    assets/ 
    bin/ 

應用程序的XML指定圖標作爲

<icon> 
    <image16x16>assets/icon_16.png</image16x16> 
    <image32x32>assets/icon_32.png</image32x32> 
    <image48x48>assets/icon_48.png</image48x48> 
<!-- <image128x128>assets/icon_128.png</image128x128> --> 
</icon> 

我試着移動bin /下的資產/目錄,並在代碼中放置父代詞(..)。

我嵌入圖像中這樣的應用:

 [Embed(source="../assets/biocurious_logo.png")] 
     public var applicationIconClass : Class; 

     [Embed(source="../assets/biocurious_eye_16_16.png")] 
     public var applicationIcon16Class : Class; 

     [Embed(source="../assets/biocurious_eye_32_32.png")] 
     public var applicationIcon32Class : Class; 

     [Embed(source="../assets/biocurious_logo_48_48.png")] 
     public var applicationIcon48Class : Class; 

     [Embed(source="../assets/biocurious_logo_128_128.png")] 
     public var applicationIcon128Class : Class; 

編譯器不抱怨說,它無法找到這些文件。

我已經在這裏完成了指定的搜索並使用Google。我不知道接下來要嘗試什麼。

任何想法?

回答

1

所以有幾件事情在我身上跳出來。

  1. 如果圖像嵌入到應用程序中,您是否還試圖在部署/安裝(即桌面圖標)中以某種方式使用它?如果沒有,那麼你甚至不應該把它作爲部署包的一部分引用 - 這已經包含在swf中了。
  2. application.xml中的圖像名稱與您在代碼中引用的源圖像不同,也是不同的源路徑(即../assets和assets /)。

如果這些線索您正確的道路的沒有一個,你總是可以驗證該.air文件中有源在一個標準的壓縮程序打開它(的.air很像一個名爲.swc在這個意義上,它只不過是一個壓縮包)。

+0

我無法創建空氣(zip),更不用說看裏面的內容了。 我對嵌入圖像文件作爲資源並在app.xml中指定它之間的關係感到困惑。我認爲後者允許安裝程序將這些圖像文件提供給桌面/快捷方式/停靠欄圖標的操作系統。如果我刪除所有圖像標記,我會得到應用程序的默認(紅色斑點)圖標。 感謝您的想法 – 2012-04-27 15:13:43

+0

mxml的[Embed]/@Embed,都直接將相關資產添加到swf中。 SWF文件格式體系結構由代碼(框架)和位圖/矢量藝術資產(層)組成 - 我們通常會針對資產運行代碼。如果您熟悉Flash,則嵌入類似於將其直接添加到庫中,以便資產可以在沒有外部加載的情況下使用。 application.xml是AIR播放器知道如何處理應用程序以及如何通常顯示應用程序的容器。打包時,如果你想用它作爲圖標,需要一個/ path/to/asset.jpg/png。 – 2012-04-27 15:27:04

+0

邁克:什麼是正確的道路?相對於項目目錄?到src /?去bin /? – 2012-04-28 01:31:39

3

我解決了我的問題,當我將資產文件夾移動到src文件夾。

1
  1. 如果嵌入使用應用圖像[嵌入(源=「/圖片/ info_emb.png」),然後使用相同的圖像別的地方在你的應用意味着它不會在發佈包存在。
  2. 爲每個使用不同的圖像。
2

我終於找到了這個問題的解決方案「303應用程序。XML圖標文件丟失的包」

  1. 創建資產文件夾內SRC,而不是應用程序文件夾
  2. 嘗試把圖標的所有版本大小

    <!-- The icon the system uses for the application. For at least one resolution, 
    specify the path to a PNG file included in the AIR package. Optional. --><icon> 
    <image16x16>assets/icon16.png</image16x16> 
    <image32x32>assets/icon32.png</image32x32> 
    <image48x48>assets/icon48.png</image48x48> 
    <image72x72>assets/icon72.png</image72x72> 
    <image128x128>assets/icon128.png</image128x128></icon> 
    

希望它有幫助