⚠️このコンテンツは歴史的または組織的な目的で保存されていますが、現在は維持されていません。今後更新される可能性は低く、重複または古い情報が含まれる可能性があります。
Mac App Store には、Facebook、Netflix、Hulu など、iPhone や iPad で見られるようなお気に入りがまだ多くありませんが、Mac Catalyst は、開発者が人気のアプリを簡単に変換できるツールを提供することで、この状況を変えることを目指しています。また、Mac 上の Apple Silicon への移行においても重要な役割を果たします。
● Apple の Xcode IDE バージョン 11 以降の一部
● すべてのデバイスに対応する 1 つの UI フレームワーク
● 単一のチェックボックスで Mac バージョンをプロジェクトに追加します
● Mac 固有の機能の自動サポート
● モバイル特有の不要な機能を削除
Mac Catalyst 前、変換iPhoneそしてiPadアプリは以上マック追加の時間とリソースが必要でした。 Apple のデスクトップおよびラップトップは、他のモバイル製品よりも画面が大きく、入力方法が異なるため、異なる要素のセットが必要です。 Apple は移行を容易にし、開発者のコストを削減するために Mac Catalyst を導入しました。
Mac Catalyst 以前の開発
Xcodeは、すべての Apple ベースのデバイス用のアプリを構築するために、Mac 専用に設計された開発環境です。単一のワークスペース ウィンドウ内で、開発者はコードの編集、アセットの管理、インターフェイスの作成、アプリのテスト、デバッグを行うことができます。 Objective-C、Java、および迅速。
MacBook Pro上で動作するXcode環境
2019 年以前、開発者は Apple デバイス用のアプリを設計するために Xcode 内の 2 つの異なるユーザー インターフェイス フレームワーク、つまり UIKit for iPhone/iPad と AppKit for Macs を使用していました。 UIKit にはタッチ用に構築されたクラスとコントローラーがあり、iOSSDK。 AppKit はデスクトップ インターフェイスのすべての要素を提供し、macOSSDK。
iPad アプリを Mac に移植する際の問題は、ARM および x86 ベースの CPU 用に個別のアプリをコンパイルする機能とは何の関係もありませんでした。モバイルと PC という 2 つの異なるデバイス インターフェイスを考慮すると、時間とリソースがボトルネックでした。複数のチームが協力する必要があるか、単一のチームがプロジェクトの一部を変換して Mac バージョンを作成する必要があり、追加の時間と資金が必要でした。
とはいえ、Mac をサポートするということは、従来のコピー/ペーストやドラッグ/ドロップ機能、周辺機器入力、トラックパッドのサポートなどを追加することを意味します。モバイルファーストの世界では、そのため Mac 所有者は人気サービスの人気アプリを利用できなくなり、代わりに Web ベースのアプリに頼るようになりました。
Mac Catalystの登場
この問題を解決するために、Apple は開発を 1 つの統一されたエクスペリエンスに統合するための社内プロジェクトに取り組み始めました。 Project Marzipan は 2018 年に macOS Mojave で初めて登場し、ニュース、ホーム、株式、ボイスメモなどのネイティブ アプリを iPad から Mac にもたらしました。 Apple はまた、再設計された Mac App Store を導入し、ネイティブ Mac アプリのエクスペリエンスに大きな変更が加えられることを示しました。
とmacOS カタリナ2019 年に、Apple は UIKit のサポートを追加しました。以前は Project Catalyst と呼ばれていた Mac Catalyst を使用すると、開発者はすべての Apple デバイスで単一の UI フレームワークを使用できます。同時に、Apple はユニバーサル アプリの開発を今後さらに容易にするために、新しいユーザー インターフェイス フレームワークである SwiftUI も導入しました。 Apple は、カスタム Swift プログラミング言語の使用を提案し、スウィフトの遊び場開発者がこの言語にもっと慣れるのに役立つアプリです。
既知の Apple 製 Mac Catalyst アプリ
Apple が開発した Mac Catalyst バナーに該当するアプリは次のとおりです。
- 家
- Apple Music
- アップルニュース
- アップルTV
- 株式
- ボイスメモ
その結果、Twitter は Mac App Store に戻ってきました。アスファルト 9: レジェンド、ポストイット、ロゼッタストーンなど。 iTunes に代わって、Apple Music と Apple TV もデビューしました。
Xcode には、Mac サポートを追加するためのチェックボックスが含まれるようになりました。
Mac をサポートするために、開発者は Xcode 11 以降でプロジェクトをロードし、「ターゲット」でプロジェクトを選択し、「全般」タブをクリックして、「デプロイメント情報」セクションにリストされている「Mac」をチェックできるようになりました。他にもチェックすべき設定がいくつかあり、Mac アプリを正しくコンパイルするために手動で調整できる可能性があります。
Apple によると、開発者が Mac サポートを追加する場合、互換性のない埋め込みコンテンツ、フレームワーク、ライブラリはすべて可能な限り除外されます。プロジェクトの Mac バージョンがビルドされない場合、開発者は必要に応じて項目を手動で除外できます。 Mac で使用できない API を参照するコードを含める必要がある場合があります。
Xcode は、アプリが侵害された場合にシステム リソースとユーザー データを安全に保つために、Mac に固有のアプリ サンドボックス資格を追加します。また、Mac バージョン用の別のバンドル識別子なども挿入されます。
最後に、すべての Catalyst アプリは、次の新しいビジュアル デザインを採用します。macOS ビッグサー。このアップデートでは、ウィンドウのタブ操作を制御するための新しいウィンドウ API、ウィンドウ外および取り外し可能なポップオーバーのサポート、キーボードを使用した完全なアプリ制御、ClassKit や GameKit などの新規および更新されたフレームワーク、HomeKit のサポートなどが追加されます。
Apple Silicon と Mac Catalyst への移行
数年前と同様、Apple は PowerPC から Intel ベースのプロセッサに移行する際、2020 年に自社製プロセッサに切り替えることを明らかにしました。アップルシリコンARM アーキテクチャに基づいた Mac 用。同社は、2020 年後半に新しい Mac を発売しました。13インチMacBook Pro、MacBook Air、 そしてマックミニ– 新しいものを実行するM1チップ。このような重要な移行により、同社はファットバイナリ形式に戻すことで、すべてのアプリがネイティブを維持できる手段を提供する必要があることを意味しました。
iPad アプリを Mac に持ち込むのがさらに簡単になりました。
ファットバイナリは何も新しいものではありません。これは、ターゲット デバイスに応じて、単一の「ユニバーサル」実行可能ファイルに複数のコンパイル済みアプリケーションが含まれるソフトウェアです。
2005 年、Xcode 2.1 では、2 つの異なる CPU アーキテクチャをサポートするアプリを作成する手段が導入されました。古い Mac では、1 つのバージョンは PowerPC CPU 用にコンパイルされ、もう 1 つは Intel (x86) チップ用にコンパイルされました。
これは、Apple が 2006 年から PowerPC から Intel プロセッサに移行したときに、開発者がアプリを「ネイティブ」に保つ方法でした。このユニバーサル バイナリには、オペレーティング システムによって読み取られる「ヘッダー」が含まれているため、オペレーティング システムはどの部分を実行する必要があるかを認識します。
2009 年に、Xcode 2.4 は、32 ビットと 64 ビットの PowerPC、および 32 ビットと 64 ビットの Intel の 4 つの設計のサポートを追加しました。
これまでと同様、今後の Apple の Mac ポートフォリオは 2 つの CPU アーキテクチャに基づいており、単一の実行可能ファイル内に 2 つのコンパイル済みアプリケーションが必要になります。1 つは arm64 (64 ビット ARM) ベースで、もう 1 つは x86_64 (64 ビット Intel) ベースです。この場合、開発者は arm64 をビルド リストに追加する Xcode 12 を必要とします。
これは最終的に、Apple のエコシステム全体が 2 つの CPU 設計ではなく、ARM という 1 つの CPU 設計を中心に展開することを意味します。これにより、ハードウェアとソフトウェアの両方の面で、Apple 傘下のすべてのプラットフォームが統合されます。最終的には、Apple は x86 ベースの CPU を完全に廃止する予定です。これは、ファット バイナリや 2 つのバージョンのコンパイルがなくなることを意味します。
開発者を支援するために、Apple は A12Z Bionic System on a Chip (SoC) に基づく Developer Transition Kit (DTK) を提供しています。 iPhone および iPad 用に開発されたアプリは、Apple Silicon を搭載したコンピュータ上でネイティブに実行されますが、アプリ発行者は App Store での提供をオプトアウトすることができます。開発者は引き続き Mac Catalyst を使用して、アプリをより Mac ネイティブに感じさせることができます。
一時しのぎとしての Mac Catalyst
Apple は、iPad および iPhone の開発者が Apple Silicon を搭載した Mac にアプリを導入できるよう、Mac Catalyst の更新を続けています。しかし同社は、新しいアプリが最初からユニバーサルバイナリで構築され、時間が経つにつれてCatalystの必要性が薄れることを期待している。