Skip to content

Howto Create an Asset Catalog for XCode 9 Appstore Submission?

florianf edited this page Oct 17, 2017 · 4 revisions

Thanks to @Majirefy for the detailed report!

I think most people will refer to this tutorial for building iOS game with LibGDX(https://frozenfractal.com/blog/2016/3/18/porting-libgdx-games-to-ios-for-apple-dummies-2/). Maybe LibGDX is the most common case for RoboVM.

Yes, in docs of RoboVM(http://docs.robovm.com/configuration.html#resource-processing), Asset catalogs is supported.

  1. Generate Assets.xcassets folder. Create an empty iOS project with Xcode 9, give it whatever name. Then refer to Assets.xcassets folder in left panel:
2017-09-24 9 22 15
  1. Double click to open it. Xcode creates a default asset catalog named "AppIcon". Select "AppIcon", then add all icon size of your app.
2017-09-24 9 23 47
  1. Close this windows and save project. Then refer to this project's folder in Finder:
2017-09-24 9 26 34

There will be a folder called "Assets.xcassets":

2017-09-24 9 27 13
  1. Open your RoboVM project's folder, then go to the folder where you set to save your iOS assets. This folder will be like "data", "resource". To know which, just open "robovm.xml" file, there will be a node named "resources", and then it will tell you which folder RoboVM will refer to when building iOS app with given assets.
2017-09-24 9 31 24

In my case, it will be "data" folder, just under my iOS project's folder:

2017-09-24 9 32 02
  1. Copy "Assets.xcassets" folder from the project we just created with Xcode 9 to "data" folder.

  2. Modify your iOS project's "Info.plist.xml" file. Under "dict" node, add like this:

2017-09-24 9 35 04

Then comment out all the icon info in "CFBundleIcons", you will not use this anymore. 2017-09-24 9 36 43

All done! Use gradle to build your app like before. New IPA file will bundled with AppIcon.