Android Studio と IBM Security Verify SDKをはじめて触ってみる①

# はじめに
IBM Security Verify には、iOS/Android向けのSDKが提供されています。
AndroidStudioを初めてインストールし、試行錯誤しながら、GitHubに公開されているサンプルアプリケーションでなにができるのか確認しました。

動作確認した環境は、Windows10環境＋Android10デバイス(Xperia XZ2)となります。
対象は以下の2つのアプリにしました。

- 1.QR Code Scan Demoアプリ
- 2.Authenticator Demoアプリ

||1.QR Code Scan Demoアプリ |2.Authenticator Demoアプリ| 
|---|---|---|
|アプリ概要|QRCodeを読み取るサンプルアプリケーション|IBMVerifyアプリを登録するサンプルアプリケーション|
|アプリ起動画面| ![androidStudio (22).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/f8f9d35f-0605-3779-e7e1-52ffcd9bfce4.png)|<img width="85%" alt="androidStudio (21).png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/776d8dda-977f-d105-82d5-990233b29670.png">)
|

# 1.公開情報について
最初に、IBM Security より公開されている参考情報をまとめておきます。

- SDK
 - IBM Security App Exchangeからダウンロードします。IBMidが必要となります。
 - [1.IBM Security Verify SDK (Android) ](https://exchange.xforce.ibmcloud.com/hub/extension/91efa587eef9f210e903add92459ae1b)
 - [2.IBM Security Verify SDK (iOS) ](https://exchange.xforce.ibmcloud.com/hub/extension/4d3dcc1264b4c07230286860dedcad53)

- SDKの使い方
　- [1.（SDKのインポート/簡易動作確認)Getting started with the IBM Verify SDK](https://www.ibm.com/blogs/security-identity-access/getting-started-with-the-ibm-verify-sdk/)
　- [2.（デモアプリのソース解説) Create your own Authenticator](https://www.ibm.com/blogs/security-identity-access/create-your-own-authenticator/)
　- [3.（開発者向けポータルサイト) Developer Portal](https://iamdevportal.us-east.mybluemix.net/verify/mobile/android/setting-up-android-studio)

- サンプルアプリ(IBM Security の Github)
 - [1. (Android向けサンプルアプリ)IBM Security Verify SDK for Android](https://github.com/IBM-Security/verify-sdk-android)
 - [2. (iOS向けサンプルアプリ)IBM Security Verify SDK for iOS](https://github.com/IBM-Security/verify-sdk-ios)

# 2.Android Studioのインストール

Android Studioのモジュールは、以下のURLから入手できます。
インストール方法はいろいろな公開記事があるので割愛させて頂きます。

動作検証では、4.2.1 for Windows 64bit版をインストールしました。
https://developer.android.com/studio/
![androidStudio (3) .png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/6f82a941-7c95-d415-5d8f-d7d1da17cd8a.png)

# 3.SDKのダウンロード

IBM Security App ExchangeからAndroid向けのSDKをダウンロードします。
ダウンロードの際には、IBMidが必要になります。お持ちでない方は以下のリンクを参考にIBMidの登録してください。

[サポート・コミュニティーを使おう：ステップ1　IBMid の作成](https://www.ibm.com/blogs/solutions/jp-ja/lets-create-ibmid/)


なお、検証で利用したSDKのバージョンは2.1.2でした。
現在は、2021/6/30 に公開された2.1.4が最新版です。
 ![androidStudio (4) .png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/97388861-d045-b5be-1b82-dfe5985935f0.png)

# 4.Githubからのサンプルアプリケーションダウンロード

Githubからサンプルアプリケーションをダウンロードします。
![androidStudio (10).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/e5ac7b6c-6588-b855-b957-77cc61e7f71a.png)

ダウンロードしたファイルを解凍して、C:\Users\<UserName>\AndroidStudioProjectsAndroid Studioのディレクトリに展開します。
![androidStudio (12).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/6b52fe82-8611-3d79-d950-ffa364631bdc.png)

Android Studioを起動して、「Open an Existing Project」を選択します。
![androidStudio (11).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/079199a8-b616-f1e4-05d7-907874372aae.png)

samplesフォルダにサンプルアプリから、「AuthenticatorDemo」を選択し、「OK」ボタンをクリックします。
![androidStudio (13).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/13b54d96-1f7e-f077-e57d-a0cad5a079bb.png)

各アプリケーションには、Verify SDKが配置されていないため、SDKファイル(VerifySdk.aar)を配置します。
Show in Explorerメニューから、VerifySdkフォルダを開きます。
![androidStudio (14).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/e7ad65b4-8592-a517-bb4e-bd8edb10bc41.png)

各フォルダにダウンロードしたSDKファイル(VerifySdk.aar)をコピーします。
![androidStudio (15).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/78366a85-a50b-63ad-bf57-3fb12b65a957.png)


# 5.AndroidデバイスをUSB接続する

AndroidデバイスをWindowsPCに接続して利用するためには、事前に2つの設定を行います。

- 1.Androidデバイスをネットワークに接続しておく。
- 2.Androidを開発者モードにする
 - 設定メニュー -> デバイス情報 -> ビルド番号を7回タップする。
- 3.開発者向けオプションで、USBデバッグを有効にする。
 - 検証で利用したデバイスでは、設定メニュー -> システム -> 詳細設定 -> 開発者向けオプション -> USBデバッグ　の項目を有効化する。
- 

|2.開発者モード |3.USBデバッグ有効化 | 
|---|---|
|![androidStudio (17).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/cda0003a-e3bf-e53d-97ba-2d94c89a29e6.png)|![androidStudio (18).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/fca904a7-953b-cc07-9960-1748ee42d7e9.png)![androidStudio (19).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/b8cf3fbc-e902-267d-4321-33162672b29c.png)|

# 6.Android Studioからアプリを起動する

Android Studioで接続したデバイスが認識されています。(Sony SOV37と表示されている箇所です。）
Runボタンをクリックして、アプリを実行します。

![androidStudio (20).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/9ac87086-5ddc-ee89-2081-dd4fa9990d79.png)

Androidにアプリがインストール/起動できました。
QRCodeを読み取るアプリのため、カメラが起動した形でアプリが起動しました。

<img width="50%" alt="androidStudio (21).png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/678692/776d8dda-977f-d105-82d5-990233b29670.png">

# 最後に
Android Studio と IBM Security Verify SDKを使って、サンプルアプリ(Authenticator Demo)が起動するところまでご紹介しました。
次回は、実際にアプリの動作を確認していきます。
[Android Studio と IBM Security Verify SDKをはじめて触ってみる②](https://qiita.com/fitz/items/baadc466055e9dbd00ef)