Posted on Leave a comment

Build AR experiences for iPhone and iPad

Discover how you can create unparalleled augmented reality experiences within your apps and games on iOS and iPadOS. We’ll show you how to work with powerful frameworks like ARKit and RealityKit, bring your AR scenes to life with creative tools like Reality Composer and Reality Converter, and take advantage of LiDAR Scanner depth data.

Explore the LiDAR Scanner for iPhone and iPad

Discover how you can take advantage of the LiDAR Scanner on iPhone and iPad to create AR experiences that interact with real-world objects. When you pair the LiDAR Scanner with the ARKit and RealityKit frameworks in your app, you can instantly place AR objects in the real world without scanning and take advantage of depth information to create experiences with real-world physics, object occlusion, and lighting effects.

Advanced Scene Understanding in AR

ARKit 3.5 and RealityKit provide new capabilities that take full advantage of the LiDAR Scanner on the new iPad Pro. Check out ARKit 3.5 and learn about Scene Geometry, enhanced raycasting, instantaneous virtual object placement, and more. See how RealityKit takes advantage of these features to…

Visualizing and Interacting with a Reconstructed Scene

Creating a Fog Effect Using Scene Depth

Visualizing a Point Cloud Using Scene Depth

Creating a Game with SceneUnderstanding

Discover ARKit and RealityKit

ARKit 4 enables you to build the next generation of augmented reality apps to transform how people connect with the world around them, while RealityKit is Apple’s rendering, animation, physics, and audio engine built from the ground up for augmented reality. Both frameworks help developers prototype and produce high-quality AR experiences. Explore an overview of each framework to learn more about building a great augmented reality experience for your app or game, including harnessing the LiDAR Scanner on iPhone and iPad, tracking faces for AR, and more.

Explore ARKit 4

ARKit 4 enables you to build the next generation of augmented reality apps to transform how people connect with the world around them. We’ll walk you through the latest improvements to Apple’s augmented reality platform, including how to use Location Anchors to connect virtual objects with a…

What’s new in RealityKit

RealityKit is Apple’s rendering, animation, physics, and audio engine built from the ground up for augmented reality: It reimagines the traditional 3D renderer to make it easy for developers to prototype and produce high-quality AR experiences. Learn how to effectively implement each of the…

ARKit

RealityKit

Explore the ARKit Developer Forums

Explore the RealityKit Developer Forums

Learn more about ARKit and RealityKit

LiDAR is only one aspect of developing for augmented reality. Dive deeper into ARKit and RealityKit to discover how you can add new dimensions to retail experiences, or pair these frameworks with Machine Learning and Computer Vision to create even smarter apps or games.

Augment reality

What’s new in Machine Learning and Computer Vision

Posted on Leave a comment

Updated APNs provider API deadline

The HTTP/2-based Apple Push Notification service (APNs) provider API lets you take advantage of great features, such as authentication with a JSON Web Token, improved error messaging, and per-notification feedback. If you send push notifications with the legacy binary protocol, we strongly recommend upgrading to the APNs provider API.

To give you additional time to prepare, the deadline to upgrade to the APNs provider API has been extended to March 31, 2021. APNs will no longer support the legacy binary protocol after this date.

Learn about the APNs provider API

Posted on Leave a comment

Deadline extended for app updates using UIWebView

Apple designed WKWebView in 2014 to ensure that you can integrate web content into your app quickly, securely, and consistently across iOS and macOS. Since then, we’ve recommended that you adopt WKWebView instead of UIWebView and WebView — both of which were formally deprecated. New apps containing these frameworks are no longer accepted by the App Store. And last year, we announced that the App Store will no longer accept app updates containing UIWebView as of December 2020.

However, to provide additional time for you to adopt WKWebView and to ensure that it supports the features most often requested by developers, this deadline for app updates has been extended beyond the end of 2020. We’ll let you know when a new deadline is confirmed.

Learn about the latest in WKWebView

Posted on Leave a comment

Apple Developer app updates for the United Kingdom and Ireland

Now it’s simpler than ever for developers based in the United Kingdom and Ireland to enroll in the Apple Developer Program. The Apple Developer app now supports enrollment in these regions, allowing developers to start and finish their membership purchase with local payment methods on iPhone or iPad. And since membership is provided as an auto-renewable subscription, keeping it active is easy.

View on the App Store

Posted on Leave a comment

New subscription server notifications available to test

App Store server notifications provide real-time updates on a subscriber’s status, so you can create customized user experiences. The following new notifications are now available in the App Store sandbox environment and you can use them in production later this year:

  • DID_RENEW lets you know when a subscriber successfully auto-renews.
  • PRICE_INCREASE_CONSENT lets you know when the App Store starts asking users to agree to your subscription’s new price, so you can remind them of your service’s value as encouragement to stay subscribed.

In addition, the following will be deprecated in the App Store sandbox environment in November 2020: RENEWAL notifications and these top-level objects: latest_receipt, latest_receipt_info, latest_expired_receipt, and latest_expired_receipt_info. Update your code to continue providing a seamless user experience.

Learn more about App Store server notifications

Posted on Leave a comment

Get your education apps ready for Schoolwork 2.1 beta

The latest version of Schoolwork, the powerful iPad app for teachers and students that helps them keep track of assignments and student progress, is now available. Make sure your app takes advantage of the latest ClassKit features to provide a great user experience. With the new ClassKit Catalog API, you can declare contexts ahead of time instead of at runtime, include keywords, and support a large number of assignable activities. Teachers can browse your app’s activities in Schoolwork before running your app for the first time on their device. Available in beta, this REST API can be tested with Schoolwork 2.1. And on iPadOS 14, ClassKit supports rich new metadata properties to make your content more discoverable by teachers in Schoolwork.

Learn more about the ClassKit Catalog API

Download Schoolwork 2.1 beta

Posted on Leave a comment

Submit your iOS and iPadOS apps to the App Store

Make sure your apps are ready when iOS 14 and iPadOS 14 become available to customers worldwide. Give users a quick way to engage with a part of your app at the right moment with App Clips. Let users experience your app right on their iPhone home screen with new widgets. Bring your ideas to life with new features and more realistic augmented reality experiences using ARKit and RealityKit. And much more.

Build your apps using Xcode 12 GM seed, test them on devices running iOS 14 and iPadOS GM seed, and submit them for review. Starting April 2021, all iOS and iPadOS apps submitted to the App Store must be built with Xcode 12 and the iOS 14 SDK.

Learn more

Posted on Leave a comment

Support game controllers in your app

Level up your apps and games with the Game Controller framework and easily build in support for popular console game controllers and MFi accessories on iPhone, iPad, Mac, and Apple TV. The precise control and tactile feedback provided by a game controller can deepen the player’s sense of immersion and enhance their gameplay experience. And now it’s easier than ever to help players discover which games support controllers.

With Xcode 12, you can indicate game controller support right when building your app. By indicating controller support, your App Store product page will display controller badging, and your app will be able to access controller input re-mapping options in Settings.

How to add support for game controllers in Xcode 12

To indicate controller support, follow a few simple steps:

  1. Open your Xcode project.
  2. Navigate to the Signing & Capabilities section of your app target.
  3. Add the “Game Controllers” capability in Xcode.
  4. Select each of the controller profiles your app or game supports.

Note: “Extended Gamepad” refers to game controllers featuring physical buttons, triggers, and thumbsticks such as the Steelseries Nimbus, Sony Dualshock 4 Wireless Controller, Xbox Elite Wireless Controller Series 2, and others; and “Micro Gamepad” refers to the controls provided by the Siri Remote for Apple TV.

If you are building your app using an older version of Xcode, you can indicate controller support by editing the info.plist for your app. Set the GCSupportsControllerUserInteraction key to true, then indicate each of the controller profiles your app supports.

<key>GCSupportsControllerUserInteraction</key> <true/> <key>GCSupportedGameControllers</key> <array> <dict> <key>ProfileName</key> <string>ExtendedGamepad</string> </dict> </array>

Press start

The Game Controller framework offers powerful features for your apps across Apple platforms. And with iOS 14, tvOS 14, and macOS Big Sur, your app will also gain support for the Xbox Adaptive Controller and Xbox Elite Wireless Controller Series 2, custom haptics for rumble feedback, and keyboard and mouse input on iPad. For more information, be sure to check out “Advancements in Game Controllers” and “Bring keyboard and mouse gaming to iPad.”

Resources

Advancements in Game Controllers

Let’s rumble! Discover how you can bring third-party game controllers and custom haptics into your games on iPhone, iPad, Mac, and Apple TV. We’ll show you how to add support for the latest controllers — including Xbox’s Elite Wireless Controller Series 2 and Adaptive Controller — and map…

Bring keyboard and mouse gaming to iPad

Level up your iPad games and add in keyboard, mouse, and trackpad controls. Discover how to use the Game Controller framework to augment your existing titles, bring over games from other platforms, or dream up entirely new interaction experiences. Learn how to integrate keyboard and “delta”…

Posted on Leave a comment

App Store Review Guideline updates now available

The App Store is a safe and trusted place for customers to discover and download apps, and a great opportunity for developers. These guideline changes and clarifications support new features in upcoming OS releases, better protect customers, and help your apps go through the review process as smoothly as possible.

Updates are noted below. For complete details, see the App Store Review Guidelines.

Changes

2.5.16: App Clips, widgets, extensions, and notifications should be related to the content and functionality of your app. Additionally, all App Clip features and functionality must be included in the main app binary. App Clips cannot contain advertising.

3.1.2(a): Games offered in a streaming game service subscription must be downloaded directly from the App Store, must be designed to avoid duplicate payment by a subscriber, and should not disadvantage non-subscriber customers.

3.1.2(a): Apps that offer auto-renewing music and video subscriptions with prior approval by Apple may also be included in pre-defined bundles with cellular data plans offered in cellular carrier apps.

3.1.3(a): Reader apps may offer account creation for free tiers, and account management functionality for existing customers.

3.1.3(d): Person-to-Person Experiences: If your app enables the purchase of realtime person-to-person experiences between two individuals (for example tutoring students, medical consultations, real estate tours, or fitness training), you may use purchase methods other than in-app purchase to collect those payments. One-to-few and one-to-many realtime experiences must use in-app purchase.

3.1.3(f): Free Stand-alone Apps: Free apps acting as a stand-alone companion to a paid web based tool (eg. VOIP, Cloud Storage, Email Services, Web Hosting) do not need to use in-app purchase, provided there is no purchasing inside the app, or calls to action for purchase outside of the app.

3.1.7: Display advertising should be limited to your main app executable, and should not be included in extensions, App Clips, widgets, notifications, keyboards, watchOS apps, etc.

3.2.2(vi): Apps should not require users to rate the app, review the app, watch videos, download other apps, tap on advertisements, enable tracking, or take other similar actions in order to access functionality, content, use the app, or receive monetary or other compensation, including but not limited to gift cards and codes.

3.2.2(x): Apps offering personal loans must clearly and conspicuously disclose all loan terms, including but not limited to equivalent maximum Annual Percentage Rate (APR) and payment due date. Apps may not charge a maximum APR higher than 36%, including costs and fees, and may not require repayment in full in 60 days or less.

4.9: Streaming games Streaming games are permitted so long as they adhere to all guidelines — for example, each game update must be submitted for review, developers must provide appropriate metadata for search, games must use in-app purchase to unlock features or functionality, etc. Of course, there is always the open Internet and web browser apps to reach all users outside of the App Store.

4.9.1: Each streaming game must be submitted to the App Store as an individual app so that it has an App Store product page, appears in charts and search, has user ratings and review, can be managed with ScreenTime and other parental control apps, appears on the user’s device, etc.

4.9.2: Streaming game services may offer a catalog app on the App Store to help users sign up for the service and find the games on the App Store, provided that the app adheres to all guidelines, including offering users the option to pay for a subscription with in-app purchase and use Sign in with Apple. All the games included in the catalog app must link to an individual App Store product page.

After You Submit: If you still disagree with the outcome, or would like to suggest a change to the guideline itself, please submit an appeal.

Bug Fix Submissions: For apps that are already on the App Store, bug fixes will no longer be delayed over guideline violations except for those related to legal issues. If your app has been rejected, and qualifies for this process, please use the Resolution Center to communicate directly with the App Review team indicating that you would like to take advantage of this process and plan to address the issue in your next submission.

Clarifications

2.3.1: Don’t include any hidden, dormant, or undocumented features in your app; your app’s functionality should be clear to end users and App Review.

2.3.1: All new features, functionality, and product changes must be described with specificity in the Notes for Review section of App Store Connect (generic descriptions will be rejected) and accessible for review.

2.3.7: Choose a unique app name, assign keywords that accurately describe your app, and don’t try to pack any of your metadata with trademarked terms, popular app names, pricing information, or other irrelevant phrases just to game the system.

3.1.3: Other Purchase Methods: The following apps may use purchase methods other than in-app purchase. Apps in this section cannot, either within the app or through communications sent to points of contact obtained from account registration within the app (like email or text), encourage users to use a purchasing method other than in-app purchase.

3.1.3(c): Enterprise Services: If your app is only sold directly by you to organizations or groups for their employees or students (for example professional databases and classroom management tools), you may use purchase methods in addition to in-app purchase to collect those payments. Consumer, single user, or family sales must use in-app purchase.

3.1.3(e): Former 3.1.5(a) renumbered.

3.1.3(b): Multiplatform Services: Apps that operate across multiple platforms may allow users to access content, subscriptions, or features they have acquired in your app on other platforms or your web site, including consumable items in multi-platform games, provided those items are also available as in-app purchases within the app.

3.1.5: Former 3.1.5(b) renumbered.

4.5.2(i): MusicKit on iOS lets users play Apple Music and their local music library natively from your apps and games. When a user provides permission to their Apple Music account, your app can create playlists, add songs to their library, and play any of the millions of songs in the Apple Music catalog.

5.1.2(vi): Data gathered from the HomeKit API, HealthKit, Clinical Health Records API, MovementDisorder APIs, ClassKit or from depth and/or facial mapping tools (e.g. ARKit, Camera APIs, or Photo APIs) may not be used for marketing, advertising or use-based data mining, including by third parties. Learn more about best practices for implementing CallKit, HealthKit, ClassKit, and ARKit.

Read the App Store Review Guidelines