水たまりは希望を写している

『モバイル・エコシステムに関する競争評価中間報告』を読んだ感想

ITmedia にて掲載された『「iPhone にサイドローディングさせろ」を国が言うのは妥当か : 小寺信良の IT 大作戦』という記事を発端に、『モバイル・エコシステムに関する競争評価中間報告』の内容がインターネット上で話題となった。今回はこれを僕が読んで、どう思ったのかについてこのブログ記事に書いていく。

サイドローディングの許可

iOS のサイドローディングが禁じられているというのは正確には間違いで、正しくは「自身が署名した App 以外のサイドローディング」が禁じられているだけだ。というのはどうでも良くて、Android とは違い App Store 以外からのアプリインストールが難しいことには変わりない。

端的に言うと、サイドローディング自体を許可するよう仕向けることは賛成だ。僕は Android でサイドローディングにたいへんお世話になっているので、iOS も同様になればいいなとは思っている。これはどちらかというと「よくわかんないアプリをポンポン入れられるようになればいい」とか、「App Store のような代替ストアを作り上げるべき」というよりかは、「支配的なストアが私怨でアプリの公開を止めたときの損失回避を可能にする」という意味合いを含む。

サイドローディングするというのはつまり「Apple のチェックが 1 ミリも行われていないアプリを突っ込むこと」なので、サイドローディング有効化にはそれなりの手順を踏ませる必要があるし、インストールの際も警告画面を出すべきであろう。iPhone を使う皆が皆かしこい訳ではないので、インストールする前までに悪意のあるアプリはブロックしておきたい。何の躊躇もなく「許可する」ボタンを押す人が居るからね。

……ともあれ、既に (サイドローディングが) できる Android でさえ、サイドロードの経験があるのは一部ユーザーだけだろうし、iOS で許可されたからといって急激に増えることはないだろう。代替のストアアプリが App Store のように成長する、ということもないと考えていい。サイドロードするアプリの中身は

  • ルール上ストアで配信できない1R18 系とか。ProMotion でヌルヌル動くエ█ゲとかしたくない? したいよね?アプリ
  • 悪意のあるアプリ
  • 金銭的な事情で配信できない2App Store で配信するためには金がかかるので、利益の出ないアプリを作っている個人開発者は極力お金を掛けたくないだろう。アプリ

のどれかになるだろう。

サイドローディング自体を肯定するとともに、(サイドローディングの容認は) モバイル OS が果たさなければならない義務なのか? という疑問が思い浮かぶ。スマホから離れるが、ゲーム機にも同じこと言えることなのではないか。Nintendo Switch はプリインストールされたショップでのみゲームをダウンロードすることができるが、サイドローディングを許可せよ、という意見を聞いたことはない。ゲーム機が果たす責任ではないから、なんだと思う。“そういったこと” がしたいなら Android を買えばいいじゃない、というのはあながち間違ってはないと思う。消費者は選択できる権利があるので。

Android はサイドローディングできるのは、Android がモバイル OS の範疇に収まらず、プラットフォームとして使われている3組み込み・IoT 機器の OS として機能するということ。からだと僕は考えている。

同様に、Google Pixel をはじめとするスマホは OS の書き換えが自由にできるようになっていて4初期状態ではできない。ブートローダーのアンロックが必要。、例えば Google サービスに依存しない AOSP ベースの OS でスマホを使うことも可能だ。出荷時の ROM から書き換えるのでカスタム ROM と一般的に呼ばれている。先ほども述べたように、Android はプラットフォームとしての側面も持ち合わせているため、OS の書き換えが企業・個人問わずできるようになっている。ユーザーがその気になれば「脱 Google を果たしたスマホ」を使うこともできるのだ。

しかし、この OS の書き換えが自由になっている端末は限られていて、とくに日本で発売されている国産のスマホは基本的に禁止されている。裏を返せば、ユーザーが選べたはずの選択肢を潰し、Google に依存したモバイル端末の運用を強いている、と捉えることはできないだろうか? まず Google や Apple にどうこう指図するより、国内スマホメーカーの姿勢を正すべきなのではないだろうか?

……ここら辺パブコメにて意見を出しておけば、何か国内端末ののブートローダーアンロック事情が “変わった” かもしれないけど、時すでに遅し。こういう視点で指摘している人はいないだろうし、もう少し読むのを早めに始めてたら間に合ったかもしれないなあ……。

Google Play 開発者サービスへの依存 (Android)

○ 他方、Android 以外の AOSP ベースの OS で一部動作しないアプリが多数発生しているといった懸念があり、また、アプリ・デベロッパからすると、Android 以外の AOSP ベースの OS に対応するアプリを開発する意欲をそがれる懸念もある。

モバイル・エコシステムに関する競争評価中間報告 96 ページ

これがよくわからない。あくまでも Google Play 開発者サービスは Google Mobile Service (以下、GMS) の一部なんだから、GMS 非搭載端末で動けというのは無茶がありすぎる。技術的に無理なので無理。GMS 非搭載の Android なんて国内じゃ Fire HD くらいしかないのに、デベロッパの開発意欲が~のくだりは謎。あの GMS が剥奪された HUAWEI 端末でさえ GMS を無理矢理突っ込んで使ってる人が大半だっていうのに……。

どうしても Google Play 開発者サービスに依存する実装をしないといけないのなら、GMS 非搭載端末のサポートを切るべきであろう。依存する実装をする時点で GMS で何かしらのメリットをデベロッパが享受している訳なのだから、わがままなこと言えないでしょ……。

iOS でのブラウザエンジン縛り (WebKit)

○ iOS で使用できるブラウザ・エンジンは WebKit に限定されており、また、WebKit の基礎となるソースコードは Apple に管理権があり、サードパーティのブラウザ開発事業者はそれを自ら変更することはできない。

○ このため、当該サードパーティのブラウザは、セキュリティ、スピード、安定性といった観点でのイノベーションを向上させることができなくなっている。

○ 実際、WebKit の既知の脆弱性に対する修正プログラムを提供できるのは、Apple のみであり、仮にサードパーティのブラウザ開発事業者が強力で迅速なマルウェア対策を見出しても実装ができないとの指摘がある。

○ これは、プライバシー保護機能においても同様であり、自ら開発しても実装することができず、サードパーティのブラウザ事業者が開発したブラウザにおけるユーザー保護機能が実装されることとならないとの指摘もある。

モバイル・エコシステムに関する競争評価中間報告 158 ページ

iOS で Chrome や Firefox を使おうとしても、実際の中身 (レンダリングエンジン) は Safari (WebKit) である、というのはある程度知られている話だろう。macOS ではとくに制限されてないものの、なぜか iOS では制限されている……。

Apple は WebKit に縛ることで迅速なセキュリティパッチの配信ができることをメリットとして挙げているが、WebKit の更新は iOS の更新に依存しており、iOS のソフトウェアアップデートが配信されない端末は永遠に古い WebKit のままだ。せめて Android と同様に、WebView をアプリストア経由でアップデートできるようにするべきであろう5むしろそれが技術的に難しいから、iOS のアップデートは長いのかもしれない。

Chromium ベースのブラウザである Vivaldi は、WebKit 縛りがあることを理由に iOS 版をリリースできていない。フルスクラッチで開発するリソースもないだろう。WebKit 縛りを行うことで、意図的に他社の競争力を低下させていると捉えることもできる。

僕は WebKit 縛りすることに意味を感じないので、このルールは撤廃すべきだと思う。iOS でも Vivaldi を使いたいからという理由もあるけど。

完読した感想

つまるところ、Apple と Google が社運をかけて作り上げてきたモバイル・エコシステムの双璧をどうにかして崩したい……ということだろう。もう僕は「iOS や Android のようなシステムを作って参入するのは厳しいです」と宣言しているようにしか聞こえないが。

独占的状態になるとそれを壊す、の繰り返しになったらそれはそれで野心的な企業が減りそうだな、って感じはある。

参考になるかもしれない記事など

  • 1
    R18 系とか。ProMotion でヌルヌル動くエ█ゲとかしたくない? したいよね?
  • 2
    App Store で配信するためには金がかかるので、利益の出ないアプリを作っている個人開発者は極力お金を掛けたくないだろう。
  • 3
    組み込み・IoT 機器の OS として機能するということ。
  • 4
    初期状態ではできない。ブートローダーのアンロックが必要。
  • 5
    むしろそれが技術的に難しいから、iOS のアップデートは長いのかもしれない。