As an ios app development company its our duty to make iOS more easy to learn for the beginners so our team had made little contribution a collected some of the tips and tricks of ios app development which will help you in feature and to make the article more interesting we also add some of the tricks to improve the performance of an iOS app.
- Track build time in Xcode
If you don’t have the foggiest idea about the precise build time of your project, empower the accompanying choice in Xcode.
defaults compose com.apple.dt.Xcode ShowBuildOperationDuration – bool YES
- Improve your Swift project build time
The Xcode 9.2 launch with improved features which will help you to reduce Swift build time “BuildSystemScheduleInherentlyParallelCommandsExclusively” user default.
defaults compose com.apple.dt.Xcode BuildSystemScheduleInherentlyParallelCommandsExclusively – bool NO
Note: According to the discharge takes note of it’s an experimental feature which can “increment memory use during the build.”
- Use Simulator in full-screen mode with Xcode
To run Xcode and iOS simulator at the same time you can execute the accompanying order in the terminal to empower this feature:
Defaults compose com.apple.iphonesimulator AllowFullscreenMode – bool YES
If you need to utilize mystery features progressively in Simulator, you should empower Apple shrouded Internals menu. To do as such, you have to make an unfilled organizer with name “AppleInternal” in the root index. Run this direction underneath and restart Simulator:
- Catch iOS Simulator video
You can take a screenshot or record a video of the simulator window utilizing the xcrun direction line utility. To record a video, execute the accompanying order.
xcrun simctl io booted recordVideo <filename>.<file extension>.
xcrun simctl io booted recordVideo appvideo.mov
Press control + c to quit recording the video. The default location for the made file is the present index.
- Offer files to Simulator from Finder
Finder extension helps you in drag and drop file to the Simulator’s window appears to be a lot quicker.
Be that as it may, You can accomplish something comparable with picture/video files utilizing the simctl order beneath:
xcrun simctl addmedia booted <PATH TO FILE>
- Utilize your fingerprint to sudo
If you need to utilize your fingerprint as your sudo secret key on MacBook Pro alter/and so forth/pam.d/sudo and add the accompanying line to the top
auth adequate pam_tid.so
You would now be able to utilize your fingerprint to sudo.
- Troubleshoot your AutoLayout limitations with Sound Notification
Also, this is an incredible method to investigate your AutoLayout limitations. Simply pass UIConstraintBasedLayoutPlaySoundOnUnsatisfiable contention on dispatch, and it’s plays sounds when imperatives are in a bad way at runtime.
– _UIConstraintBasedLayoutPlaySoundOnUnsatisfiable YES
- Expel unavailable simulators from Xcode
This little direction will expel every single unavailable simulator from Xcode. Here “unavailable” means unavailable to Xcode-select’s adaptation of Xcode.
xcrun simctl erase unavailable
This area is committed to necessary changes that can improve your app’s performance.
- Use ARC to Manage Memory
ARC was released with iOS 5, and it wipes out the most common sort of memory spills – the absent-minded ones.
ARC means “Programmed Reference Counting,” and it automatically manages the hold/release cycles in your code, so you don’t need to do it physically.
The code obstruct underneath demonstrates some common code that you may use to make a view: (without quotes)
- Use a reuseIdentifier Where Appropriate
A common mix-up in app development isn’t setting the right reuseIdentifier for UITableViewCells, for UICollectionViewCells, or even UITableViewHeaderFooterViews.
For most extreme performance, a table view’s information source ought to for the most part reuse UITableViewCell objects when it assigns cells to columns in tableView:cellForRowAtIndexPath: A table view maintains a line or rundown of UITableViewCell objects that the information source has marked for reuse.
What happens on the off chance that you don’t utilize a reuseIdentifier?
On the off chance that you don’t, your table view will configure a fresh out of the box new cell each time a column is shown. This is an expensive task and will influence the scrolling performance of your app.
Since the presentation of iOS 6, you’re relied upon to utilize reuseIdentifiers for header and footer views, just as UICollectionView’s cells and supplementary observations.
To utilize reuseIdentifiers, call this strategy from your information source object when approached to give another phone to the table view:
static NSString *CellIdentifier = @”Cell”;
UITableViewCell *cell = ;
This technique dequeues a current cell on the off chance that one is accessible or makes another one if important utilizing the recently enrolled nib record or class. If no cell is available for reuse, and you didn’t enlist a class or nib record, this strategy returns nil.
- Set Views as Opaque When Possible
If you have opaque views — that is, views that have no straightforwardness characterized — you should set their opaque property to YES.
Why? This will enable the framework to attract your views in an optimal manner. It’s a basic property that can be set in both Interface Builder and code.
On generally static screens, setting the opaque property won’t be a significant ordeal. Be that as it may, if your view is installed in a parchment view, or is a piece of a perplexing activity, not setting this property will affect the performance of your app!
You can likewise utilize the Debug\Color Blended Layers choice in the test system to see outwardly what views are not set as opaque. Your objective ought to be to make whatever number of your views opaque as could reasonably be expected!
- Avoid Fat XIBs
Storyboards, presented in iOS 5, are rapidly supplanting XIBs. Be that as it may, XIBs are as yet helpful sometimes. On the off chance that you have to target pre-iOS 5 gadgets, or you have a custom reusable view, at that point, you can’t generally stay away from them.
In case you’re constrained into utilizing XIBs, make them as uncomplicated as could be expected under the circumstances. Attempt to make one XIB per view controller, and if conceivable, break out a view controller’s view hierarchy into isolated XIBs.
Note that when you load a XIB into memory, the majority of its substance are stacked into memory, including any pictures. If you have a view you’re not utilizing promptly, at that point you’re wasting precious memory. It’s important this won’t happen with storyboards since a storyboard will possibly instantiate a view controller when it’s required.
Alex jone is a Marketing Manager at AIS Technolabs which is Web design and Development Company, helping global businesses to grow. I would love to share thoughts on Custom iOS 9 app development.