[Unity] [C#] アプリの起動時に指定されたコマンドライン引数の取得

今回は前に仕事で少しハマった内容についてのメモを簡単に残しておきます。内容はというと、Unity製のアプリを起動するときに引数としてトークンが渡されるのでWWWリクエストを投げて起動チェックをかける、といった要件でした。

それで、WWWリクエストは大丈夫だったのですが(まぁこれも少しハマりましたが…)、引数はどうやって取得するんだろうとなりまして。。結論から言えば、C#に用意されているメソッドを利用しましょうということでした。知っていれば何てことないやつでした。

string[] args = System.Environment.GetCommandLineArgs();

このメソッドを呼んであげると指定された引数を全て取得できるので、あとはよしなに。ちなみに、このメソッドは例えばUnityのどのシーンで呼ぼうが、アプリを起動した際の引数を保持している(していたはず)なので、必要な場面で引数を使用することも出来ます。

要件として引数が渡されるようなケース以外だと、デバッグコマンドのように指定した引数があるとデバッグモードで起動するといった使い方も出来るのかなといった感じでしょうか。後者は割かし思い付きなのであれですが、実際にデバッグとして使っているような人がいたり、それ以外の使い方をしている人がいたら話を聞いてみたいです。

スポンサーリンク

Script, C#

Posted by atsushishi