How to supply menu images for both 38mm and 42mm on WatchOS? - apple-watch

I have downloaded templates from Apple's site for preparing icons for Menu Items on WatchOS apps.
I see that there are 2 different templates, for 38mm and 42mm versions.
I didn't understand how I should save them to support both sizes simultaneously. I tried Assets.xcassets but there is nothing there related to 38mm and 42mm there.
As this is not something related to retina I cannot add #2x etc.. to the end of the image's filename.
So how to do that?

Related

Why won't Xcode 5 let me specify iPad images for an iPhone app? And what about the iTunes Artwork icon?

Xcode 5 tries to be smart about what icons my app needs.
I have a non-universal iOS 7 app. Xcode only lets me specify icons for the iPhone, but none for iPad. Previously you could still add iPad-specific icons so it looks better on iPad.
Also Xcode doesn't list the 512x512 and 1024x1024 "iTunes Artwork" icons which are still a requirement according to iTunes Connect Developer Guide / iOS 7 HIG.
Like you can see in the above screenshots only 3 Xcode lets me specify only 3 icon files.
Where can I specify the big iTunes Artwork icon if not in the icons asset catalog?
In your assets file (usually Images.xcassets / Assets.xcassets) go to the Attributes inspector on the right sidebar. Make sure iPad is ticked:
In later versions of Xcode, instead ensure an iOS (not "None") is selected on the iPad dropdown:
You need to select the AppIcon inside the asset catalog and bring up the properties navigator. In there you can add iPad assets for both iOS7 and pre-iOS7 and also specify whether the icons are pre-rendered or not.

iOS 7: Proper iPad icons for iPhone app?

We have an app for iPhone only, but often users install it on their iPads. With iOS7 and the asset groups, it no longer respects our new iPad icon image sizes (76px and 152px). If we don't use asset groups and have our old icons (72px), it will load them, but they clearly look scaled. If we rename our 76px to Icon-72 and Icon-72#2x, the same problem happens.
Is there a proper way to get iOS 7 sized iPad icons in an iPhone only app?
Thanks!
Took me a while to work this one out, as I was having the same issue.
If you highlight your AppIcon Asset group when looking at it in Xcode, you can add additional fields to it by opening the inspector (right hand pane) and clicking the checkboxes on what you want. Then you can drag in your icons and have them work properly.
Here the guidelines iOS for all icons and the new guidelines for iOS 7 here.
and Here a website to create all size of your icons for iOS 6, 7 and Android with the 1024*1024.
Add the different keys of your icon in your info.plist and add the icons in your resources :

How do you update the app icons and launch images to support IOS 6 and 7 simultaneously?

I have been stymied figuring out how to release an application from Xcode5 that supports IOS7 AND IOS 6+ in the same build, with assets (icons and splash screens) that load correctly for both, AND still render the assets for IOS 6 correctly. The major hangup I had was trying to make IOS 6 still render the icons without shading or highlighting since the "prerendered" option is no longer even available in Xcode 5's GUI. Any ideas how to get all of the content and the icon to render correctly AND support multiple OS versions?
Andrew
Apple has clear guidelines on requirements for IOS 7 apps but even then, I ran into errors making a single app support multiple OS versions. After getting it to work, I thought I would point out a few areas that were hangups for me to aid others in the future.
I first updated the whole of my app to support IOS 7 cleanly and then went back and enabled previous versions but that process is not necessary.
Just ensure you first set the correct deploy target
Once you set the deployment target, Xcode5 nicely changes the list of default assets it requires to support the multiple OS versions. Ensure you reupload the correct versions of icons at the required resolutions and required filenames (shown below for IOS6-IOS7 support)
Do the same for the launch images, note that you will have to rename your launch images to new names, Xcode tries doing this for you if you let it. Note the new sizes below, as IOS7 expands the launch image background behind the status bar.
Finally, manually add the two .plist flags below and you should be set to have your icons render across IOS versions consistently, with no gloss (explanation follows)
IOS7 in its new flatness removes the postprocessing the previous versions did where they added a highlight and gloss effect to icons. That effect is no longer done for IOS 7 apps but if you load an app from Xcode5 on IOS 6, it will reapply the default gloss effect. This is infuriating because there no longer is a "prerendered" GUI flag in Xcode to disable that postprocessing. As mentioned above, you need to add the flag manually to your application's plist. In my case, I had to add the flag in two locations to force IOS 6 to stop applying the effect. You can access the plist by either opening the file directly or navigating to the settings in your project overview. You may need to uninstall the app from your simulator and then rebuild the app to force simulator to lose its cache of the old icon.
If you setup the asset catalogue you can open it select the image and then go to the inspector and tick this box
Just use "asset catalog" (you can select that from general on your target).
That would create an images.xcassets on your project there you can easily drag your icon designs for pre iOS 7 and for iOS 7.
UPDATE:
So after the formal release of iOS 7 I can now write this:
On the asset catalog itself select the Appicon set that you want to set as pre-rendered then go to Attribute Inspector and just mark "iOS icon is pre-rendered". you can also set there of course which OS and devices you want to support (it would create all options so you can just drag& drop to set).
Important thing to note is that for some reason if you use several targets and several sets inside this catalog you must add the Target Membership manually. To do this just mark the "asset catalog" file, go to file inspector and mark all targets where you want to use it. I think Apple should do that automatically when you select the "asset catalog" from the target settings but till then I decided to mention that here (took me an hour to figure this out).
I went through this recently. Seems by default it only shows the following.
Easy fix is add a new AppIcon
To give you all these options.
My experience with this:
When creating a new empty app, it will create a "default" app icons / launch images asset catalog that is incomplete as stated by #Smick.
The annoying part of this new "catalog" is that it doesn't show the image sizes.
To work around the issue, select the project on the project navigator, and on the "General" you will notice 2 areas - App Icons and Launch Images. Those will point to an asset catalog. You can change it to "don't use asset catalog." After that, the interface will change to a list of files / dimensions.
However there are several issues with this interface:
It should only ask for the retina versions of the images (and compute the normal, or have two links, one for normal and another for retina).
Several images (the launch ones) need to be renamed for them to work (the system does this for you).
Two images are not assignable due to errors (iPad Portrait iOS 7, and iPad Landscape iOS 7, both in normal resolution) - you can specify an image for them, but the image will not stay on and will become de-selected when you insert the next image.
The image dimensions specified are slightly different from the ones stated on the HIG manuals.
I've a strong dislike of the "new" notation of images with points (as they are device dependent and so not exact).
If you don't want to see iOS 6 reapply the "highlight / lighting" on the icons, you need to add a key on the app plist (project manager | project | info. There, you can add a key "Icon already includes gloss effects". You may need to add it also on iOS 5 icons if required.
For Xcode 6
For LaunchImage you must make sure you check iOS 6.0 and Prior
iPhone (Portrait ) or iPad // depend on your project configuration
Sizes
Default.png (320x480)
Default#2x.png (640x960)
Default-568h#2x.png (640x1136)
The same to AppIcon

IPhone application and IPad retina icon

I've created an application for iPhone with icon versions for retina and no-retina display (icon#2x.png and icon.png).
Whenever I try to install this application on an iPad 3 a part of Default#2x.png is used instead of icon#2x.png.
Have i to upload specific icon for iPad ? and in this case where!? from Xcode 4.3.2 I see only 2 spaces to include icons, but reserved for iPhone version. I suppose that i need to create a new voice into plist file... but I'm not sure and documentation didn't help me.
I ran into the same problem. I created the resource files Icon-72.png and Icon-72#2x.png in the root of the bundle and added them to "Icon files" in the Info page of the target (Info.plist). Strangely, this didn't do the trick.
My final solution was to convert the target temporarily into an universal app, drag the iPad icons into the corresponding slots of the target's summary page and build it. After that, revert the target to an iPhone/iPod touch app, clean it, built it again.
Interestingly, this seems to work.
Old question, but with Xcode 6.3, if you use assets catalogs, select AppIcon, tick iPad (for iOS 7 and up) and add your 76x76 and 152x152 icons to the catalog
I would create 2 more icons called
icon~ipad.png
icon#2x~ipad.png
The first one will allow for iPad 1/2, and the second one will allow for Retina iPads (iPad 3).
Adding those 2 icons may be enough. Also, try a Clean & Rebuild as Luke said.
Hope this helps =)
I think you should use Icon-72. i used that
When determining the appropriate App-Icon the OS searches the "best fitting size" Icon in the CFBundleIconFiles array or the CFBundleIcons in the Info.plist. If the Default(#2x).png is in one of those arrays, it is selected for best fitting on iPad Retina. Solutions:
Eliminate the Default(#2x).png from this arrays. For the Launch image there is another property. If you do that, the iPhone Retina Icon will be selected.
Optionally add the iPad resolution Icons (72, 72 / 144, 144) to one of those arrays. Then the OS will determine one of those as best fitting.
For the Info.plist keys see also:
https://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/App-RelatedResources/App-RelatedResources.html#//apple_ref/doc/uid/TP40007072-CH6-SW1
Consider, that the naming of those Icon files are only relevant for older iOS versions. In new versions, the OS just searches for sizes in the mentioned arrays.

Difference between Icon properties in info.plist?

I'm working on an iPhone app and I'm not sure which plist property to use out of the following:
Could anyone shed some light on what each of them do and the difference between them?
Apple requires that you include an icon that measures 57x57 pixels. If you are just going to use that image, then you put it under the Icon File property.
However, Apple recommends that you include images of different sizes for different purposes, such as for the retina display, the ipad, and the search bar. If you are going to include multiple images, which will make your app look better, especially the retina one, then you include all of those images in the Icon Files property. Do note that you do not need the Icon File property if you are using the Icon Files property.
I am still developing for IOS 4 so I do not know about the Icon Files (IOS 5) property but I would assume that there are new places where your icon might pop up in IOS 5 where it will not pop up in older IOS versions. You would place those images under that property.
Hope that helps.