For iPad Air 2 or an iPad mini 4, we can use all three of the different multi-tasking features (Split View, Slide over & Picture in Picture).
For iPad Air, iPad mini 2, or iPad mini 3, we can use Slide Over and Picture in Picture. Is there a way we can detect these devices from the code? Like say, using respondsToSelector:someMultitaskingmethod?
Check if an iPad is capable of multitasking feature in iOS 9 - Programatically
1k Views Asked by Siddharthan Asokan At
1
There are 1 best solutions below
Related Questions in IPAD
- Setting View orientation to portrait is ignored
- How to force close ipad/iphone keypad when input element is not focused using JS?
- UIDocumentInteractionController presentation style
- iOS coordinates for iPad and iPhone game using spritekit
- What is the best practice when making a storyboard for iPhone and iPad?
- Exchange plist data between 2 iPad using iCloud
- an app supporting arm64 and armv7 running on arm64 and ios 7 ipad air
- My SIOSocket get disconneted automatically when i locked my ipad
- using livestream video in iOS application
- Always shown vertical and horizontal scroll indicator on a uiwebview
- Is it possible to opt your iPad app out of multitasking on iOS 9
- Bind html button click with objective c
- iPhone App won't run on ipad at 2x resolution
- Missing icon and storyboard files, iOS 7 and 8, Xcode 6
- iOS infinitely deeply nested TableView/UIGestureRecognizer view tree AND iPAD requires 2 finger scrolling on a tableview
Related Questions in IOS9
- BETA iOS9 deployment to test devices
- CFNetwork SSLHandshake failed iOS 9
- Can UIStackView also be used within a UITableViewCell?
- XCODE 7 App on Device Crashing
- iOS9 with Xcode 7 beta breaks AFNetworking
- Registering for local notification returns UIUserNotificationTypeNone after user chooses "Allow" on iOS9
- NSURLSession/NSURLConnection HTTP load failed on iOS 9
- How do I load an HTTP URL with App Transport Security enabled in iOS 9?
- Find User Name or First/Last Name in iOS9 CloudKit / ABPerson (ABAddressBook)
- Install app on iOS without Apple Developer Program (Xcode 7)
- Xcode 7 beta NSURLConnection error
- Linking error when building Parse in Xcode 7
- Swift 2.0 Core Spotlight API - search only for title
- UIStackView Layout
- Is it possible to opt your iPad app out of multitasking on iOS 9
Related Questions in MULTITASKING-GESTURES
- How can I prevent iPad Multitasking Gesture from locking mobile web app?
- iOS Multitasking gestures: Is there any way to check if the user has them turned on or not?
- What is the default state of the multitasking gestures option on the iPad?
- Android - Resume an activity from other application
- iPad - How to detect that multitasking gestures are enabled?
- Can an app suppress iOS's multitasking gestures?
- How can I prevent iPad multitasking gestures on my website
- Check if an iPad is capable of multitasking feature in iOS 9 - Programatically
- How to catch losing focused event in iOS application?
- multitouch slider gesture diagonal html5
- Is there any API that can bring spilt view mode to full view mode
- Onscroll gesture in all direction(Left,Right, Up, Down )
- Four-finger Multitasking gesture activates UIPinchGestureRecognizer gesture
Related Questions in SPLIT-SCREEN-MULTITASKING
- How to Enable/Disable app to multi task in Android 7.0 or above Naught?
- how do I split ultrawide monitor into virtual monitors on a mac?
- iPad Multitasking: dismiss the keyboard running in another app
- Disable split screen mode for android launcher
- onConfigurationChanged not called when moving to 1/3 screen width
- How to switch between Android apps programmatically
- How to disable the feature of split screen in nougat in android through programatically?
- Is there any way to disable split screen (view two apps side-by-side) for particular screens/ViewControllers?
- Is it possible to have 3 or more applications visible to the user on an android device?
- Programmatically open app in split screen
- Update constraints on changing the window size of application in Split Mode Screen
- Sharing UDP Data across apps (background/foreground or Split screen multitasking) in iOS
- Disable split screen mode for all apps in Android
- Apple multitasking / split view resizing issues
- iOS9: UIViewController: viewWillTransitionToSize is not called on split view changes when viewController is running in a second UIWindow
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Device Compatibility
If you really want to make sure your device has specific compatibility you can examine the settings over on the Device Compatibility list. This will reveal a number of keys that you can add to your app's plist which will further restrict it to devices that support required features. Together with checking for available classes mentioned below, I think would provide a good matrix for what you want to accomplish.
A quick review of the WWDC video covering the features you want to support indicate that you will need to check for the iPad Air, iPad Air2, iPad mini 2 and 3. You can take a look at the screen sizes in combination with the idioms and class availability to ensure that you target only the devices you want. IOSRES has a good matrix of these screen sizes ~ accessed by
UIScreen.mainScreen().Another option would be to examine using a TraitCollection to identify the proper device models/capabilities. These include properties such as displayScale and forceTouchCapability. One can even construct one's own trait collection to further describe a unique environment.
Basic Approach
Checking for devices alone is probably not what you want to do. Instead you should check for the capability available on the iOS platform and some combination of the device idioms/traits collection. You could then compare whether the method is available using responds to selector.
Check the updated SDKs or the Frameworks for more info on picture in picture (basically the new methods do all of the legwork and tell you whether the device will support the feature). Another precursor to running the methods is to determine if you can instantiate the new classes.
You can also investigate options for examining specific hardware within the platform. See this example from Apple.
If you know that the features you are targeting are available at specific platform levels, you can test the operation system version number (Apple Example).
This article shows how to support multiple OS and devices in great detail.
Example of testing for a class being available:
Example of testing a method being available:
Adopting Multi-Tasking, Split View, & Slide Over
Apple details the specifics on how to adopt the new behaviors. These require setup of plists and other requirements above and beyond checking for classes and the other programmatic techniques above. There is a good example of how to adopt Slide Over and Split View, download the Lister (for watchOS, iOS, and OS X) sample code project. For a Picture-In-Picture sample look at the AVFoundationPiPPlayer.The AdaptivePhotos sample includes multitasking with iPad.