hd images, and app size - objective-c

i have 2 issues.
my app has a high quality images, and i enabled the retina display(using cocos2d), so every png has the hd : image-hd.png .
my first question is, if want it to fit also iphones under 4 (3gs) i must have all my images again in the 320x480 without the -hd ?
i have sooo many images, and this way seems strange to me, cause it doubles the app size!
another thing. my app size on disk is BIG, but i have discovered that there is a folder init that called: build, which is 136Mb ! it has simulator and debug files that are not mine.
how would i get ride of this folder that is so big ?? my app is 30mb only !
thanks a lot

i must have all my images again in the 320x480 without the -hd ?
Yes. If you want your game to work with non-Retina devices, then for each xxxx-hd.png you must provide a corresponding xxxx.png file.
this way seems strange to me, cause it doubles the app size!
It doesn't double it. It depends a little on the type of files (PNG, JPG) and how well the images can be compressed. Uncompressed, an SD image is a quarter of the size of an HD image. So you're more likely looking at an increase of app size by 25%. If your HD assets weigh in at 100 MB, your SD assets will add roughly around 25 MB to the app size.
my app size on disk is BIG, but i have discovered that there is a
folder init that called: build, which is 136Mb ! it has simulator and
debug files that are not mine.
These are temporary build files created by Xcode. Don't delete them because Xcode will recreate the files anyway.
The size of your .app is the only file size you should be considering. Furthermore, you should ignore the size of your .app in debug builds, which is what you've been looking at. The only app size from which you can determine (or guesstimate) the final app size on the App Store is the app created by an Archive build.
Run Product -> Archive with a iOS device selected as your current configuration (otherwise Archive is grayed out). When it's done, the Xcode Organizer will open and highlight the newly created archive. Right click it and select "Show in Finder". There may be several .xcarchive files in this folder, select the latest one and right click it, then select "Show Package Contents". Navigate to Product/Applications which will show your .app and its size. This is the only size of your app you should ever give any consideration.
However, this is not the final size of your app on the App Store, since the .app bundle will be compressed (making it smaller) and at the same time the executable will be crypted (making it impossible to compress). I once wrote an article about how to determine your app's final App Store size that I think still holds true today. In essence, you copy the .app bundle, remove the executable from the bundle, compress the bundle, then add the size of the compressed bundle and the size of the executable and the result is a good approximation of your app's size on the App Store.

You need to give a name for HD image with prefix #2x, for example image#2x.png. Leave normal name for images in order to support lower versions of iOS - image.png. In code or Interface Builder you have to use only normal named images (all another things will be executed automatically).

The short answer to the 'images' part of the question is YES , you should include the normal sized files. The artwork is probably different with the two resolutions (I am not a graphics expert, but i suspect there is a lot more to it than resizing the image). The whole point of implementing the "-hd" suffix was to have the ability to deploy a single bundle that works seamlessly for Retina and non Retina displays. I just had a requirements change to go from SD to SD+HD on one of my products ... errr ... now both the artists and the softies are in a mad rush to do just that : create the artwork and make certain all is well (ie no missing resources). Best of luck with your own requirements change.

Related

Upload same image in different sizes - Dropzonejs

There is any possibility to upload a file with different sizes in DropzoneJs?
I'm using vue-dropzone which is made with dropzonejs and i have to upload the same file with different sizing for srcset.
Example:
I want to upload the file test.png which is 1000x500 px. There is any possibility to upload it at the same time in original resolution and also in 500x250px?
Image resizing in the browser has been a seat-of-the pants experience for a long time. Web assemblies are the way of the future for processing-intensive tasks in web apps. I came across this project the other day. It looks fantastic and I really can't wait to strip out our home-baked image resizing with canvas and replace it with this.
The usual reason for doing this is to avoid large uploads. It's a little bit weird to want to resize in the browser then upload the original. You might be better resizing on the server. You'll save bandwidth and the server libraries will be more mature than what's available on the client.
Along with the original image object you can add one more your custom resized image to the array of images by using resize config of dropzone. You can do the above on drop event or adddedFile event of dropzone.

Invalid Image Path - No Image found AppIcon120x120

I'm using Xcode 6 and Assets Catalogue to manage my App Icons. Or at least so I thought!
I'm trying to validate my Archive, but keep getting this message:
I have an image of 120x120 in the Assets Catalogue under AppIcon (although labeled as CarPlay iOS8). In fact I have lots and lots of images under AppIcon. I know the 120x120 is there. I promise.
To check, I have deleted it. Added it again. Deleted all the AppIcons, added them again. Clean built.
Still the same error message.
I really am at a loss as to know what to do.
I've looked in the plist and there is no mention of CFBundleIcons in there ..
So, any help would be gratefully received.
Remove the CarPlay icon from your AppIcon image assets.
If you actually want or need a 120x120 icon anyway, this can also be fixed by including a 120x120 icon named AppIcon120x120.png in your bundle as a regular file (outside of the asset catalog), in addition to the CarPlay entry in the icon asset.

Any Fresher Ways to Access Images in Asset Catalog Programatically?

I'm using an asset catalog with Xcode 5.1 and making an app for iOS 7 and above. The idea behind an asset catalog is that you can call the images whatever you want and the catalog associates the image with the correct device and orientation. In the background, Xcode apparently renames the files along the scheme mentioned here. However, it appears that there is a steady supply of problems accessing the files programmatically (here, here or especially here) without running into memory problems (e.g. here).
So I have the assets in my catalog and the launch images are called correctly. But I also want to use the launch images as background images, so I need to call those programmatically. In principle all that I should need to do, if I understand the asset catalog concept correctly, is something along these lines:
- (void) selectBackgroundImage {
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:#"LaunchImage"]];
}
And the OS should pick the correct launch image from the xcassets launch image set. However, this apparently only works if one uses the conventional names for the images, e.g. Default-Portrait#2x~iPad.png which defeats one claimed advantage of the asset catalog (any name you like) and may run into the aforementioned memory problems.
At this point, a few months after the referenced posts, are there better solutions? I know I can get rid of the asset catalog and access the files directly, or add a lot of work around code, or use the catalog along with the official file names, but none of these 'solutions' are in the spirit of what the asset catalog is supposed to do.

What are Windows 8.1 Square 30x30 Target Size Logos used for?

In the Package.appxmanifest on my Windows 8.1 project, the Visual Assets has a section called Square 30x30 Logo in the Tile Images and Logos category.
I know how to upload the Scale images and how to name them (imageName.scale-180.png etc), but I don't know what the Target Size images are for, or how to name them in the assets folder.
Where and when are Target Size images used? Are they used instead of the Scaled images? Any insight in this would be greatly appreciated.
(I can't post an image to clearly illustrate the assets in the manifest, as I require more points, so apologises for the lack of image.)
I had the same question, then found this;
http://msdn.microsoft.com/en-us/library/windows/apps/hh965372.aspx#target_size
These images are primarily used outside of WinRT/the Windows Store, for things like file association icons and protocol icons. That's why the sizes map to the usual sizes for older Win32 icons.
You can apparently name the images like this for automatic inclusion/assignment in the manifest file;
targetsize-
Examples:
targetsize-16
targetsize-96

iPhone icons and Mono

Today i've deployed my application and i'm ready to publish it on the Apple Store.
I've set Spotlight & Settings Icons as follow
Image 29x29 (image icon29x29.png)
Retina Display (58x58) (image icon58x58.png)
iPad Compatibility (50x50) (image icon50x50.png)
and App icons
Ipad Compatibility 72x72 (image icon72x72.png)
I'm having the following problem when i'm trying to upload binary with Application Loader.
For each of the images is
iPhone/iPod Touch: icon29x29.png: icon dimensions (29x29) don't meet
the size requirements. The icon file must be 57x57 pixels in .png
format
(just change image name and pixels reference).
I am sure that my images are the right size otherwise monodevelop not allow me to insert them if they were the precise size.
My images are in Images folder of my projects. I've tried to set those as Content or iTunesArtwork and Copy in Output Directory but nothing changed.
My system configuration is
MonoDevelop 3.0.4.7
MonoTouch 6.0.0.0
Mono 2.10.9
Must i deploy my application without those images?
I found a solution to my problem.
If files are under directory Images\ in my project give me this kind of error.
Instead if files are at same solution level all work fine and images are loaded perfectly.
Maybe it's a bug in MonoDevelop (Info.plist file generation)
I would think this could be related to not filling out all the icons (there should be a 57, 100, 114, 144).
In the Info.plist file, these images are stored in an array, so I'm not sure how Apple decides what do to if all of them are not present.