iPhone icons and Mono - 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.

Related

I'm trying to implement a Xamarin local image on my App, but it's not working

I'm trying to add a local image in my Xamarin app, but it's not working. Do you know what I could've have missed?
I have added the XAML and c# code but that still does not work.
XAML - <Image x:Name="Background_Image" Source="backgroundimage.png"/>
C# - var image = new Image { Source = "backgroundimage.png" };
I have followed the proper practices to a tee from the Xamarin Images documentation, but it's still not working. Link to Xamarin Documentation on Images - (https://learn.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/images?tabs=vswin#Local_Images)
I have made sure the file name is
All in lowercase,
The build action is AndroidResource of the image
The image has been placed in the Resources/drawable folder.
Which are all the conventions you must follow, but it doesn't seem to work.
The image's file size is 1.28mb and resolution is 1920x1080 if that matters. I have tested with a much smaller 4KB image but does not work either.
I am using the Xamarin Live Player to show the app, the phone uses API 19, Android 4.4
I apologise if this is a duplicate, but I have read many topics here but I have not been able to fix it.
It does seem to be a issue or limitation with Xamarin's own Live player. I have launched the App with the Android Emulator and the Image is displaying, I'll report it as a bug.

Binary is not optimized for iPhone 5 error message for Xcode 6.3

I've read a number of similar Q&As regarding this subject but none have provided me with a working solution.
All my images are PNG.
My deployment target is 8.3 for iPhone.
I'm using Xcode 6.3
I am using an image catalog.
I've tried using -568h in the image name and tried not using it. I tried changing the filename to "Default-568h#2x.png".
I've deleted all images from the image catalog and dragged them back in again.
I've created a new launch images catalog.
No mater what I've done, the same error message appears when I attempt to upload to the App Store:
EDIT:
On the off chance that lacking iPad launch images might have triggered this issue, I also added all launch images for iPad. I also renamed all the image file names, created a new launch image catalog (again) and imported all images. Still getting the same error message.
Resolved the issue but not sure on the exact reason behind it.
The Launch Screen File field had LaunchScreen selected.
The correct selection should have been Main.
This solved the issue and I was able to submit the app without the error message.

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

Setting ApplicationBarButton.IconUri with icon from Isolated Storage

I am working on windows phone application in which i need to change ApplicationBarButton icon dinamically, for example to show current date like in default Windows Phone Calendar app. Regarding to this article, we can use only png images previously added to solution and reference to them with relative Uri.
It is not a problem for me to generate correct png image (this way and using ToolStack C# PNG Writer Library) and save it to isolated storage, but when i'm initializing AppBarButton with absolute Uri to this image and trying to add it to ApplicationBar, my app throws ArgumentException.
Am i doing something wrong or i just have to draw 366 icons and add them to my project? :)
Thanks in advance!

hd images, and app size

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.