Mobile App
#
10 June, 2020

Excellent Cross-Platform Apps with Flutter’s Single Codebase

Excellent Cross-Platform Apps with Flutter’s Single Codebase

The recent years have seen an immense increase in the popularity of cross-platform mobile app development. It has been catering to the needs of many businesses with cross-platform app development, helping them save their efforts and time. Various tools have been developed to facilitate cross-platform development of apps with web-based tools like Xamarin, PhoneGap, and React Native. (more…)

22 May, 2020

Impact of Mobile App Development Outsourcing On Business Growth

Impact of Mobile App Development Outsourcing on Business Growth

There is no doubt that mobile apps have been crucial players in the digital arena of today. It’s probably the most significant reason why it is smart to go with outsourcing when it comes to mobile app development services. However, we also need to take a look at the present and future scenario of mobile apps. Mobile users are on the constant rise, and the ones who are yet to grow are making it a point to keep searching for best mobile features. Hence, availing the benefits of mobile app development services is clear as a crystal when it comes to expanding your business and reaching a wider audience. (more…)

28 August, 2018

Enhanced Performance & Features with iOS 12

WWDC 2018

Every year, Apple announces the new functionalities for the users & developers through WWDC. In 2018, WWDC they introduced iOS 12 with new and enhanced features. Here, we will see what is new in iOS 12.

Introduction
Apple announced iOS 12 at WWDC 2018 on 4 June 2018. In iOS 12 Apple’s prime focus is on the performance improvement and enhancements in all new and old devices. With this, the device performance will be 70% faster in iOS 12.

Now, let’s see all the new features coming to your iOS soon.

Screen Time
Screen Time will show you every little detail of your apps like how much time you spent on it, when you used it, etc. It also keeps a record of the number times you used your phone and number of notifications you received from the apps on your phone. It will also provide you with a weekly summary of how and when you used the phone and the apps in it.

App Limits
App limits is a sub-feature of Screen time, it allows you to set a limit on app usage based on the app or its categories. It works for app categories including Games, Social Networking, Entertainment, Education, Reading, Health etc. So you can set a limit of your app. Also, you can sync across your other iOS devices, so you can’t cheat that way.

Updated Photos App
The Photos app has a new “For You” tab. It shows all the new albums, photos and effect suggestions in case you want to add them to the photos. Also, you can share selected photos or albums with your friends from the Photos app.

Siri & ShortCut App
~ It has assigned custom shortcuts to Siri for activating specific actions, which not only works for System apps but also with third-party apps. So now if you want to send a specific message to someone on Chat app (i.e WhatsApp), you can assign a command for that to Siri and you can activate that action just from Siri using that command.

~ Apple adds a new app in iOS 12 called Shortcuts. Shortcuts app lets you group actions and runs those actions quickly.

Enhanced Do Not Disturb
Do Not Disturb has a new enhanced feature “Bedtime mode”. Enabling it will enclose all your notifications at bedtime and will dim the display. When you wake up, it will greet you with a welcome back message and show you the weather details on the lock screen.

Notification
Notifications can now be grouped. Hence, all your notifications from the same app are grouped together allowing you to control how often you want to get notifications from the apps.

Messages
~ The Messages app gets new Emoji characters and Memoji are like personalized emoji. They look more like three-dimensional than the custom Bitmoji you make in other apps like Snapchat.

~ Users can customize their Memoji with hundreds of options for skin color, hairstyle, facial features, and accessories like hats and glasses. You can save multiple Memoji and use them in Messages to send reactions to your friends.

~ The Message app gets new filters for sending photo and video responses, and you can add stickers.

Measure
~ Apple is bringing ARKit functionality to their app without any third party in iOS 12 called “Measure”.

~ You can now send AR objects through Messages and Mail, which can be viewed in the real world. You can measure the object in real-world by pointing your camera on the specific object.

Conclusion
~ The Apple iOS 12 comes with a new and has enhanced its features too. This is currently available in the beta version.

~ The app developers can leverage with the new features by adding more creativity and experimenting with these features.

~ iPhone/iPad users will get more personalization, improved connectivity and enhanced security with these features.

Above are few points on iOS 12. Though we have tried to cover the important points, yet, feel free to post any missing points or share your thoughts about these new features in iOS app development.

Want to share something innovative about the new release? Feel free to write to us at [email protected].

14 May, 2018

MVVM Architecture For iOS

MVVM-Architecture-For-iOS

1. Introduction:
MVVM is an abbreviation of Model View ViewModel. A Model-View-ViewModel is software architectural pattern that was created way back in 2005 by John Gossman. MVVM is quite similar to MVC, but it provides better connect of the UI and business sense than that of MVC. In MVVM pattern, each view on the screen will be backed by a view model and it represents the data for the view.

2. MVVM flow Layout & Theoretical Background:
In an MVC-based project, View is Connecting with its ViewController. ViewController is easily overloaded and increases its size when the application becomes bigger. So ViewController is affected in MVC. This drawback Solution in MVVM pattern.

MVVM Data flow shown in Below Fig 1.

1

As per above figure, the three core components of MVVM model respectively are,

1. As per above figure, the three core components of MVVM model respectively are,
2. Model: it is class that holds our App Data.
3. View/ViewController: it presents our View and ViewController Class.
4. ViewModel: ViewModel binds the Model and ViewController, it’s the heart of MVVM design pattern. It provides the connection between the model class and the view/view controller. View Model is capable of observing changes in Model and synchronize itself with the events.

Example:
Let’s start Understanding MVVM Design pattern with a simple example.
First, create a project in Xcode. Also, create Model and ViewModel Class. In this project, we have taken tableView and shown employee name and its department using MVVM design pattern.

Model:
Shown model class in below Fig 2. In model class, we have defined variable and function, as per our requirement.

2Fig. 2

View-Model:
– In View-Model Class we have taken a Model object, so we have used – Model class property in View- Model Class. In our project model Employee is a model object.
– Here Model and View-Model class are connecting to each other.
– Shown View-Model Class in Fig. 3

3Fig. 3

View (Controller):
– First, take View-Model object in ViewController Class. myViewModel is View-Model object. In our project, we have taken table view.
– In this class, View-Model and View-Controller are connecting to each other. View-model object through, we get all data of View-Model class as per requirement.
– View (Controller) class shown in Fig. 4.

4Fig. 4

Also shown Output in fig. 5

5Fig. 5

Advantages:
Code reuse: In View-Model class we implement init, setup and view presentation method, so we use this functionality in each new view controller.
Improved Testability: In MVVM we can make all classes separate so we can easily find an error.
– Reduce code size

Disadvantages:
– MVVM pattern not useful for single View application, when we work on Multiple views then it is useful.

Conclusion:
MVC and MVVM both patterns are useful for iOS app development. MVVM is new Concept for the design pattern. MVVM is more useful when app size is bigger because the separation of Model, View and View-Model class can reduce complexity.

10 April, 2018

How Natural Language Processing Works?

How-Natural-Language-Processing-Works-

As we all know that Apple has introduced an API for natural language processing from iOS 5, which allows us to tokenize text, detect the language and determine parts of speech.

Basically Natural Language Processing (NLP) is used to either predict your next word or suggest a correction while typing a word. NLP is likely used in Siri.

The main API is NSLinguisticTagger which is used in analyzing and tagging text, segmenting content into paragraphs, sentences, and words. In iOS 11, NSLinguisticTagger becomes more powerful. It is used for following schemes,

  • Identifying the specific language
  • Tokenization: classifies each character as either a word, punctuation, or whitespace.
  • Lemmatization: Identifies all the forms of a word.
  • Parts of Speech: Breaks a sentence into nouns, verbs, and adjectives.
  • Named entity recognition: It helps us identify whether the token is named entity like person name and place name.

Let’s take experiment with the new NLP API. At first, we need to do is create a tagger. In NLP, a tagger can read the text and give different information to it such as part of speech, recognize names and languages, perform lemmatization etc.

When you initialize NSLinguisticTagger, you have to pass in the tagSchemes in which you want to perform. Let’s do it:

1

1. Language Identification

You can retrieve this language by accessing the dominantLanguage property of the NSLinguisticTagger. NSLinguisticTagger analyzes the text to get the dominant language.

2

2. Tokenization

The punctuations and whitespaces are omitted with NSLinguisticTagger Options. Tokenization is the process of classifying the text into paragraphs, sentences, and words. We call them tagger.enumerateTags function to tokenize.

3

It will be splitting the above string into words and then we get the list of each word that is there in the sentence.

3. Lemmatization

Deriving the dictionary form of the word is called Lemmatization. For example, a user wants the result for word ‘run’. if you were able to consider base forms of the word, you would be able to also get results for ‘running’, ‘ran’, ‘will run’, etc.

4

Here the raw value of the tag is lemma of a particular word. So In output we got is stem form of each word token.

4. Parts of Speech

This is used to get each token’s lexical class. It will return each word and its part of speech. You can see the noun, preposition, verb, adjective, or determiner.

5

In the output, You can see the verbs, nouns, prepositions, adjectives, etc.

5. Named Entity Recognition

Named Entity Recognition is allowing you to recognize any names, organizations, or places. You would have seen certain keywords highlighted like numbers, names when you use some iPhone application.

In the following example we identify whether the token is named entity like personal name and place name.

6

Here we have used tag variable which is used by tagger to look for particular tags in sentence.

Conclusion

Natural Language Processing is already a powerful tool, growing exponentially and that can be widely used in the Applications. Apple’s Siri and Facebook’s messenger bots are the best examples of NLP.

In this article, we, 9series, have covered about NLP, its terms and how it works. If you have more experience with it or find more features then feel free to share your own experience with us.

Stay tuned for upcoming articles.

13 June, 2017

Apple’s Announcements at WWDC 2017 – Keynotes

The 2017 Worldwide Developers Conference keynote was Apple’s biggest event in years, with the company introducing both new software platforms and a range of new hardware products.

Apple Announcements at WWDC 2017 - Keynotes

As usual, the event began with the message for developers “Keep making apps, the world is depending on you”.

And as always, the event started with a keynote during which Apple announced dates (June 5–9, 2017 in San Jose) of updates for their iOS, OS X, watchOS, and tvOS platforms.

iOS 11

A Giant step for iPhone, A Monumental leap for iPad

Apple officially announced iOS 11 at WWDC 2017. The next major update to the operating system running on millions of iPhones and iPads will improve.

Messages App Syncs Across Multiple Devices

The first new iOS 11 feature: synchronized conversations across iCloud, iOS, and macOS. Messages are moving to iCloud.

If you erase a message on your iPhone or iPad, then it will also delete from the iPad and the Mac and vice-versa. Our conversations will be stored on iCloud, which will make them easier to retrieve your future Apple devices.

Apple Pay

There is also an update related to Apple Pay, which will now be able to pay people. Person-to-person payments let people pay directly from Messages as an iMessage app.

It uses the TouchID fingerprint sensor. And the money which received will go into your Apple Pay Cash Card, which you can use for further Apple Pay payments, or to transfer money back into your account.

It might be helpful to make payment through application and person can directly transfer money to his friends or family members or use as general. Hence, we can enhance our application to the next level in terms of eCommerce market.

SIRI

Aha, Apple has made improvements to Siri that makes assistant’s voice sound more natural when responding to users. Siri will now be able to perform translations from English to Chinese, French, German, Italian, or Spanish. Wow…

As a ios developers, we can definitely use this feature into multi-language application and give better user-interface as well as performance to our app users.

Siri is also getting smarter about suggestions. On-device, learning is synced across other Apple devices but kept completely private, readable only for you. Siri gives suggestions based on personal usage of Safari, News, Mail, Messages and more. For example, as Siri learns topics or places, a user is interested in while browsing Safari.

Camera

The camera also has lots of improvements, including improved image quality. Portrait Mode in the iPhone 7 Plus can be taken with Optical Image Stabilisation, True Tone flash and HDR.

Apple has also added a new technology called High Efficiency Image File Format (HEIF) that reduces the file size of your iPhone 7 or 7 Plus photos.

This can be helpful into the application where Image and its quality is considered as the core concept.

CONTROL CENTER

In iOS 11, Apple has redesigned Control Center, which is the thing that users can swipe up to access frequent and important settings or change songs when listening to music.

Drag And Drop For IPAD

Apple is specially focusing on productivity for the iPad with iOS 11.

A new drag-and-drop feature lets you quickly move info or media from one split-screen app into the other besides it. Drag and drop can also be used with apps on your dock or home screen.

Lock Screen Improvement

The Lock Screen in iOS 11 has been improved so that you can see all of your Notifications in one place.

You can see all of your Notifications, simply pull it down from the top of the screen. Then you will be able to see both your recent and missed notifications in one place.

Here, we should take care about sending an extra unnecessary notifications, as our users can’t get bored from such things. And only useful notifications should be seen to attract the user of our application.

Maps App

Apple announced that the Maps app in iOS 11 will support indoor mall and airport maps. The indoor maps will allow you to see which restaurants are past security at the airport. And you can also see which stores are on what levels in the malls.

Lane Guidance in Maps now encourages you to dodge missing a turn or an exit by showing which lane you should be in when you’re navigating. You can also check the speed limit of the road.

As a mobile app developer, we should think that whether this feature can put our application into an advanced level in terms of event organization kind of feature where our users can easily find the place/stall where he needs to go.

Do Not Disturb While Driving

Apple iOS 11 has a very useful safety called Do Not Disturb while Driving. This feature helps drivers stay focused on the road by automatically silencing notifications. And you can send auto-replies to your contacts in your favorites so that they know you are driving.

App Store App Improvements: A whole new design, A whole new perspective

The App Store has been redesigned from the ground to help you discover new apps and games you can’t live without. You’ll see daily stories by experts, a dedicated Games tab, lists for all kinds of apps, and much more. It’s the biggest thing to come to the App Store since apps. And now apps that are submitted to the Apple App Store are generally reviewed within 24 hours.

ARKIT

Apple is building augmented reality directly into the core of iOS, giving developers the tools they need to convincingly blend digital entertainment with the real world. So with help of this new framework, we can effectively introduce augmented reality into our application.

Now, it’s like behind-the-scenes stuff for iOS. It’s getting Metal 2, of course, and a new set of machine learning APIs letting developers use Apple’s natural language comprehension and facial recognition tools.

macOS High Sierra

Your Mac. Elevated

macOS High Sierra introduces new core technologies that improve the most important functions of your Mac. From re-architecting, it shows how it stores your data & how you watch videos to unleash the full power of the graphics processors.

Apple File System

To your Mac, everything you care about is data. And a file system is what organizes all that data into files and folders you can access with a click. Apple’s current file system was designed in the early days of Mac, and it has performed beautifully ever since. But today’s flash‑based Mac opens up new possibilities for innovation, so it’s time to lay a new foundation. With macOS High Sierra, Apple is introducing the Apple File System to Mac, with an advanced architecture that brings a new level of security and responsiveness.

Below are some bullet points about updates in macOS High Sierra:

  • Modifies Safari by including autoplay video blocking
  • Intelligent tracking prevention to prevent ad trackers
  • Better Photos editing and organization
  • A faster and new behind-the-scenes file system
  • A stronger updated graphics engine that supports VR development
  • Support for the Unity and Unreal gaming engines
  • Using HEVC, video stream better and take up less space on your Mac, while preserving the same visual quality
  • Now Metal 2 not only takes the visual experience to the next level, but also adds capabilities like machine learning, virtual reality, and external GPU support for entertainment and professional creative apps.
  • Virtual reality for Mac. It’s a whole new world.

watchOS 4

More intuitive, More intelligent, More you

Apple announced a new version of watchOS. One of the most noticeable changes in watchOS 4 is the option of using a Siri watch face. This automatically displays contextual information on the Apple Watch, such as approaching appointments, and traffic reports if the wearer is going to work.

New fitness feature includes in controls, more prompts to set goals, and two-way workout data exchange with certain gym equipment. The Apple Watch will also be able to better connect with other hardware gadgets, such as continuous glucose monitors and smart tennis rackets, via NFC. This can be a useful feature where our application also interact with Watch OS.

watchOS 4 also includes a new Music app meant to improve the AirPods experience. Multiple playlists can now be synced including Apple Music-recommended playlists.

The Dock on watchOS 4 has a new look with a vertically scrolling interface with can lead to the UI Interface of the watch application. watchOS 4 can also automatically start when workouts are started, and music playback controls are integrated with the Workout app.

Control Center gains a new flashlight function using the display which also works during outdoor, night workouts as a safety feature.

tvOS

In WWDC 2017, one thing to say from apple about tvOS, The Apple TV is getting a big new content, as Amazon Prime Video is coming to Apple TV and Apple’s new TV app.

New Macs and the iMac Pro

Now faster across the line

Apple also upgraded its MacBook and MacBook Pro lineup with faster processors and SSDs. It also refreshed the MacBooks.

Apple’s 13-inch MacBook Pro without the Touch Bar on top now comes with Intel core i5 processor clocked at 2.3GHz, 128GB Storage and 8GB RAM. This also has two Thunderbolts 3.0 ports.

iMac Pro: The most powerful Mac ever

The all-new iMac Pro, with its gorgeous 27-inch Retina 5K display, up to 18-core Xeon processors and up to 22 Teraflops of graphics computation, is the most powerful Mac ever made. iMac Pro packs incredible performance for advanced graphics editing, virtual reality content creation and real-time 3D rendering.

iPad Pro

Any you can do, you can do better

The new version of the iPad Pro has a 10.5-inch display, 20 percent larger than the previous 9.7-inch model. Apple said that It features a better display with richer color and a new feature called ProMotion, which updates its content up to 120 times per second making it feel smoother and more responsive.

HomePod: Apple’s new Siri speaker

The HomePod has seven tweeters and four-inch woofer; it has an A8 chip living inside it. That’s a feature Sonos has too, letting the speakers adjust their output to, say, push the vocals down the centre of the room while bouncing the bass off the wall.

A feature will respond to “Hey, Siri,” play from your Apple Music account, and answer questions about the music it’s playing. It will also handle other Siri queries, such as weather, news, messages, podcasts, stocks, controlling smart home devices via HomeKit, etc.

Conclusion

Above are the announced points of Apple during WWDC 2017. Though we haven’t had a chance to look through everything yet, feel free to post any missing points or share your thoughts about these new features in iOS app development.

Want to share something innovative about the new release? Feel free to write us at [email protected].

11 May, 2017

Amazing 9 App Extensions for iOS App Development

As we have already referred iOS App Extensions in the previous article, let’s check out the rest of the App Extensions below.

Amazing 9 App Extensions for iOS App development

1. Intents Extension

Cooperation with Sirikit occurs through your Intents extension, which is an app extension that you convey inside your iOS app bundle. You should already have an iOS app before you build an Intents extension. The Intents extension handles most communications with Sirikit, yet your iOS app needs to know about those communications and in some cases may have an active role in making them happen.

When adding an Intents extension to your iOS app, you must do the following:

  • Enable the Siri capability in your iOS app; check Configuration of Your Xcode Project.
  • Add an Intents extension target to your Xcode project and configure its Info.plist file; see Configuration of Your Xcode Project.
  • Request authorization to use Siri at runtime; see Requesting Siri Authorization in Your iOS App.
  • Define the objects needed to manage intents; see Resolving and Handling Intents.
  • Define any custom vocabulary that your app utilizes; see Specifying Custom Vocabulary.

2. Intents UI Extension

When you handle an intent, Siri and Maps often show the details from the response object your Intents extension produced in a standard interface. If you need to add your own custom content to the standard interface, you should give an Intents UI extension.

An Intents UI extension does not supplant the Intents extension that you use to manage intents. It is a different app extension that lets you personalize how your response to an intent is presented to the user. You can utilize a custom interface to demonstrate additional details or to consolidate your app’s branding which can provide a more regular experience for the user.

You can provide an Intents UI extension if you are holding intents in the following domains:

  • Messaging
  • Payments
  • Ride booking
  • Workouts

3. Notification Content & Notification Service Extension

i. Notification Service Extension

A Notification Service Extension basically captures definite remote notifications and enables you to deal with the contents of the payload, including downloading and representing remote media attachments, before displaying the notification to the user.

Please note that the URLSession downloads the media to short storage and affixes a .tmp file extension, which we need to eliminate so that the application can interpret the file type and represent it.

ii. Notification Content Extension

The UNNotificationContentExtension decorum gives the entry point for a Notification Content app extension, which illustrates a custom interface for your app’s notifications. You affirm this protocol in the custom UIViewController subclass that you use to present your interface. You create this sort of extension to enhance the way your notifications are presented, possibly by combining custom colors and branding or by incorporating media and other dynamic content into your notification interface. These are basically used to draw your own UI to display when your application receives certain push notifications.

4. Photo Editing Extension

A Photo Editing extension gives users a chance to edit a photo or video within the Photos app. After users verify the changes they make in a Photo Editing extension, the adapted content is accessible in Photos. Photos constantly keep the actual version of the content, too, so that users can revert the changes they make in an extension.

When a user picks a Photo Editing extension, Photos asks the extension if it can read the adapted data. If the app extension supports the adapted data, Photos provides the actual version of the asset as input to the editing session. After the extension reads the adapted data and reiterates the past edits, it can enable users to change or revert past edits or add new edits.
For example, if the adapted data implies filters that are applied to a photo, the extension applies filters to the actual asset and can let users change filter parameters, add new filters, or remove filters.

5. Share Extension

Share extensions that are introduced in iOS 8, give users an simple and convenient way to yield content with other entities, such as social sharing websites or upload services. With share extensions, users will now be able to bestow content to your service direct from within the app they are managing, be it Safari, Photos or other apps. This isn’t restricted to system applications. Any custom application that presents an instance of the UIActivityViewController class will have the capacity to see your sharing extension if you assembled your extension so that it can handle the file type provided by that application.

6. Shared Links Extension

Shared Links Extensions appeared with iOS 9 permits our app to embed content into the users’ Shared Links section of Safari on iOS or OS X.

iOS will call beginRequestWithExtensionContext(context:) on our extension and that will be our signal to run whatever code we need to load in the content we’d like to show in Shared Links, then pay it in the form of an array of NSExtensionItems.

7. Spotlight Index Extension

The Core Spotlight framework makes the data of an app accessible on the Spotlight, and consequently, bring some good results regarding an app along with any other results that the system returns. That’s quite impressive and innovative, as for the first time users can spot data for custom apps, not simply Apple’s, and interact with them. By saying that users can interact with the results associated with a custom app, it implies that not only the app gets automatically propelled when such a result record gets tapped, but developers are also given the power to manage users to particular view controllers that are most relevant and suitable for the data that were chosen on Spotlight.

From the developer’s point of view, coordinating the Core Spotlight framework and using the provided APIs doesn’t comprise of a difficult process. The “heart” of that process lies to the fact that developers have to “ask” iOS to index their app’s data, which must be described in a particular way prior to that.

By using the Core Spotlight framework it’s possible to make the data of any application searchable through the Spotlight. The key to doing that is to ask precisely from the Core Spotlight API to list our data so it can be found on searches executed by the user. But neither our app nor the CS API chooses what kind of data this is going to be. It’s our duty to prepare that data and provide it to the API in a particular form.

8. Sticker Pack Extension

Apple gives an approach to representing people in generous ways by providing stickers that can be used within their conversations on iMessage. Users can adapt sticker sizes, touch to send stickers in a thread, or peel and place them on top of bubbles, other stickers, and photos. Stickers require no coding to build. With just couple of steps in Xcode, you can transform your images into a sticker pack that’s ready to submit to the new App Store for iMessage.

It’s very simple to make sticker packs for the Messages app on iOS 10 using just a Mac, Apple ID, sticker images. All images are displayed to the end-user in a grid-based system on the device, with Apple also taking the opportunity in the iOS Guidelines to make some suggestions on how to best appeal device owners, including each image under 500KB in size.

9. Today Extension

Today Extensions is also known as Widgets. This enables you to manifest information in the Notification Center, which can be an awesome approach to give immediate and up-to-date information that the user is interested in.

Extensions created for the today’s extension point, the so-called widgets, are meant to provide simple and quick access to information. Widgets link to the Notification Center framework. It’s essential that you design your widget with an easy and focused user interface, because too much interaction can be a problem. Also, note that you don’t have access to a keyboard.

Widgets are expected to perform well and keep their content updated. Performance is a big point to consider. Your widget needs to be set rapidly and utilize resources wisely. Here, take a note that the system terminates widgets that use too much memory.

Conclusion

These app extensions are incredible features in top iOS app development that apps should take advantage of. In this article we, as a mobile app developers, have looked at each Extension in app. In the coming articles we will look at the development of extensions available for iOS, so stay tuned.

If you have any comments or questions, feel free to contact us on “[email protected]”.

07 April, 2017

TechGuide on the Top 8 iOS App Extensions to Boost up Your Apps

An app extension allows you to fabricate custom functionality and content ahead your iOS app and make it accessible to users while they’re interacting with other apps or the system.

TechGuide on the top 8 iOS App Extensions to boost up your Apps

App extensions give users access to your apple app development functionality and content throughout iOS and OS X. For example, your app can now appear as a widget on current screen, offer photo filters within the Photos app, add new buttons in the Action sheet, or display a new system-wide custom keyboard. Use extensions to place the power of your app wherever your users require it most.

1. Action Extension

Action extensions permit users to transform content arising in a host app without leaving the app. You can, for example, edit images, change the text format and change the content itself, etc. At WWDC 2014, Apple revealed a demo of an Action extension that translated the text of a web page to another language without leaving Safari.

When you build a new action extension, Xcode creates a template which when used without modifying its configurations, will arise in every single action sheet by default. It won’t show any checking of the content types to decide whether or not it’s suitable for the host app.

You can make two types of action extensions: one with a user interface and one without a user interface. If you prefer the latter one, it will be restricted to Safari, but if you provide a user interface, then the extension can be made available to other apps that show that the extension supports the type of content to be transformed.

2. Audio Unit Extension

An Audio Unit app extension provides users a suitable way to build or modify audio in any iOS or macOS app that uses sound, including music production apps such as Logic Pro X or GarageBand.

The Audio Units extension framework is basically an enhanced approach to use audio apps like effects and virtual instruments within audio host apps, like Apple’s own GarageBand or other audio editing and merging apps. With the help of Audio Units, Apple let’s audio plug-ins show up as UI within another app, enhancing the workflow and making the experience much like what experts are used to on the Mac in apps like Logic Pro.

3. Broadcast Upload Extension & Broadcast UI Extension

ReplayKit was introduced in iOS 9 as an approach to give users a chance to record themselves using an app or game, then share it with friends. iOS 10 takes the entire process a step further by presenting live broadcasting of ReplayKit streams, and does so by developing on existing live streaming services: users install apps that support live streaming and ReplayKit lets you clasp into them.

So, let’s say you want to stream somebody’s game to a service like Twitch: you begin by creating a RPBroadcastActivityViewController to let the user select which streaming service they want to use. They will revert back a RPBroadcastController that can start, pause, and stop live broadcasts, and furthermore let you know whether broadcasting is currently happening through its isBroadcasting or not.

4. Call Directory Extension

Apps can build a Call Directory Extension to recognize and hinder incoming callers by their phone number.

Both recognizing and hindering of incoming calls is set up in the implementation of the beginRequest(with:) method of the CXCallDirectoryProvider subclass of Call Extension. This method is called only when the system launches the app extension.

When a phone accepts an incoming call, the system first advises the user’s contacts to locate a matching phone number. If no match is found, the system then advises your app’s Call Directory extension to locate a matching entry to recognize the phone number. This is beneficial for applications that keep up a contact list for a user that is detached from the system contacts, such as a social network, or for classifying incoming calls that may be initiated from inside the app, such as for customer service support or a delivery notification.

To provide recognizing information about incoming callers, you use the addIdentificationEntry(withNextSequentialPhoneNumber:label:) method in the implementation of beginRequest(with:).

5. Content Blocker Extension

In iOS, a Content Blocker extension personalizes the way Safari manages your content. The extension adapts your content by blocking loads, hiding elements and dismantle cookies from Safari requests.

Using a Content Blocker extension, you grant Safari with content-blocking rules that define how Safari treats content such as scripts, images, and pop-up windows. Your rules can cover Safari-downloaded content or keep Safari from requesting particular content from the server. By reducing the number of content Safari requests, your extension can decrease the amount of time required to load pages. When you obstruct content from loading, you decrease Safari’s memory usage and enhance Safari’s performance.

In addition to obstructing unwanted content, a Content Blocker extension protects privacy.

6. Custom Keyboard Extension

A keyboard extension switches the standard keyboard with a custom keyboard. Custom keyboards are enabled in the Settings app, under General > Keyboards. Once enabled, the keyboard is accessible amid text entry within any app, aside from when editing secure text fields and phone number fields. People can enable multiple custom keyboards, and shift between them at any time.

7. Document Provider Extension

The Document Provider extension permits an app to share its documents with other apps on a user’s device in a secure and timely manner. If you have ever used the Document Picker, you might have appreciated all the apps in the Locations section.

The Document Provider extension performs as the link between the files that your app handles and other apps on the user’s devices. It lets different apps import or open the files, downloading and uploading them from your server as required. Apps can also export or move their documents into your extension’s shared repository.

The Document Provider extension comprises of two separate parts: the Document Picker View Controller extension and the File Provider extension.

8. iMessages Extension

These app extensions permit developers to add new functionality directly to the Messages app in iOS 10. Users will soon be able to play games, exchange money, send videos, or make restaurant reservations all within the context of their existing iMessage conversations. Mobile App Developers can now build their own different types of apps, that vary from sticker packs to fully interactive interfaces which generates inline iMessage content.

iMessage apps work similarly as extensions. If you already have an app and need to provide iMessage functionality, you won’t require making a whole new app. You can just plug in the iMessage functionality and submit to the App Store. There’s likewise going to be a mini version of the App Store, particularly for iMessage apps, incorporated right into the Messages app. The user will be able to browse all apps compatible with iMessage and install them – right at the spot.

Conclusion

These app extensions are incredible features in iOS app development that apps should take advantage of. In this article we, as a mobile app developers, have emphasized some of the key extensions in app. And for further more app extensions, let’s get in touch with the upcoming article.

If you have any comments or questions, feel free to contact us on “[email protected]”.

20 October, 2016

Want to Create your Own App? Get started with Xcode 8 Development

We, 9series has started looking forward for the latest version of IDE for iOS App Development i.e. Xcode 8. At WWDC 2016, Apple announced Xcode 8, the latest version of its IDE for iOS, macOS, tvOS, and watchOS. With every major release, the company enhances its developer tools and adds a number of compelling new features. Xcode 8 is released with major improvements like Swift 3, address and thread sanitizer, a new editor extension architecture, and more.

xcode-ios-development

9series strongly believe that by using these latest features, development can be done faster and can be pushed ahead with the next strides.

Before downloading the latest version of Xcode i.e. Xcode 8, let’s check with its compatibility.

Compatibility:

Xcode 8 requires a Mac running macOS El Capitan version 10.11.4 or later. It includes SDKs for iOS 10.0, watchOS 3.0, macOS Sierra version 10.12, and tvOS 10.0.

Swift Migration Tool:

Projects that are built with Xcode 8 uses Swift 3 by default. Fortunately, Xcode 8 includes a build setting that provides developers the ability to stick with Swift 2, Swift 2.3 to be precise. A Swift Migrator is implemented to help upgrade your Swift code to the latest Swift 3 language specification and SDK requirements.

swiftmigration

Source Editor Extensions:

Xcode 8 adds support for Xcode source editor extensions. Application extensions provide additional commands in the Xcode Editor menu. These extensions can manipulate and navigate both text and selections. To perform them, use the new Xcode Source Editor Extension target template in the macOS Application Extensions section when building a new project. Apple emphasizes that extensions are currently focused on manipulating and navigating the contents of the source editor hence source editor extensions. It runs in a separate process. It means a crashing extension doesn’t cause Xcode to quit unexpectedly. Another great benefit is that you can create your own extension and distribute using your developer account.

Interface Builder:

  • No longer generating implicit constraints for perspectives without constraints
  • Combined with a new mode for quickly introducing variations, it’s easier than ever to see what your UI looks like across multiple devices, orientations, and adaptations like Slide Over and Split View on iPad.
  • Storyboard and xib files support smooth zooming across iOS, tvOS, and watchOS, as well as editing at any zoom level
  • Interface Builder supports colors in the Display P3 color space.
  • Font – San Francisco Mono (That comes with Xcode 8)
  • Line Highlighting (Which indicates current line)
  • Code Completion for Images & Colors
  • Asset Catalogs – Expressive Messaging feature support (“Stickers”)

Signing Made Easy and Powerful:

The new automatically managed code signing generates all the assets you need to properly sign, provision, and run your apps on a connected Apple device. Simply choose your team and Xcode will do the rest. You also have the option of hand-picking your provisioning profiles and setting up the signing process for each build configuration.

codesign

Debugging:

Xcode 8 introduces runtime issues in addition to build time issues. If you run Auto Layout issues at runtime, Xcode shows you the issue as a runtime issue in the Issues Navigator on the left. This is very esteemed addition.

Apart from above, there are few more additions to Xcode mentioned below:

  • Memory Debugging
  • Documentation (new documentation format looks awesome and the documentation browser is fast and easy itself).

memorydebug

Though no softwares can be complete or in finished version. There may be some issues, pros, cons and enhancements, which Xcode can also have. There are many improvements in Xcode 8 and we can definitely go for it and use it.

In this article, we, 9series, have only covered a subset of what is new in Xcode 8. Developers need to spend more time to review these points in detail and of course, rest of them needs to have more experience of this latest tool.

Feel free to share your own experience of Xcode 8 with us.

 

15 September, 2016

Top iOS 10 Unique Features

Hey, now it’s the end time to brainstorm and guess about what will be there in iOS 10 and time to relish for new iOS 10 release. Apple has released its new iOS 10 which unveiled a lot of enhancements in iOS with new APIs with unique designs and interface.

top-ios-10-unique-features

Apple has officially disclosed its all-new iOS 10 for its mobile devices, with backing for a huge number of iPad, iPhone and iPod touch devices. For users who have yet to install the latest operating system, here’s a breakdown of its new features and enhanced implementations.

Apple is calling iOS 10 its “biggest release ever” and this is not at all shocking, given the significant updates it provides for the Mobile Apps interface and various apps and features like Messages, Maps, Apple Music, Photos, Siri and Apple Pay. It even has support for various third-party apps.

Everything you love is now even far better with iOS 10, Biggest release yet….. incorporates new APIs and services that enable new categories of apps and features.

Here are few things iOS Developer can do with iOS 10 that they couldn’t do before.

SiriKit

Apps that provide services in particular domains can use SiriKit to make those services available from Siri for iPhone app developers and development companies. Making your services accessible requires creating one or more app extensions using the Intents and Intents UI frameworks. SiriKit supports services in the following domains:

  • Audio or video calling
  • Messaging
  • Sending or receiving payments
  • Searching photos
  • Booking a ride
  • Managing workouts
  • Adjusting settings in a CarPlay-enabled vehicle (automotive vendors only)
  • Making restaurant reservations (requires additional support from Apple)

Coordinating with the Messages App

In iOS 10, you can create app extensions that communicate with the Messages app and let users send text, media files, stickers and interactive messages. You can also bolster interactive messages that upgrades as each recipient responds to the message. You can build two types of app extensions:

A Sticker pack provides a collection of stickers that users can add to their Messages content.
An iMessage app gives you a chance to introduce a custom user interface within the Messages app, stickers, create a sticker browser, include text and media files within a conversation, create, send, and update interactive messages.

An iMessage app can also assist users to search images that you have on your application’s connected site while they’re in the Messages app.

User Notifications

iOS 10 introduces the User Notifications framework (UserNotifications.framework), which maintains the delivery and handling of local and remote notifications. You utilize the classes of this framework to plan the delivery of local notifications based on particular conditions, such as location or time. Apps and app extensions can use this framework to receive and potentially adjust remote and local notifications when they are delivered to the user’s device.

Also presented in iOS 10, the User Notifications UI framework (UserNotificationsUI.framework) allows you customize the appearance of remote and local notifications when they appear on the user’s device. You use this framework to determine an app extension that receives the notification data and provides the corresponding visual illustration. Your extension can also respond to custom activities connected with those notifications.

Speech Recognition

iOS 10 introduces a unique API that supports continuous speech recognition and helps you develop apps that can recognize speech and transcribe it into text. Adopting the APIs in the Speech framework (Speech.framework), you can achieve speech transcription of both constant and recorded audio. For instance, you can get a speech recognizer and start simple speech recognition using code like this:

Widget Enhancements

iOS 10 introduces a unique design for the lock screen, which now represents widgets. To ensure that your widget looks great on any background, you can define widgetPrimaryVibrancyEffect or widgetSecondaryVibrancyEffect, as relevant (use these properties rather than the deprecated notificationCenterVibrancyEffect property). In addition, widgets now incorporate the concept of display mode (represented by NCWidgetDisplayMode), which gives you a chance to portray the amount of content is accessible and allows users to prefer a compact or expanded view.

CallKit

The CallKit framework (CallKit.framework) allows VoIP apps incorporate with the iPhone UI and give users a great experience. Use this framework to engage users in viewing and answering incoming VoIP calls on the lock screen and manage contacts from VoIP calls in the Phone app’s Favorites and Recent views.

CallKit also presents app extensions that allow call blocking and caller identification. You can build an app extension that can correlate a phone number with a name or tell the system when a number should be blocked.

HomeKit

In iOS 10, iPad can be configured to grant remote access to accessories, run automation triggers, and facilitate shared user consents. In addition, the HomeKit framework (HomeKit.framework) includes support for camera and doorbell accessories and introduces numerous new APIs that help you:

  • View and communicate with IP camera accessory profiles, display snapshots, and live streams and control a camera’s settings, speaker, and microphone
  • Access new services and characteristics
  • For the primary service, link services and legitimate qualities to provide more connection and configuration about the accessories
  • You can also combine and set up accessories using the Apple accessory setup workflow. To learn more, see HomeKit Framework Reference.

These new hooks are slowly but surely redefining the App Store. In short, iOS 10 does bring new features for iPhone developers. Well, it’s time you may want to upgrade your iOS applications.

 

Categories

Archives