Mac mini起動時にiPadをメインディスプレイに自動設定

Mac mini
更新日:2021年08月16日
この記事は約7分で読めます。

Sidecar機能を使い、iPad1台だけでMac miniのディスプレイにする方法を紹介します。

通常はSidecarはセカンドディスプレイにしか設定できませんが、Mac起動時にAppleScriptを自動実行してiPadに接続します。

2021年8月16日補足
macOS 11.5.2では、以下の図のように「補助アクセスは許可されません」とエラーが出て実行されません。
対処法が分かり次第、さらに補足します。
AppleScriptのセキュリティエラー

 

作業の概要

今回は、次のMac miniとiPadを使って動作確認が取れました。

Mac mini iPad
機種 Mac mini(M1, 2020) iPad Air(第4世代)
OSバージョン macOS Big Sur 11.4 iPadOS 14.6
created by Rinker
Apple(アップル)
¥79,800 (2021/09/24 23:04:10時点 Amazon調べ-詳細)
created by Rinker
Apple(アップル)
¥87,780 (2021/09/25 00:50:23時点 Amazon調べ-詳細)

 

また、以下のリンク先のサイトで公開されているAppleScriptを使用しました。

Scripting the menu bar in macOS Big Sur

スクリプトの内容は、あらかじめ設定したSidecar接続先のiPadに自動接続する、といったものです。

なお、macOS 11 Big SurからmacOSのUIの仕様が変わっているので、このページの後述のスクリプトはmacOS 10.15 Catalina以前では動きません。

Catalina以前用のスクリプトも上記サイトで公開されていますが、今回は説明を省略します。

 

AppleScriptでSidecar接続アプリケーションの作成

▶ Finderで「アプリケーション」-「ユーティリティ」とフォルダをたどって、「スクリプトエディタ」を起動して、「新規作成」ボタンをクリックして新規のスクリプト編集画面を表示します。

Macで「スクリプトエディタ」を起動

Macで「スクリプトエディタ」で新規作成

 

▶ 編集画面が表示されたら、以下のスクリプトをコピー・アンド・ペースト(コピペ)します。

インデントが付いていませんが、「スクリプトエディタ」にコピペして保存すると、後述の掲載された画面のようにインデントが付けられます。

set deviceName to "Poseidon" -- Change this to the name of your iPad

set displayMenu to "" -- Do not change this

tell application "System Events"
tell its application process "ControlCenter"
-- Get all menu bar items.
set menuBarItems to menu bar items of menu bar 1

-- Determine if the Display menu is in the menu bar.
repeat with mbi in menuBarItems
-- display dialog (name of mbi) as string
if name of mbi contains "ディスプレイ" then
set displayMenu to mbi
end if
end repeat

-- If the Display menu is in the menu bar, get the Sidecar device.
-- In Big Sur, it's a toggle button (checkbox) instead of a menu item.
if displayMenu is not equal to "" then
click displayMenu
set deviceToggle to checkbox 1 of scroll area 1 of group 1 of window "コントロールセンター" whose title contains deviceName

-- Click the device.
click deviceToggle

-- The menu name changes when Sidecar is active, so we need to get the Display menu again, then click to close it.
set displayMenu to (first menu bar item whose name contains "ディスプレイ") of menu bar 1
click displayMenu
else
-- If the Display menu isn't in the menu bar, display an error message.
set errorMessage to "Display menu not found in menu bar. Open System Preferences > Dock & Menu Bar. Set Display to \"Show in Menu Bar > Always.\""
display dialog errorMessage with icon caution
end if
end tell
end tell

 

▶ 「スクリプトエディタ」にコピペして保存すると、以下の図のようにインデントが付きます。

おおもとのスクリプトからの変更点は①〜④と4つあります。

①は、自分のSidecar接続先のiPadの名前に変えます。

②〜④は、おおもとは”Display”や”Control Center”と英語ですが、Macを日本語で使っている場合は図のように変更します。(Macを英語や他の言語で使っている場合は、適宜変更する必要があります。)

Sidecar自動接続のAppleScript

 

▶ スクリプトを修正したら、図のようにファイルフォーマットを「アプリケーション」で適当な書き出し名で書き出してやります。

AppleScriptをアプリケーションで保存

 

▶ Finderで作成したアプリケーションを「アプリケーション」フォルダに移動します。

 

▶ 作成したアプリケーションの動作テストとセキュリティ設定を兼ねて、今の環境で実行してみます。

実行すると、図のようにアクセスの要求画面が出るので、「OK」で許可してやります。

Macのアプリ実行の許可

 

▶ 図のように「アクセシビリティアクセス」が表示されたら、「”システム環境設定”を開く」をクリックして、「セキュリティとプライバシー」の設定で当該アプリケーションにアクセス許可を与えます。

アクセシビリティアクセス

アクセシビリティの設定

 

▶ 各種のセキュリティの設定でアプリケーションの実行が中断されているはずなので、もう一回実行してみます。

セキュリティの設定がうまくいっていたら、自動的にiPadにSIdecar接続されます。

うまくいかなかったら、ここまでの手順を一つづつ見直してください。

 

作成したアプリケーションをMac起動時に自動実行する設定をする

▶ 「システム環境設定」の「ユーザとグループ」を開き、「ログイン項目」の中に当該アプリケーションを登録します。

 

▶ これで、外部ディスプレイを何もつながない状態で、Mac miniの電源を入れると、自動的にSidecar機能でiPadに接続されます。

「ジャーン」という起動音が鳴ってから、使えるようになるまで、だいたい1分弱ぐらいかかります。

Mac miniからiPadへSidecar接続

 

このページの記事は、ここまでです。

コメント

  1. ボビホ より:

    素晴らしい情報ありがとうございます。

    なお、自分のMacの場合は、ディスプレイアイコンがメニューバーに常時表示ではなく、最初はうまく行きませんでしたが、
    システム環境設定>Dockとメニューバー>ディスプレイ>メニューバーに表示>常に
    と設定をして解決しました。
    他にも同様の方がいたら、ご参考までに。

  2. abc より:

    情弱ながら質問します。
    ▶ Finderで作成したアプリケーションを「アプリケーション」フォルダに移動します。
    までやりましたが、補助アクセスは許可されません。と表示されました。
    ですがセキュリティとプライバシーのところで当該スクリプトは「コンピュータの制御を許可」のところにチェックマーク入れてます。
    どこを改善すれば良いでしょうか

    • yamafd より:

      Macの機種、macOSのバージョン、iPadの機種、iPadOSのバージョン、以上4つを教えて下さい。

      • abc より:

        Mac→2020M1チップ512GB
        macOSバージョン→11.5.2
        iPadの機種→iPad pro WiFi 1TB
        iPadOSバージョン→14.6
        です

        • yamafd より:

          こちらでも、macOS 15.2で再現してみました。
          確かに、補助アクセス〜で怒られて実行できなかったです。
          macOS 11.4では動いていたので、セキュリティの仕様が変更になったか、バグのどちらかだと思います。

          しばらくネットで情報を探してみましたが、解決策が見つからないので、このページでも但し書きを追加します。
          その後なにか対処法が見つかったら補足します。

          abcさん、いち早く有益な情報ありがとうございました。

タイトルとURLをコピーしました