Fluidがうまくいかないとき|確かめる順番

Fluidで作ったアプリが思ったとおりに動かないとき、原因は大きく3か所のどれかにあります。Mac本体の側、アプリの設定の側、そして表示しているサイトの側です。どこの話なのかを決めないまま設定を触ると、関係のない項目を往復することになります。ここでは症状ごとに、どの層の話なのかと、次に何を確かめればよいかを順番に整理します。

最初に、症状をどの層の話か決める

切り分けの基準は単純です。アプリが起動しない、アイコンが跳ねて終わる、警告が出て開けない、という症状はMac本体の層です。起動はするがリンクの行き先や表示の範囲がおかしい、という症状はアプリの設定の層です。表示はされるがサイトから何か言われる、機能が反応しない、という症状はサイトの層になります。

この順番が大事なのは、下の層が解決していないと上の層の設定をいくら直しても症状が変わらないからです。たとえば起動の警告が出ている段階でホワイトリストを書き換えても意味がありません。逆に、サイト側が原因の症状に対してアプリを入れ直しても同じ結果になります。

よくある症状を層ごとに並べると、次のようになります。

症状 どの層の話か 最初に確かめる場所
開かない、警告が出る Mac本体 CPUの種類と初回起動の確認
リンクが外のブラウザに飛ぶ アプリの設定 担当するURLの一覧
ログインが途中で外に出る アプリの設定 認証用ドメインの許可
メニューが灰色 アプリの設定 ライセンスの有無
表示が崩れる サイトかOS 同じMacのSafariとの比較

判断の材料として最初に押さえておくべきなのは、配布されている版が2.1.2で、その中身が2018年で止まっているという事実です。新しい版に上げれば直るという選択肢が最初から無いため、確かめる順番を守ることの価値が相対的に大きくなります。

起動しない、または警告が出て開けない

この症状を見たら、まずCPUの種類を確かめます。配布されている本体も、そこから作られるアプリも、対応しているのはIntel系のCPUだけです。Appleシリコンのマシンでは翻訳の仕組みを通して動くことになり、その仕組みが入っていない状態で開くと、導入をうながす画面が出ます。

アプリがどちら向けに作られているかは、Finderで確認できます。

アプリケーション(Intel): このアプリは、Intelプロセッサ搭載のMac専用に作られています。 出典: support.apple.com

手順は、Finderでアプリのアイコンを選び、ファイルメニューから情報を見るを選ぶだけです。種類の欄にIntelと書かれていれば、翻訳の仕組みを通して動く対象だと分かります。

もう1つの詰まりどころが、最初の起動時の確認です。配布されているファイルは開発元の署名が付いており、公証も通っています。ただし公証の控えがファイルそのものに添付されていないため、最初の起動時にはオンラインでの確認が入ります。社内のネットワークで外部への通信が絞られている環境や、機内で作業している状況では、この確認が取れずに警告が出ることがあります。いったん通信のある場所で1回起動しておけば、以降は同じ確認を繰り返しません。

リンクの行き先がおかしい

起動はするのにリンクを踏むと外のブラウザが開いてしまう、という症状は、ほぼすべてホワイトリストの設定で説明が付きます。作られたアプリは、自分が担当するURLの範囲を一覧として持っていて、範囲の外に出るリンクは既定のブラウザに渡す作りになっているためです。

新しく作ったアプリの初期値には、Google系のパターンが1行だけ入っています。作成したサイトが有名サービスのプリセットに該当しない場合、担当範囲が実質的に空のまま使い始めることになり、サイト内のリンクを踏んだ瞬間に外へ飛びます。設定の一覧に、そのサービスのドメインをワイルドカードの形で書き足せば止まります。

逆の症状もあります。外部のリンクを踏んでもアプリの中で開いてしまい、ブラウザに渡らないという場合です。これは、どのドメインへの移動も許す設定が有効になっているか、ホワイトリストの意味を反転させる設定が入っている可能性があります。どちらも設定画面で切り替えられる項目で、症状から逆にたどれます。

範囲の指定はワイルドカードのほかに正規表現でも書けます。前後をスラッシュで挟む書き方で、サブドメインが利用者ごとに変わる業務用のサービスでは、こちらのほうが短く済みます。

ログインが通らない、毎回サインインを求められる

サインインの途中で画面が外のブラウザに移ってしまう、あるいは何度ログインしても次の起動でまた求められる。この2つは原因が別です。

前者はホワイトリストの話で、認証だけ別のドメインで処理するサービスに起きます。表示用のドメインだけを許可していると、認証の画面に移った瞬間に範囲外と判定されます。配布ファイルに入っている有名サービス向けのプリセットを見ると、表示用のドメインと認証用のドメインが両方書かれており、この構造への対処が最初から織り込まれていることが分かります。同じ要領で、自分の使うサービスの認証用ドメインを書き足せば通ります。

二段階認証を使っているサービスでは、確認コードの入力画面がさらに別のドメインに置かれていることもあります。許可する範囲を決めるときは、ログインの最初から最後までを一度ブラウザで通し、その間にアドレス欄のドメインが何回変わるかを数えておくと、必要な行が漏れません。

後者は保管場所の話です。作られたアプリは、ブラウザとは別の場所にログイン情報を持ちます。普段のブラウザでログイン済みでも、アプリ側では初回のサインインが必要になるのはこのためです。毎回求められる場合は、サイト側がログイン状態を保つために使っている仕組みが、アプリ側で保存されていない可能性があります。サイトのログイン画面に、ログイン状態を保持する趣旨の選択肢があれば、そこを入れてから試すと切り分けが進みます。

メニューの項目が灰色になっている

選べない項目がある場合、故障ではなくライセンスの線である可能性があります。有料になっているのは、ステータスバーへの常駐、ユーザースクリプトとユーザースタイル、フルスクリーンの3つです。この3つに該当するメニューは、ライセンスを入れていない状態では反応しません。

逆に言えば、この3つ以外の項目が選べないなら、ライセンス以外の理由を探すことになります。たとえばプラグインを使うページの機能が動かない場合は、初期値でプラグインとJavaがどちらも無効になっている点が関係します。JavaScriptは初期値で有効なので、ページのスクリプトが原因で止まっているなら別の理由です。

アップデートを確認しても何も起きない

更新の確認を実行しても常に最新版だと返ってくる、という報告も見かけます。これは確認の仕組みが壊れているわけではありません。アプリが参照している配信用のファイルは現在も応答しており、そこに載っている最新版が2.1.2のままだからです。ファイル自体の最終更新日は2018年10月19日で、それ以降の追加はありません。

つまり、更新で直る症状は現時点では存在しません。手元で直せる範囲か、直せないかのどちらかになります。この前提を先に置いておくと、解決策を探して時間を使うべき症状と、早めに別の方法へ切り替えるべき症状の区別が付きます。

ダウンロードまわりで戸惑う点も挙げておきます。初期値では、ダウンロードの一覧に残る項目が14日相当で消えるようになっています。消えるのは一覧の項目で、保存されたファイルそのものは保存先のフォルダに残っています。保存先の初期値はダウンロードフォルダです。

設定を直すより、作り直すほうが早い場合

設定項目を1つずつ確かめていて15分を超えたら、作り直しを検討する価値があります。この道具でアプリを作る操作は数秒で終わるうえ、設定はアプリごとに分かれて保持されるため、1つを作り直しても他のアプリには影響しません。

作り直すときに変えておくとよい点が2つあります。1つは指定するURLです。ログイン後の画面のURLをそのまま登録していると、セッションが切れたときの戻り先が不自然になることがあります。サービスの入口にあたるURLを指定しておくほうが、挙動が安定します。もう1つはホワイトリストで、作成直後に、認証用のドメインまで含めて先に書いてしまうことです。あとから症状が出てから足すより手数が少なくなります。

古いほうのアプリは、動作が確認できてからゴミ箱に入れます。両方を同時に開くと、どちらの窓を見ているのか分からなくなり、切り分けが逆に難しくなります。名前を変えておくのも有効です。

表示そのものがおかしいとき

ページの見た目が崩れる、要素が重なる、といった症状は、原因がアプリの外にあることが多い部分です。この道具は描画の仕組みを自前で持っておらず、macOS本体の表示エンジンを呼び出しています。したがって、ページの描画はそのMacのOSと同じ世代の仕組みで行われます。中身が2018年で止まっているのは殻の部分であって、表示そのものは古い世代に固定されていません。

そのため、表示の崩れを見たら、同じMacのSafariで同じページを開いて比べるのが最短の切り分けになります。Safariでも同じように崩れるなら、サイト側かOS側の話です。Safariでは正常なのにアプリだけ崩れるなら、ユーザースタイルを入れていないか、表示倍率が記憶されたままになっていないかを確認します。倍率はタブごとに記憶される仕様のため、意図せず拡大した状態が残っていることがあります。

サイトから対応していないブラウザだと言われる場合は、また別の話になります。この場合はページの描画能力ではなく、アプリが名乗っている識別文字列をサイトが見て判断しています。設定画面には名乗り方を変える項目が用意されているので、そこを切り替えると表示が通ることがあります。

直らないときの見切り方と、次の一手

ここまでの順番で原因にたどり着けない症状は、手元の設定では解決しない種類のものです。更新で直る見込みが無い以上、時間をかけ続けるより、同じ目的を別の経路で達成するほうが早く済みます。

判断の材料として、自分が毎日開くサービスが最初から用意されているかどうかは大きな差になります。プリセットがあれば、認証用のドメインを調べて書き足す工程が消え、今回のような切り分けそのものが発生しません。現行の道具では対応サービス一覧に300以上のプリセットが並んでおり、認証が別ドメインに分かれるサービスも含まれています。

設定のどこを触れるかを先に把握しておくと、同じ症状が出たときの対処が早くなります。使い方ガイドには作成から調整までの手順が、できることには機能の範囲がまとまっています。切り替える場合の費用は料金で確認でき、移行の前に出やすい疑問はよくある質問に集まっています。

最後に、今日すぐできることを1つだけ挙げるなら、使っているMacのCPUの種類を確かめることです。Appleシリコンであれば、いま出ている症状が直ったとしても、翻訳の仕組みが使える期間には上限があります。その前提が分かっていれば、どこまで手をかけるかの線引きが自分で決められます。

よくある質問

AppleシリコンのMacでFluidのアプリが起動しないのはなぜですか?

配布されている本体も、そこから作られるアプリもIntel系のCPU向けに作られているためです。Appleシリコンのマシンでは翻訳の仕組みを通して動きます。仕組みが入っていない状態で開くと導入をうながす画面が出ます。Finderで情報を見ると、種類の欄でIntel向けかどうかを確認できます。

リンクを踏むと外のブラウザが開いてしまいます。どこを直せばよいですか?

アプリが担当するURLの一覧に、そのサイトのドメインが入っていない可能性が高いです。新規に作ったアプリの初期値にはGoogle系のパターンが1行入っているだけなので、自分のサービスのドメインをワイルドカードで書き足します。ログインが別ドメインに分かれる場合は、そのドメインも一緒に加えます。

アップデートを確認しても常に最新と表示されます。壊れているのですか?

壊れてはいません。更新の配信ファイルは現在も応答しますが、そこに載っている最新版が2.1.2のままで、ファイルの最終更新日は2018年10月19日です。新しい版が出ていないため、確認しても結果は変わりません。

表示が崩れるときは何から確かめればよいですか?

同じMacのSafariで同じページを開いて比べます。この道具は描画をmacOS本体の仕組みに任せているため、Safariでも崩れるならサイト側かOS側の話です。Safariでは正常な場合は、表示倍率が記憶されたままになっていないか、ユーザースタイルが当たっていないかを確認します。

記事一覧へ戻る