2017-09-26 133 views
2

更新到Xcode 9(9A235)後,在iOS 11上運行應用程序圖標後失效。它在以前的版本中工作正常。此問題是由CocoaPods造成的。我試過this解決方案,但這給我錯誤。應用程序圖標缺少iOS 11

處理Podfile的安裝後掛鉤時發生錯誤。

回答

10

嘗試在您的podfile中添加此腳本。

post_install do |installer| 
    installer.aggregate_targets.each do |target| 
     copy_pods_resources_path = "Pods/Target Support Files/#{target.name}/#{target.name}-resources.sh" 
     string_to_replace = '--compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"' 
     assets_compile_with_app_icon_arguments = '--compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" --app-icon "${ASSETCATALOG_COMPILER_APPICON_NAME}" --output-partial-info-plist "${BUILD_DIR}/assetcatalog_generated_info.plist"' 
     text = File.read(copy_pods_resources_path) 
     new_contents = text.gsub(string_to_replace, assets_compile_with_app_icon_arguments) 
     File.open(copy_pods_resources_path, "w") {|file| file.puts new_contents } 
    end 
end 

有關此問題的更多信息,您可以找到here

+0

沒有幫助:( – Demosthese

+0

@Demosthese您是否嘗試過在GitHub上描述的所有方法? –

+0

是啊,這有助於唯一的辦法就是從podfile移除谷歌地圖。 – Demosthese

2

試圖從上面的每一個選項後,都無濟於事,我查了「資產目錄應用程序圖標集名稱」在我構建設置在Xcode中,我發現它是空的。所以我簡單地將它設置爲「AppIcon」(或任何您的應用程序圖標集在資產目錄中命名),並立即生效。

注意:如果您將構建設置設置爲「基本」或「定製」,則此設置可能不會顯示。其結果是,將其設置爲 「所有

5

問題:

沒有出現在iOS 11或1的Xcode應用圖標9.

2.應用圖標在iPhone上可見,但不在iPad上。

解決方案,爲我工作:

這個問題通常可以解決對Xcode的7

這個問題似乎是與構建流程的Xcode 9或之前的應用程序問題iOS 11.過去,Apple一直使用〜iPad擴展來區分iPhone和iPad的資產。

Info.plist中具有與鍵「CFBundleIcons〜ipad的」不具有項的字典(因爲它出現在Xcode 9),這是造成束從Info.plist文件獲得圖像,而不是images.xcassets,因此Xcode 9上的應用程序圖標未顯示。

從.plist文件中刪除此密鑰適用於我的構建,而其他方面則沒有。

Remove the key titled "CFBundleIcons~ipad"

1

看一看我這裏的解決方案: https://stackoverflow.com/a/48209677/391605

基本上,它似乎是,在Xcode 9.x中,也有象集額外的圖標,尤其是對ipad公司。如果您創建了自己的「新iOS應用程序圖標」,並告訴Xcode將其用作應用程序的圖標,它將修復此問題。

enter image description here

+0

我之前沒有注意到。 –