你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> ios學習之真機測試 copy圖片錯誤解決方案

ios學習之真機測試 copy圖片錯誤解決方案

編輯:IOS開發綜合

錯誤:
    CopyPNGFile /Users/gongihou/Library/Developer/Xcode/DerivedData/KTVgo-frborfduejxrajgpkfdaipygijow/Build/Products/Debug-iphoneos/KTVgo.app/zhuangtai.png KTVgo/zhuangtai.png
    cd /Users/gongihou/Documents/910
    setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/copypng -compress "" /Users/gongihou/Documents/910/KTVgo/zhuangtai.png /Users/gongihou/Library/Developer/Xcode/DerivedData/KTVgo-frborfduejxrajgpkfdaipygijow/Build/Products/Debug-iphoneos/KTVgo.app/zhuangtai.png


   Not a PNG filCommand /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/copypng emitted errors but did not return a nonzero exit code to indicate failure

 

[attachment=47489]

 


方案:

1、

TexturePacker PNG 圖片優化
如果你有某些原因,讓你堅持要使用PNG文件格式而不是我之前極力向你推薦的pvr.ccz文件格式,那麼TexturePacker有一個選項,叫做“Png Opt Level”(Png優化級別),可以幫助我們減少png文件的大小(注意:這樣並不會影響圖片加載時間)

 

\

就我目前的理解來看,最大的優化級別可以生成最小的文件大小。但是,它有一個缺點,就是非常耗時。對於2009年出的27寸的iMac來說,處理尺寸稍大的紋理,需要耗費10-20的時間來處理。由於該優化過程采用了多線程的方式,所以,如果你有機器是四核的,那麼速度應該會快一些。

當然,你只有在真正發布應用的時候才需要利用這個優化特性。現在的問題是,它到底可以減少多少文件體積呢?

我最大的一張png圖片從2.4MB減少到了2.2MB.小一些的紋理從180kb減至130kb。可能單個文件減少的量並不是很多,可是當你的png圖片的總大小有18MB時,它可以使之減少至16MB。

注意,在xcode裡面有一項設置,你可能會把它忽略掉。你需要關閉"Compress PNG files"開關,因為這個選項有可能會使你的png圖片膨脹。你可以在xcode的build settings裡面設置,如下所示:

 

\

如果激活此png壓縮選項,xcode會在png文件打包進程序的時候運行自帶的png優化程序。所以,有可能會使我們先前使用TP優化過的png圖片再次膨脹。因此,再次確保這個選項已關閉!

不過即使你沒有禁用此選項,你的程序大小還是會有所減小。因為,你有可能使用一些沒有被TP優化過的png圖片。

2、將圖片放到bundle裡邊(制作bundle方法,創建一個文件夾,將內容放進去,然後重命名,將文件夾後綴名改為bundle就OK了)。然後將bundle添加入工程,

下邊是對bundle中內用的使用。

首先需要添加#import <QuartzCore/QuartzCore.h>頭文件


  NSBundle *myBundle = [NSBundle bundleWithPath:[[NSBundle mainBundle]pathForResource:@"Bundle" ofType:@"bundle" ]];//獲取設定的bundle

    NSString *imageStr = [myBundle pathForResource:imageName ofType:@"png"];//在該路徑下尋找imageName為名字的圖片後邊是格式,返回值是圖片的絕對路徑

    [_imgView setImage:[UIImage imageWithContentsOfFile:imageStr]];//將圖片添加到imageView試圖。

 

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved