Chromium for iOS をシュミレータにインストールしてみる
iOSシミュレータを使った、限りなく Chrome に近い環境のテストということで、
Chrome はソースが入手できないためインストールできませんが、 代わりに Chromium を試します。
はじめに
公式のガイドは、以下にあります。
Checking out and building Chromium for iOS
システム要件
公式のガイドには以下のようにありました。
- A 64-bit Mac running 10.12.6 or later.
- Xcode 12.0 or higher.
- The current version of the JDK (required for the Closure compiler).
一方で、それに加えて、
- git、pythonのコマンドが実行できること(Macであれば、おそらくOK?)
- ストレージが十分にあること(少なくとも100GB程度は必要)
- パスに半角スペースが含まれないこと
あたりが準備できてから始めましょう。
とても、とても時間がかかるので、寝ている間などに実行しておくのがおすすめ...
depot_tools
を インストールする
リポジトリをクローンする
$ git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
$ git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
※ ここで、クローンする先のパス(の一部)に半角スペースが含まれていると、うまくいかないようです...
パスを通す
$ export PATH="$PATH:/path/to/depot_tools"
※ 必要に応じて、 ~/.bashrc
や ~/.zshrc
にも。
ソースコードをダウンロードする
$ mkdir chromium && cd chromium
$ fetch --no-history ios
$ cd src
$ mkdir chromium && cd chromium
$ fetch --no-history ios
$ cd src
※ 時間短縮のため、 --no-history
オプションを付けています。
※ それでも、30分程度かかります。
※ ソースコードについても、半角スペースが含まれないディレクトリにおく必要があるようです...
これ以降は全て、 src
ディレクトリ内でコマンドを実行します。
インストールしたい Chromium バージョンに戻す
リリースバージョンについては、以下のサイトで確認をしました。
https://chromiumdash.appspot.com/releases?platform=iOS
※ この手順はスキップ可能ですが、その場合は開発版の最新のソースがビルドされます。
※ 今回は、本日(2020/12/17)時点での最新の安定バージョン(87.0.4280.77)をビルドします。
戻したいバージョンのソースコードを取得する
リモートからタグの一覧を取得し、戻したいバージョンのタグへチェックアウトします。
$ git fetch --tags
$ git checkout refs/tags/87.0.4280.77
依存関係を同期する
$ gclient sync
※ 公式ガイドの通りです。
必要であれば、Xcodeのバージョンを変更する
$ xcode-select -p
/Applications/Xcode.app/Contents/Developer
$ sudo xcode-select -s /Applications/Xcode11.7/Xcode.app/Contents/Developer
$ xcode-select -p
/Applications/Xcode11.7/Xcode.app/Contents/Developer
ビルドの設定を行う
$ python ios/build/tools/setup-gn.py
$ python ios/build/tools/setup-gn.py
※ ここでエラーが出た場合には、 out
ディレクトリの中身を一旦全て削除し、その後もう一度実行すれば良いようです。
ビルドする
今回は、iOSシミュレータ向けのデバッグビルドを行いました。
$ ninja -C out/Debug-iphonesimulator gn_all
※ 公式ガイドには、 autoninja
コマンドが紹介されていますが、 ninja
コマンドでも問題なかったです。
※ ビルドの種類について、 setup-gn.py
を見ると Debug
/Release
/Profile
/Official
/Coverage
の
5つが指定できるようでしたが、それぞれの違いについては、よく分かりませんでした。。
※ ビルドが完了するまで、私の環境では5時間以上かかっていたようでした。
(翌朝になって、終わっていることを確認したので、正確な時間は不明です)
アプリをインストールする
今回はシミュレータ向けのデバッグビルドを行ったので、
ビルドされたアプリは、 out/Debug-iphonesimulator
ディレクトリ内に作られています。
上記ディレクトリから、 Chromium.app
ファイルを探し出し、
iOSシミュレータを起動させた状態で、シミュレータの画面上へドラッグ&ドロップすれば、
インストールは完了です。お疲れさまでした。
Author And Source
この問題について(Chromium for iOS をシュミレータにインストールしてみる), 我々は、より多くの情報をここで見つけました https://qiita.com/kenkubomi/items/88492b10b390d9421291著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .