届いたばかりの iPhone Duo を開いても、いつものアプリはまず起動します。折りたたみ用に作り直していないから落ちる、という動きではありません。iOS 26 SDK 以前でビルドしたバイナリは、開いた内側ディスプレイの中央に、見慣れたスマホサイズの窓として残ります。余白が黒い帯に見えます。
レイアウトが伸びる、ボタンが当たらない、は別の故障です。開発者が iOS 27 または 27.1 SDK でビルドし直し、折りたたみに合わせて窓が広がり始めてから出ます。固定の画面サイズのまま部品を置いていると、互換用の窓が外れた瞬間に仮定が露呈します。
古いアプリは動きます。黒い帯は iOS 26 SDK 以前の互換ウィンドウで、クラッシュではありません。ずれや押し間違いは、窓がすでに大きくなったあとに「このサイズ、この向き、iPhone か iPad か」でレイアウトしている場合に出ます。
以下は 2026 年 10 月 15 日に照合できた資料です。画面サイズと発売日は Apple の iPhone Duo 製品ページ、三種類の窓は Prepare your app for iPhone Duo、メインスクリーンと向きとセーフエリアは 同じ題の Tech Talk によります。App Store の有名アプリを実機で順に開いた記録ではないので、書くのはコードの種類と現象の対応です。特定のブランドが「すでに壊れている」とは言いません。
古いアプリは iPhone Duo で開くのか
開きます。準備ページは、すべてのアプリが iPhone Duo で動くと書いています。変わるのは、内側・外側・Split View に窓が付いていくかどうかです。
iPhone Duo は Apple 初の折りたたみ iPhone です。内側は 7.6 インチで、iPhone 18 Pro Max より 50% 大きい。閉じた外側は 5.4 インチで、画面面積は iPhone 18 Pro の 90% を超えます。内外のアスペクト比は揃っています。予約は米国時間 2026 年 10 月 16 日午前 5 時、発売は 10 月 23 日です。数字は製品ページのもので、掲示板の予想ではありません。
システムが見るのは、そのバイナリをどの SDK でコンパイルしたかです。アプリ名でも、iPhone 18 Pro 上の見た目でもありません。
| ビルドに使った SDK | 開いた内側ディスプレイ | 文書がほかに書いていること |
|---|---|---|
| iOS 26 以前 | 中央に置き、周囲は空く | 閉じると、内容はステータスバーとカメラの左に出る |
| iOS 27 | 内側の大部分を使う。右側のステータスバーは避ける | 開くと広がり、閉じると外側ディスプレイに戻る |
| iOS 27.1 以降 | 内側を端まで使う | ツールバーとタブバーはステータスバーの下で縦に並ぶ。出す前に中身が付いてくるか確認する |
左の二列は準備ページの意味です。「閉じたとき、内容がステータスバーとカメラの左に来る」は iOS 26 以前の SDK に書かれた文です。iOS 27 以降は、開けば内側に広がり、閉じれば外側に戻る、とだけ書かれています。三段階の外側を、同じ黒い枠で描かないでください。
黒い帯は誰が残しているのか
帯はアプリが描いた飾りではありません。iOS 26 SDK 以前のバイナリに対し、システムは 7.6 インチの内側へ引き伸ばすのを拒み、そのバイナリが知っているサイズに置きます。余った領域は空のままです。窓の中のボタンは、たいていまだ押せます。
閉じた面は別の絵です。この世代の SDK について準備ページが書く外側は、内容がステータスバーとカメラの左に出る、です。外側はより広く、より低い。製品ページも、よく使う操作を側面へ移し、縦の余白を内容に残すと説明しています。内側の黒い枠を、「閉じても四方が黒い」とそのまま言わないでください。
広まりやすい文は「外側は普通の iPhone だから、古いアプリは端まで埋まる」です。Apple が書いているのは、内容がステータスバーとカメラを避ける、ということです。埋まるか、操作が側面に来るかは、その SDK の説明で見てください。内側の互換窓を外側へ貼り付けないでください。
帯は、開発者が SDK を変えるまで残ります。iOS 27 は空きがはっきり減り、iOS 27.1 は画面の端まで使います。再コンパイルだけでレイアウトを直さないと、帯は消えて、次の節のずれが代わりに出ます。発売前に 27.1 の確認を終えて申請まで進めるチームは限られるので、10 月 23 日にも互換窓は残ります。これは日程の話で、ストアの故障一覧ではありません。
黒い帯が出やすいアプリはどれか
見る点は一つです。そのバイナリがまだ iOS 26 SDK 以前でビルドされているか。ゲームかどうか、大手かどうかは関係ありません。内側を開くと、この世代はすべて中央の窓に入ります。
目につきやすいのは、更新がまれな道具です。駐車、入退室、社内承認、何年も動いていない業界アプリ。新しい SDK で誰もビルドし直していないことが多い。見えるのは黒い帯で、一覧とボタンは窓の中でまだ動くことが多いです。
ゲームは別扱いです。ヒューマンインターフェイスガイドラインは、姿勢ごとに画面を埋め、黒帯よりアスペクト比の変更を優先するよう求めています。余白が避けられないなら、余白にも絵を置く。新しい SDK のあとも左右や上下に黒が残るゲームは、自分でその枠を選んでいます。システムの互換窓ではありません。見た目は似て、責任の層が違います。ある一本のゲームがどちらかは、ストアにあるビルドの SDK を見ないと決まりません。
レイアウトがずれやすいアプリはどれか
まだ互換窓の中にいる世代では、ずれはほとんど出ません。窓の大きさが変わっていないので、スマホ用に描いた画面はそのまま合います。ずれは、折りたたみ・回転・Split View で窓が変わったあとに、古いサイズの仮定が残っているときです。
準備ページが名指ししている書き方は、引き伸ばし、欠け、見えない場所への配置を起こします。
- 画面全体を自分の窓にする。
UIScreen.main.bounds、起動時に一度だけ測るサイズ、UIWindow(frame: UIScreen.main.bounds)。折りたたみは同じセッションの途中で窓を変えるので、起動時の数字は古くなります。Tech Talk は、二画面の機器では main screen が曖昧で、将来のリリースで非推奨になると述べています。 - 向きでレイアウトを決める。 内側ディスプレイは、宣言した対応向きに従いません。
UIDeviceの向きやinterfaceOrientationは、窓の実際の幅と高さに合いません。 - 「iPhone かどうか」でレイアウトを分ける。
userInterfaceIdiom == .phoneや.pad、そして regular 幅を iPad とみなす分岐。内側の iPhone アプリは regular 幅になり得ます。 - 既知の高さの表。
bounds.height == 844のような比較は Duo の窓に一致しません。 - 全面トリミングのヒーローと動画。
scaleAspectFillは、より広い画面で主題を切ります。
文書に沿う例です。メモアプリを iOS 26 SDK でビルドすると、開いたとき中央に空きを残し、ボタンは元の位置で、メモは保存できます。iOS 27.1 SDK に変えると窓は内側を埋め、システムはタブバーをステータスバーの下へ縦に置きます。下端ボタンの Y が起動時の画面高さなら、バーの上か、内容の外に落ちます。入力は同じで、変わったのは窓です。
いちばん多い取り違えは、幅が regular だから iPad 専用のサイドバーへ切り替えることです。その分岐は以前 iPad でしか走りませんでした。iPhone Duo の内側も regular 幅を返すので、サイドバーはこの電話の上に出ます。
押し損ないや、プレビューが逆になるアプリはどれか
操作の不具合は、レイアウト不具合の次の層です。部品は残っているのに、指が別のものを押し、あるいはレンズの向きとプレビューが逆になります。
向きを固定したゲームと映像
内側は、宣言した向きを使いません。横向きだけで、ボタンを片側に固定したゲームは、折りたたみや別の姿勢のあと、仮想スティックがセーフエリアに食い込むか、古い比率の余白を残します。指針はアスペクト比を変えて埋めることです。余白が避けられないなら、裸の黒帯ではなく絵を置きます。
レンズを自分で選ぶカメラと通話
折りたたみは、レンズが人に対してどちらを向くかを変えます。「フロント / リア」を自分で選ぶカメラアプリは、開閉のときにレンズを切り替える必要があります。カメラ体験の Tech Talk は AVCaptureDeviceDirectionCoordinator を使わせます。外側のコーディネータはリアカメラを前向きと報告し、内側は後ろ向きと報告します。使わないと、プレビューの鏡像が狂うか、開いたあともさっきのレンズのままです。これは黒帯ではなく、操作の問題です。
自前の下バーと当たり判定
システムのナビゲーションバー、ツールバー、タブバーはセーフエリアの外に置き、ステータスバーとカメラを自分で避けます。自分で描いた下バーは、自動では縦になりません。外側と、横向きの内側では、標準の操作は側面に来ます。縦に持った内側だけ、横バーを残せる高さがあります。セーフエリアはしばしば非対称で、Split View では縦のボタンが左に出ることがあります。「バーはいつも下、左右は対称」で当たりを計算すると、空を押します。
iPad 上の iPhone 互換モードと同じか
同じではありません。iPad で拡大される iPhone 窓が答えるのは「このバイナリに iPad の画面がない」です。Duo の三段階が答えるのは「どの SDK でコンパイルしたか」です。一つのプロジェクトに両方あっても、互いに代用できません。
壊れるタイミングも違います。iPad の互換モードは、使用の途中で端末を折ったから窓が変わる、ということは普通ありません。Duo は変わります。viewIsAppearing で一度測れば足りる書き方は、ここでは足りません。サイズは layoutSubviews、viewDidLayoutSubviews、またはサイズが変わる直前のコールバックで読み直します。SwiftUI では GeometryReader か onGeometryChange。スケールは traitCollection.displayScale で、UIScreen.main.scale は使いません。窓は UIWindow(windowScene:) で作り、UIScreen を保持しません。
秋の新機種の前に、リリース回帰と小さいベータレーンを分けた計画があるなら、その計画が答えていたのは「回帰をどのレーンに置くか」です。Duo では同じケースを、閉じた状態、開いた状態、回転、Split View のそれぞれで見ます。固定解像度のシミュレータ一枚では足りません。安定レーンとテストレーンの分け方は iPhone 18 向けにテスト計画を変えるべきか の論点です。Duo はテストレーンに置き、リリース回帰は止めません。シミュレータは Xcode 27.1 のある Mac が必要です。そのマシンを日常とどう分けるかは macOS 27 のテスト環境の作り方 を見てください。窓の規則自体は、Mac を借りるかどうかに依存しません。
この記事が代わりに答えられないことは何か
あるアプリが今日黒い帯を出すかは、ストアにあるビルドの SDK を見るか、Xcode 27.1 の iPhone Duo シミュレータでそのビルドを開く必要があります。準備ページはほかに、Device Hub のリサイズできるシミュレータと、macOS 27 の iPhone ミラーリング窓を極端な幅と高さへ引く方法を挙げています。完全なネイティブ体験を見るなら Duo シミュレータだと書かれています。この記事は、公開中のアプリについてそれをやっていません。
ヒンジの折り目が画素を隠すか、ゲームの余白が意図的か、外側の側面操作が自前のジェスチャを塞ぐかは、その姿勢で見る必要があります。文書が教えるのは疑う層です。その層が自分のバイナリで直っているかは教えません。
では、古いアプリはどこまで壊れるのか
iOS 26 SDK 以前でビルドしたアプリは動きます。開いたときの典型は内側の黒い帯で、クラッシュではありません。閉じると内容はステータスバーとカメラを避けます。それを、内側と同じ枠だと言わないでください。
黒い帯が出やすいのは、まだ SDK を変えていないバイナリ、とくに更新のまれな道具です。ずれが出やすいのは、iOS 27 か 27.1 に移したのに、画面のシングルトン、固定の高さ、向き、「iPhone / iPad」で組み続ける画面です。押し損ないが出やすいのは、向きを固定したゲーム、レンズの向きを自分で持つカメラ、自前の下バーです。
標準のナビゲーションバーとタブバーはシステムに付いていきます。自分で計算した座標は付きません。一つのアプリを確かめるなら、そのバイナリを Duo シミュレータか実機で開いてください。iPhone 18 Pro で正常でも、折ったあとも正常だとは限りません。