はじめに
adb shell am start で Android アプリを起動した時に指定された引数を解析する機能
「Uni Android Intent」を GitHub に公開しました
バージョン
- Unity 2018.3.11f1
使用例
adb shell am start ^ -n com.baba_s.uniandroidintent/com.unity3d.player.UnityPlayerActivity ^ --ei i 123 ^ --el l 456 ^ -e s ABC ^ --ez b true ^ --eia ia 111,223,343 ^ --ela la 444,555,666 ^ --esa sa AAA,BBB,CCC
adb shell am start を使用して、引数付きで Android アプリを起動した場合に
// int 型の値を取得 Debug.Log( UniAndroidIntent.GetInt( "i" ) ); // long 型の値を取得 Debug.Log( UniAndroidIntent.GetLong( "l" ) ); // string 型の値を取得 Debug.Log( UniAndroidIntent.GetString( "s" ) ); // bool 型の値を取得 Debug.Log( UniAndroidIntent.GetBool( "b" ) ); // int 型の配列を取得 foreach ( var n in UniAndroidIntent.GetIntArray( "ia" ) ) { Debug.Log( n ); } // long 型の配列を取得 foreach ( var n in UniAndroidIntent.GetLongArray( "la" ) ) { Debug.Log( n ); } // string 型の配列を取得 foreach ( var n in UniAndroidIntent.GetStringArray( "sa" ) ) { Debug.Log( n ); }
このようなコードで引数を解析して使用できます
adb shell am start の引数の指定方法
型 | 指定方法 |
---|---|
int | --ei 【引数名】 【引数の値】 |
long | --el 【引数名】 【引数の値】 |
string | -e 【引数名】 【引数の値】 |
bool | --ez 【引数名】 【引数の値】 |
int の配列 | --eia 【引数名】 【配列の値(カンマ区切り)】 |
long の配列 | --ela 【引数名】 【配列の値(カンマ区切り)】 |
string の配列 | --esa 【引数名】 【配列の値(カンマ区切り)】 |
用途
- 例えば、Jenkins などでアプリを自動ビルドした後に
そのアプリを Android 端末に自動でインストールして
さらに自動でエージングテストを実行することで、
ビルドしたアプリが正常に動作するかどうか確認する、といった場面で使用できます