Maintain size of application to 1 mb? - ios

I want to make an iOS application and I don't want the size of application more than 1 MB. As per my previous experience application size increased because assets which we have used. is there any best way to handle assets which will not affect in size of an application. is there other parameters in an application which we can consider for minimizing the size.

Related

Minimum logical application size

I opened a new app and didn't add anything and when I archive the size is 10 mb.
There are complete applications and their size does not exceed 4 mb
Is this logical the size of an application that does not have any data. What is the solution
If you want to reduce your app size, we can improve the things below to shrink our APK size.
Fast our app loads.
Much memory our app uses.
Much power our app
consumes.
And much more.
For more details, please check the blog. https://devblogs.microsoft.com/xamarin/shrinking-android-app-size/

Finding optimum image dimensions and reducing memory usage for an iOS app

I have a universal game written in Swift with about 200 images, which take up around 200 MB of ram. However, on storage they take up only 15MB. On Xcode the size of the default view is 600x600, and the view that my UIImageView is residing in is 200x200.
My goals is to have an image that uses the least amount of ram, and uses the least amount of storage space, but retains its quality.
For the ram:
Should I run some code to resize the image prior to displaying it in order to use less memory, which I worry may be slightly CPU intensive.
For the storage space:
Is there a way I can calculate the image dimensions I would need in order to satisfy all iOS devices?
Or am I looking at this completely the wrong way.
The assets catalog is going to be the most efficient way to have different assets for different devices, while enjoying "app thinning" which can allow a device to only download the assets needed for that particular device (keeping app downloads as small as possible).
For example, if you have a 200x200 image view, if you want to be most memory efficient for different types of devices, you'd have a 1x (i.e. 200x200), 2x (i.e. 400x400), and 3x (i.e. 600x600) rendition of that asset, and through the efficiency of assets catalogs, the device would download and use the asset of the appropriate scale for that device.
If, on the other hand, you only supply only a 1x image (e.g. a 200x200 image in our above example), it will look pixelated on a retina device, which will put off many users. Or you can supply only a 3x image (e.g. a 600x600 image), it will look sharp on all devices, but you'll be taking up more memory than needed on non-retina devices (or, if you do just-in-time resizing, you can offset the memory impact, but at the cost of performance).
So, if you want the best looking and most responsive UI that works on well on devices of multiple scale resolution, you'd supply all three resolutions. And if you use an asset catalog, it makes the selection of the asset at runtime easier, and you open up the possibility of app thinning.

Is it the "weight" or height and width that matters

I'm developing a game with lots of graphics for iOS platform. None of the graphics are dynamic, they're all ready made images. There are 6 layers on the screen and each layer contains 3-4 graphics objects in average that constantly scroll to left, each with different speeds. So with each screen refresh about 20-25 objects are scrolled, removed from screen and added again from right. The game is universal so images of all sizes present in the resources folder.On iPads, iPhone 5, iPhone 5s it goes smooth. But on 4th Gen iPod touch I notice some hiccup.
When I test the app with Instruments, I notice a critic memory problem at start and then the problem goes away. So this is all because I load all the above graphics on application start. All the images are combined into 4 different sprite sheets. So here's my question:
Is it the weight in kilobytes that matters or is it the dimensions? I'm asking this because I reduced the size of the images by about 70-80 percents, though their height and width remain the same, but that memory problem still exists.
If you are reducing the size of the images by utilizing compression, then expect there to be delay and a memory hit as the images are uncompressed when first loaded, and they will take up as much memory as they did before compression.
The 4th generation iPod Touch probably is having some memory pressures and it will try to release memory elsewhere in order to allow for your images to load up and stay in memory. That may be the hiccup you see, as other apps, like Mobile Safari or Mail are asked to give up some memory or to terminate.
(The size the images take in the resources folder is inconsequential. It is the size they take when they are uncompressed and in memory that matters).
You could make the images smaller by making them 4bit instead of 8bit color, or you could make them monochrome. You can also use a non-retina size or smaller, and then let the OS stretch them out to fit the space required. I would try to use the best images first, and if you get a memory warning (didReceiveMemoryWarning), then reload with the images that are less dense.
you can not load all image before the game beginning, you should use the cache to control the size of the memory. And before the scenery of game change ,the release the cache ,reload the need ones.
So you must control your resource dependents in the every game scenery.
This is the common method to management the large resource application.

on what factors does the size of IPA depends?

I am working on an App, that includes iphone(4,5 potarit only) and Ipad(Landscape as well Potarit). App includes 120 MB of IMAGES and the folder size of my project is 123 MB.
But I made its ipa, that goes to 185 MB . I am worried about the size of the build. How it happened to become 185 MB.
On what factors it is depending upon?
How Can I reduce the size of my build?
Will there be any problem uploading this app to the app store?
There are total of 15*3=45 NIB files in my project.
part (3) - "Will there be any problem uploading this app to the app store?" :
The maximum size of .ipa in AppStore depends on your internet connection.
For app to be downloaded over 3G, the maximum size should be 100MB. Over Wi-fi connection or iTunes the maximum size is 2GB.
part (2)
To reduce the iPA size you can reduce the size of the images. Generally in an application you do not require high resolution images (not more than what the device supports).
If there are images you can make the application download from some external server, that would be better. That way you can download the images the first time app is launched and save in the sandbox of the app and they can be used later in the app by fetching from the sandbox. This can reduce your iPA size considerably.
part(1)
Generally the binary size is less than the actual folder size. I could not see from where your iPA size is increasing.
As far as I know
1 . ipa file size mostly depends on the Images size.
2 . So try to ask your designers to reduce the image for saving the memory or try to use the .jpg files for images except for splash screens,icons. No need to worry about the xib files .
3 . There is no need to worry about the size while releasing the app . Only issue is takes some time to download from the iTunes.
The size of application mostly not depend on the code but on the resources you have added into your application like images, video and sound files.
Most time number of images to support the different display need to add more images cause large size of IPA but for that I think the best way is use stretchable images that decrease IPA size around upto 40 to 60 percent and very neat and clean. do not include over side video and mp3 just compress them at optimum level so user experience will be great. Size could be around 40 mb is best for general ios application
Another approach is to download necessary assets during the first launch.
Pro: user will only get images that compatible with his device
Con: there must be a stable internet connection to download the images. Wi-Fi is preferred, because 3G is not always free of charge for user.

iOS app with preloaded images

I'm creating an iOS app with some preloaded data which includes images, it will have between 150 and 200 images. This images are not downloaded from a server, since the app won't connect to the internet.
I'm wondering about if saving the images locally can cause any problem, what is the max size that I can use to store them? Can this affect the app's performance? Anything else that I should be aware of?
Thanks in advance!
Over the air cellular maximum download is now 100MB since the iOS 7 launch.
Your maximum app size is 2GB with a maximum binary size of 60MB. With 200 images I don't think you'll hit the 2GB mark, so long as you use the proper compression techniques.
The only thing that would affect your app's performance is the way the images are presented. If they're really large images, 10+ MB you'll most likely hit memory problems in older devices and if you go larger, memory problems in newer devices. There's plenty of techniques like tiling in a scroll view to get around these problems but it requires you splice up your images and create multiple resolution versions of the image.
If your app is greater than 50MB (at the time of writing) because of the images being included then users will need WiFi to install it.
Other than that, your performance concerns should be around how many of the images you will have loaded into memory at any one time and how you can reduce that number.

Resources