見出し画像

GSpaceの仕組み

どうも、しばもんです。
ついったー @monsivamon

概要

今回はHuaweiデバイスを使っている方なら一度は耳にするGSpaceについてその動作の仕組みを解説してみようと思う。
なお、私はこの手のアプリ開発者ではないド素人なので、これから行う解説はあくまで私の理解や認識であり、間違っていることをいっている可能性が高いことに関してご了承いただきたい。
また、以下の内容に関してはHONOR Magic3 Pro+上で動作するGSpaceから得た知見である。

GSpaceとは

GSpaceとはずばり特定のAndroid上で動作する仮想マシンのことである。
仮想マシンというとややこしく聞こえるのでわかりやすく言うと、スマホの中にもう一台別のスマホがあるというイメージである。
VMOS等今までもAndroid上に仮想マシンを作ることのできるアプリというのは存在していたのだがAndroidのバージョンが古いことや仮想環境と端末間のデータのやり取りをするのにひと手間かかること等の問題があった。
GSpaceは仮想環境と端末間でのデータのやり取りがシームレスに行えることや、端末と同じAndroidのバージョンで動作できることで仮想環境と端末の間に乗じる動作ギャップを感じにくい事に大きな強みがある。
具体的に言うと、私が保有するMagic3PPはAndroid12で動作しているのだが、GSpace上で動作する仮想マシンもAndroid12として動作する。

動作する端末について

仮想マシンとして動作するのは多くのHMS端末ではあるがGSpace内にリストアップ(非公表)されていない機種は動作しない為、殆どのAndroid端末はGSpaceを試したくても試すことができない仕様となっている。
例えば、私が保有するMagic3PPは昨年9月時点ではGSpace対応端末にリストアップされていなかった為、使用することができなかったが年明けに再度試したら使えるように変わっていた。

初回動作について

GSpaceの初回起動後の動作について解説を行う
GSpaceの初回動作は以下の流れで行われていると思われる

(※動作中のlogを見たり調べたわけではないのでこんな感じだろうなぁという想像で書いてます※)

①端末番号より対応機種か判定(番号の記載例:ELS-NX9、ELS-AN00)
②HMS coreを通じて使用地域と課金状況を判定
③(対応機種の場合)GSpace上にGMS環境を構築
(GoogleサーバーからはGSpace上の仮想マシンがP30 Pro,Mate20 Pro,HONOR 8X,nova4eのいずれかとして認識される)
④上記の端末に偽装してGoogleへログイン
(ログイン直後はGoogleとの同期やGMSのアップデートが内部的に行われるため動作が安定しない)
⑤GSpace上でPlayストアやGoogleを必要とするアプリが動作するようになる

偽装ポイント

次に偽装とは何をしているのかについて解説をする。
以下のスクリーンショットはMagic3PPに直接device Infoをインストールしシステムを表示させているものと、GSpace環境にdevice Infoをインストールしシステムを表示させているものである。

Magic3PP上で動作させた場合
GSpace上で動作させた場合

違いをオレンジ枠で囲っている。
ちなみにMAR-AL00というのはnova4eのことである。
注目ポイントとしては指紋という項目である。
知らない方も一定数いらっしゃるかもしれないが、ここが偽装されていることでGSpace上で動作するアプリはGoogle経由の課金をすることが可能である為ゲームなどに課金することが可能である。
わざわざGMSのないHMS端末を買っている人の多くはハイエンド端末を使っていると思うが、GSpaceを経由することで課金が可能なので高い端末性能を存分に発揮した快適なスマホゲーム環境をHMS端末上に構築することが可能である。

まとめ

GSpaceの動作についてちょこっと解説をしてみた。
なかなかここまで踏み込んだ記事は見たことがないので書いてみたがいかがだったでしょうか。
この内容では情報が足りないのでまた時間あるときに追記するつもりです。
導入の仕方教えてくださいとかこのアプリ動作しますか、通知はどうですかといった基本的な内容以外のGSpaceに関する質問があればリプやDMください。

スキ!されるとモチベーションになります。

ではまた。ちゃーお。



この記事が気に入ったらサポートをしてみませんか?