Almost a quarter has passed since WWDC 2017. With the recent release of Xcode 9 and the iPhone 8 and iPhone X, the full adaptation of iOS 11 has also been put on the agenda. I have sorted out the updated points, including the points that should be paid attention to in development, design, product and even marketing, and hope to share them to help you. New framework ARKit iOS 11 introduces the new ARKit framework, which allows you to easily create unparalleled augmented reality experiences for iPhone and iPad. By integrating digital objects and information with the environment around you, ARKit frees apps from the screen and takes them beyond the boundaries of the screen, allowing them to interact with the real world in new ways.
See the virtual objects superimposed on the real scene through the camera The ARKit framework provides two AR technologies, one is augmented reality based on 3D scenes (SceneKit), and the other is augmented reality based on 2D scenes (SpriteKit). To display AR effects, you must rely on Apple's game engine framework (3D engine SceneKit, 2D engine SpriteKit), mainly because only the game engine can load object models. Although the view object in the ARKit framework inherits from UIView, the ARKit framework itself currently only includes camera tracking and cannot directly load object models. Therefore, it can only rely on the game engine to load ARKit. Another point that needs to be explained is that although ARKit is a new framework released in iOS11, it cannot be used in all iOS11 systems. Instead, it must be used on processors A9 and above. Apple has used the A9 processor since the iPhone 6S, which means that iPhone 6 and earlier models cannot use ARKit. Availability Of course, you can do AR without ARKit, Pokémon Go is the best example. ARKit just lowers the threshold for doing AR. ARKit's usage scenarios are relatively limited. It requires iOS 11 and the processor must be A9 or above. If you need to support iOS 8, 9, 10 and systems before iPhone 6S for a long time, you may need to reconsider your AR solution. Since it involves Apple's game engine framework (3D engine SceneKit, 2D engine SpriteKit), the learning curve is relatively steep and requires a long period of knowledge development. If you only use ARKit for certain promotional activities, it is not recommended because the promotional activities are short-lived, the learning cost of ARKit is high, and the overall cost-effectiveness is low. If the entire App is based on AR service functions, then this will be a good idea. For example, based on the camera-based "Dianping", we can directly display the real world through the camera and overlay some information to display the merchant's rating and geographic location. For cross-platform games, ARKit is not a good solution due to compatibility issues. If it only involves Apple platforms and you have already used SceneKit or SpriteKit, and you want to add AR features at this time, then congratulations, ARKit will be the best choice. PDFKit After iOS 11, Apple opened PDFKit SDK on iOS platform. This is a framework that has existed on MacOS for a long time, but it was late to iOS. You can use this framework to display and operate PDF files. You can use PDFKit to display PDF documents, display thumbnails, expand outlines, search text, etc. Availability A very practical framework. Although WebView can also read PDFs, the native experience is obviously the best. Of course, if you consider the compatibility with iOS 8, 9, and 10, it may not be the time to change yet. Core ML & Vision Apple introduced NSLinguisticTagger to analyze natural language in iOS 5. iOS 8 introduced Metal, which provides low-level access to the device GPU. Last year, Apple added Basic Neural Network Subroutines (BNNS) to the Accelerate framework, allowing developers to build neural networks for inference (not training). This year, Apple gave us Core ML and Vision!
To summarize, if you already have a trained model, you can perform scene recognition on images. Identify the scene depicted in an image using Core ML and Vision Availability If you want to play Core ML and Vision well, the learning curve is still very steep. How to build and train your own model is a big topic and cannot be completed overnight. Applications based on photos or cameras can consider using Core ML and Vision, and can even be combined with ARKit to analyze the real scene and overlay virtual information on the real scene. IdentityLookup You can develop an App Extension to intercept system SMS and MMS messages. When the system message App receives a text message from an unknown person, it will ask all enabled filter extensions. If the extension indicates that the message should be blocked, the message will not be delivered to you. Availability Some operators or auxiliary apps may use this function. DeviceCheck By using DeviceCheck, you can track the use of your developed app on a mobile phone to some extent (even if the app is uninstalled or the device is flashed). DeviceCheck allows you to communicate with Apple servers through your server and set two bits of data for a single device (yes, 2 bits, 00 01 10 11 four possibilities). In this way, even if the app is uninstalled and reinstalled, or the device is flashed, the App background can still get the previously set status. Availability It can effectively prevent fraudulent activities of new users, but it cannot replace deviceID because this token is one-time. The whole process is as follows:
FileProvider & FileProviderUI
Availability I believe it will become the standard for document-related apps in the future. Core NFC NFC (Near Field Communication) is a short-range wireless communication technology. Core NFC is mainly used to detect NFC tags and read the NDEF data contained in them. It should be noted that: Only one session can be opened at a time The app needs to be in the foreground, and will be invalid if it is put into the background The session lifespan is 60 seconds at most. If it times out, a new session must be restarted. You need to configure info.plist and enable NFC reading permission Only supports iPhone 7 and 7P and above models with NFC module AvailabilityFirst of all, you need to have an NFC device. Those who have one can consider it, but those who don’t have one can’t bite the bullet and do NFC just to introduce new features. Drag & Drop Drag and drop demo on Apple's official website As for the dragging function, the iOS system helps us handle most of the work, and developers only need to deal with the results. UITextView and UITextField support dragging natively, and UICollectionView and UITableView have a series of dedicated delegates to indicate the occurrence and end of dragging. You can also define dragging behavior for any UIView subclass. Unlike dragging on Mac, dragging on iOS fully respects the multi-touch screen, so you may need to do some special processing for multiple dragging behaviors at a time. AvailabilityOnly iPad can support drag and drop sharing between different apps, while iPhone can only drag and drop content within the app. This limitation on iPhone greatly reduces the effectiveness of Drag and Drop. Drag & Drop can shine in text and image editing apps. iPhone X compatible Safe Area The most common problem on iOS 11 devices is that the tableView inexplicably shifts by 20pt or 64pt. The reason is that iOS 11 deprecates the automaticallyAdjustsScrollViewInsets property and replaces it with the contentInsetAdjustmentBehavior property of UIScrollView. The culprit of all this is the newly introduced Safe Area. Safe Area Safe Area helps us place the view in the visible part of the entire screen. Even if the navigationBar is set to transparent, the system assumes that the safe area starts from the bottom of the navigationBar. The safe area defines the visible area of the view, ensuring that it is not covered by the system's status bar or views provided by the parent view, such as the navigation bar. You can use additionalSafeAreaInsets to extend the safe area. Each view can change the size of the safe area inset, and the controller can also. The safeAreaInsets property reflects the distance of a view from the safe area of the view. For a controller's rootView, the safeAreaInsets value includes the area covered by the statusBar and other visible bars and other insets values customized by additionalSafeAreaInsets. For other views in the view hierarchy, the safeAreaInsets value reflects the portion of the view that is covered. If a view is entirely within the safe area of its parent view, the safeAreaInsets value is (0,0,0,0). App cannot go full screen on iPhone X If your App does not fill the screen when running on iPhone X and has black borders on the top and bottom, it means that you did not use storyboard to make LaunchImage, but used Assets. The solution for Assets is to add a LaunchImage with a size of 1125 x 2436. iPhone X adaptation points that require special attention
FaceID & TouchIDNote that iPhone X supports FaceID for authentication, but not TouchID. Be careful to distinguish between models. Do not use TouchID on iPhone X, and do not use FaceID on other devices. Xcode 9 Updates You can open multiple different simulators at the same time Swift 4.0 support Refactorings are built into the editing experience and work across Swift, Objective-C, Interface Builder, and many other file types Named Color - You can add a color in xcassets and then reference the color in code or IB App Store Updates Overall layout iOS 11 App Store layout Apple has officially pushed the official version of iOS 11 to users on September 20. The App Store has undergone a major update, with significant changes in both layout and UI. The bestseller list recommendation has been removed from the layout; the entrances to the free list and paid list have become deeper; the search has become more powerful, and you can search for multiple content such as editorial stories and featured lists; the recommendation of Today software has been added, and AR games have been emphasized in the game software. It seems that the new App Store has also paved the way for the future development of AR software. The cancellation of the best-selling list recommendation and the deepening of the entrances to the free and paid lists indicate that Apple intends to strengthen content and gild searches, paving the way for the arrival of Search Ads. At the same time, it weakens the list to combat ranking manipulation. App self-recommendation Today is the biggest update of App Store. Different from the previous Apple recommendation, this time you can recommend your app to App Store: https://developer.apple.com//contact/app-store/promote/ The materials you need to prepare include: developer name, app name, app Apple ID, app description, supported devices, language support, region support, app title date, app release date, and app story. It is worth mentioning that it is better to explain the highlights and key features of the app in the app description and app story. Of course, the app story will focus more on sentimental things, explaining to Apple the inspiration for your app development and the story related to the developer. Screenshots and video previews The search screenshots are displayed as 3 pictures App Store search results have been showing two app screenshots in iOS 10, but now they can show three in iOS 11. The information that was originally available only after entering the app details page is now disclosed at the upper level, so that users can learn more information without clicking in. The original idea of stitching the first two app screenshots into a complete picture on iOS 10 can be changed. On iOS 11, perhaps you should design a stitching mode of 3 app screenshots. The first two app screenshots on iOS 10 are combined into one complete image In addition, in iOS 10, an app can only upload one Preview Video, but this number has been increased to three in iOS 11. In addition, the video preview can be automatically played without sound. Cellular download limits Cellular download limit increased to 150 MB To be precise, this is not a change in iOS 11. On September 20, in addition to releasing the official version of iOS 11, Apple also announced a change in App Store policy, allowing users to download apps of no more than 150MB when connected to a cellular network. The previous limit was 100MB. Apple mentioned this new download limit in an article published on its official website. This is a good thing for many apps, as they no longer have to haggle over a few megabytes of space. However, affecting business development for the sake of user update rates on cellular networks is actually putting the cart before the horse. |
<<: Blame Debate: Product, Development, or Operations, who should take the blame?
>>: How to use flex elegantly on mobile devices in 2017
The fire of smart hardware has finally spread to ...
Although I am writing about how brands should ope...
With the development of network information techn...
Descending Ascending Douluo Continent Season 1 Ep...
External links are articles or content with links...
Preface Greed is an inherent ability of human bei...
At this year's Guangzhou Auto Show, SAIC Volk...
What should we do if our product prices are much ...
In the Internet age, everything has to be done fa...
At present, domestic online live broadcast platfo...
Recently, Yunnan's Ailao Mountain attracted a...
This article is for newcomers to the field of mob...
Fat Bear: Grandma, haven't you finished the n...
On April 18, the first charging station of GAC Ai...
There are a lot of them, so be patient and choose...