Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/baba-s/UniAndroidIntent

【Unity】adb shell am start で Android アプリを起動した時に指定された引数を解析する機能
https://github.com/baba-s/UniAndroidIntent

kogane-unity-lib unity unity-android unity-ci unity-mobile unity-test unity3d

Last synced: 3 months ago
JSON representation

【Unity】adb shell am start で Android アプリを起動した時に指定された引数を解析する機能

Awesome Lists containing this project

README

        

# Uni Android Intent

adb shell am start で Android アプリを起動した時に指定された引数を解析する機能

manifest.json に上記の記述を追加します

## 使用例

```bat
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 アプリを起動した場合に

```cs
// int 型の値を取得
Debug.Log( AndroidIntent.GetInt( "i" ) );

// long 型の値を取得
Debug.Log( AndroidIntent.GetLong( "l" ) );

// string 型の値を取得
Debug.Log( AndroidIntent.GetString( "s" ) );

// bool 型の値を取得
Debug.Log( AndroidIntent.GetBool( "b" ) );

// int 型の配列を取得
foreach ( var n in AndroidIntent.GetIntArray( "ia" ) )
{
Debug.Log( n );
}

// long 型の配列を取得
foreach ( var n in AndroidIntent.GetLongArray( "la" ) )
{
Debug.Log( n );
}

// string 型の配列を取得
foreach ( var n in AndroidIntent.GetStringArray( "sa" ) )
{
Debug.Log( n );
}
```

このようなコードで引数を解析して使用できます

![](https://cdn-ak.f.st-hatena.com/images/fotolife/b/baba_s/20190502/20190502180332.png)

## adb shell am start の引数の指定方法

|型|指定方法|
|:--|:--|
|int|--ei 【引数名】 【引数の値】|
|long|--el 【引数名】 【引数の値】|
|string|-e 【引数名】 【引数の値】|
|bool|--ez 【引数名】 【引数の値】|
|int の配列|--eia 【引数名】 【配列の値(カンマ区切り)】|
|long の配列|--ela 【引数名】 【配列の値(カンマ区切り)】|
|string の配列|--esa 【引数名】 【配列の値(カンマ区切り)】|

## 用途

- 例えば、Jenkins などでアプリを自動ビルドした後に
そのアプリを Android 端末に自動でインストールして
さらに自動でエージングテストを実行することで、
ビルドしたアプリが正常に動作するかどうか確認する、といった場面で使用できます

## 参考サイト様

- https://developer.android.com/reference/android/content/Intent