WWDC21:Apple、最新技術を紹介する「Platforms State of the Union」を公開
※本サイトは、アフィリエイト広告および広告による収益を得て運営しています。購入により売上の一部が本サイトに還元されることがあります。
WWDC21において、Appleのプラットフォームに搭載されている新しいツールやテクノロジー、進化した機能をより深く理解することで、より優れたアプリケーションを作成することができる「Platforms State of the Union」が公開されています。
Xcode 13の「Xcode Cloud」は、Appleの全プラットフォームに向けた開発に対応します。
macOS Serverの機能であるXcode Serverをcloud上に置き、Appleのクラウドインフラストラクチャを利用して、ビルドやテスト、さらに配信用のコード署名の管理まで自動で行ってくれるようになります。
Xcodeそのものの開発もXcode Cloudを導入して行われています。
製品の選択、ワークフローの確認、ソースコードへのアクセス許可、App Store Connectとの連携で設定は完了です。
Xcode Cloudを利用することで、コードのテストが更に徹底的により一貫して効率的に行えます。
Xcode Cloudのワークフローは、複数のテストプランを実行するように構成でき、複数のプラットフォームやデバイスシミュレータ、OSバージョンで全て並行して実行できます。
ベータ版OSリリースのXcode Cloudでもテストを実行でき、開発端末にベータ版をダウンロードする前から可能です。
Xcode 13ではテスト実行を100回行うことが可能です。
グループ作業が可能になり、Slackのような会議がXcode 13上で行えるようになります。
ローカル開発版とXcode Cloud版との相違点を自動的に表示してくれます。
Code Signing in the Cloudが提供され、署名やプロファイルを最新の状態にする心配が必要なくなり、TestFlight for Macを搭載したMacを含む全てのTestFlightに向けて配信可能になります。
Xcode 13は、App Store Connectで見られるのと同じ診断とフィードバックにより繋がりやすくなります。
TestFlightで起きたクラッシュログは、数分でオーガナイザーへ直接届きます。
クラッシュレポートでは、どこでクラッシュしたのかを示してくれるため、問題の修正が素早く行うことができます。
Xcode Cloudは最初、無料の限定ベータ版として利用可能で、2022年には全てのデベロッパーが利用可能になる予定です。
Apple Music Appは、何年も前からSwiftで開発されていて、ウィジェットなどのシステム全体にわたる機能は、初めから「SwiftUI」で設計されています。
Swiftに並行性が導入されることで、同時に複数のタスクを実行できるようになり、アプリがバックグラウンド動作しながらユーザーの入力に反応できるようになります。
天気アプリは、ユーザーが都市を選択する間に予報データを取得することが可能になります。
また、マルチコアプロセッサを活用するためには並行性が不可欠で、膨大な演算処理に必要な高いパフォーマンスを実現できるようになります。
Swift Playgrounds 4 for iPadではSwiftUIが利用可能になり、アプリ構築やApp Storeに提出することも可能になります。
iPadでアプリ開発が可能になったことで、これまで以上に生産性を高めることができます。
2022年には、Swift Playgrounds for Macも提供されます。
RealityKit 2は、ビジュアルとオーディオとアニメーションをよりコントロールできるようになり、3Dモデルの作成も可能です。
Mac用フォトグラメトリAPI「Object Capture」で、3Dモデルを数分で作れるようになります。
iPhoneで対象物の2D画像を撮影し、その画像をAR用に最適化した実物さながらの3Dモデルにできます。
iPhone/iPadアプリ「Qlone 3D スキャナー」などを使用して、対象物を底面も含め全角度からキャプチャし、Object Capture APIを使用すれば、僅か数行のコードで3Dモデルが作成できます。
GPU処理の強化として、複雑な数学的処理の高速化と光の挙動のモデル化、そしてリアルなサーフェイスの実現のために、Metalでは今後、膨大なライブラリとRay Queryプリミティブをグラフィックシェーダーから直接呼び出せるようになります。
MetalのレイトレーシングAPIでは、新たな確率的モーションブラー機能で、更に写実的なレンダリングを行えるようになります。
MetalのプレゼンテーションタイムAPIとProMotionディスプレイを使用し、希望するレンダリングとインプット間のレイテンシーに基づいて、アプリのフレームレートを動的に適合させることが可能になります。
macOS Montereyは、VESA Adaptive-Syncディスプレイのサポートが追加され、Macのゲームでも超低遅延と変更可能なリフレッシュレート画面を利用できるようになります。
Xcode 13には、選択的シェーダーデバッガーが搭載され、大きなGPUシェーダーの中からデバッグする機能を選択し、反復デバッグ作業の効率化が可能になります。
テクスチャー圧縮のサポートとして、Metalテクスチャ変換ツールがアップデートされ、テクスチャ変換圧縮パイプラインを直接コントロール可能になります。
全く新しいガンマに応じたピクセル変換を追加し、最新のASTCやBCテクスチャ圧縮形式へのサポートが大幅に拡大されます。
Xcode 13のMetalデバッガーに全く新しいGPUタイムラインビューを追加し、Metalコマンドやリソースやバッファをイベントのタイムライン上で視覚的にデバッグできるようになります。
集中モードのAPIとして「Interruption Level API」を提供し、アプリが緊急性の微妙な違いを伝えられるようになります。
通知には4つの中断レベルの中から1つを割り当て可能で、Passive中断は無音かつデバイスを起こさないレベル、Active中断は現在の通知と同じように音と触覚で知らせるレベル、Time Sensitive中断は視覚的に目立つようデザインされていて、ユーザーがタップしないとロック画面に長く留まるレベル、またAirPodsを装着していればSiriからも通知を受けることができます。Critical警告は最も緊急性の高いレベルで、デバイスをミュートにしていても音で知らせます。
コミュニケーションアプリの場合、新しい「User Notifications API」を使用することで、アバター表示付きの通知になります。
通知要約は、ユーザーが選んだ時に通知がまとめて提供されるため、自分に合ったタイミングで素早く情報を知ることができるようになります。
新しい「Screen Time API」は、ペアレンタルコントロールアプリ開発のための現代的な解決策を提供します。
Swiftフレームワークに、管理された設定、ファミリーコントロール、デバイスアクティビティの3つが新しく追加されます。
管理された設定は、アカウントのロックやパスワード変更の防止、Web通信のフィルタリングとアプリアクセス制限が可能です。
ウィジェットは、iPadOS 15からアプリと並べてウィジェットを配置することが可能になり、特大サイズも追加されます。
ウィジェットを取り入れたデフォルトのホーム画面レイアウトがiOS 15、iPadOS 15に追加されます。
最もよく使うアプリのウィジェットをまとめたスマートスタックも追加され、スペースを節約できます。
FaceTimeの「GroupActivitiesフレームワーク」により、FaceTimeでアクティビティを始めると、SharePlayがグループをアプリへと導きます。
このGroupActivitiesは、個々の再生環境を自由に選べることが可能で、同じコンテンツを完全同期して再生することができます。
グループFaceTime技術を元にした高速で信頼性の高いデータチャンネルをアプリに提供します。
GroupSessionMessengerを使用することで、ホワイトボードアプリで共同編集などが行えます。