Amazon 初売り

« NRSDK 1.9.1 が出ていたようだ | トップページ | Nreal Light の活用事例の記事が勉強になった »

2022.07.05

scrcpy を導入して .apk ファイルをインストールする手順を省力化しよう

| |コメント (0)

 このエントリーをはてなブックマークに追加

どうも、かげさんです(^^)/
あなたがこの記事を読んでいるのは何回目でしょうか?
初めての方、いらっしゃい!
複数回目の方、再訪問ありがとです(・∀・)

これまでのかげさんのやり方」だと Nreal Light や Nreal Air で動くアプリを作っている時に、以下の操作が出てきます。

  1. Unity で Nreal Light や Nreal Air で動くアプリをビルドし .apk ファイルを作成
  2. PC にスマホを USB 接続
  3. エクスプローラで .apk ファイルをスマホにコピー
  4. スマホで Files アプリから .apk をインストール
  5. スマホから USB ケーブルを外して Nreal Light や Nreal Air を接続
  6. Nebula からインストールした.apk を起動し動作確認

6手順もあります。(´・ω・`)

この操作を簡略化したいのでオープンソースの「scrcpy」を導入します。

「scrcpy」を導入すると Wi-Fi 環境を使って無線でエクスプローラから .apk ファイルをドラッグ&ドロップすることで Android 端末に .apk ファイルをインストールできるようになります。

つまり、2~5の .apk を入れ替えるたびに PC 接続の USB ケーブルと Nreal Light や Nreal Air とつなぐ USB Type-C の接続を切り替える必要がなくなるのです!\(^o^)/

scrcpy 導入により、PC につなぐのは最初だけなので PC 接続中の給電はできなくなるため、事前にスマホは充電しておく必要があります。

まぁ、そこは「処理はスマホ、電力はモバイルバッテリーで Nreal Light 、 Nreal Air を動かす」で紹介したケーブルを使ってモバイルバッテリーからの給電もできるから、Nreal グラス分の給電は、なんとかなるんですけどね。(*^^*)

scrcpy ってどんなソフトなの?

scrcpy は、USB や Wi-Fi 接続された Android 端末の画面を PC で表示・操作できるソフトです。

以下の様なことができます。

Android の画面を PC にミラーリング表示(PCにの大きい画面で表示できる)
Android 端末の画面を PC から操作
Android 端末の画面を録画
・Android 端末に「sndcpy」というアプリをインストールし、パソコンに「VLC media player」をインストールすると音声のミラーリングも可能
・Android 端末と PC の間で、クリップボードのテキストを同期
PC のファイルを Android 端末に転送
.apk ファイルを Android 端末にインストール
・Android 端末側のタッチ操作を可視化する機能
・豊富なコマンドラインオプション

なかなか便利そうです(・∀・)

Android 端末での事前準備

まず、Android 端末で「開発者向けオプション」を有効化する必要があります。

このオプションは標準では「無効化」されていて非表示になっています。

以下、説明にあたって、Sony Xperia 5 Ⅲ SOG05 のスクリーンショットを使っています。
他の機種の場合、設定メニューからの操作が少し違うかもしれません。

Android 端末の「設定」メニューから「デバイス情報」の順にタップして、「デバイス情報」画面の下部にある「ビルド番号」を何回か連続でタップします。

Android 端末によっては「設定」メニューから「システム」-「端末情報」の順にタップして、「端末情報」画面の下部にある「ビルド番号」を何回か連続でタップという操作かもしれません。

USB ケーブル接続時に「USBデバッグを許可しますか?」と表示されたら「許可する」や「OK」などのボタンを選択して USB デバッグを許可して TCP/IP 接続モードにしましょう。これを許可しないと adb コマンドが使えないので注意しましょう。

adb と scrcpy を使ってスマホにアクセス

scrcpy をダウンロードするため、「https://github.com/Genymobile/scrcpy/releases」にアクセスします。

2022/07/03 時点の最新版は、v1.24 です。

下の方にスクロールしていき、Assets のところにある「scrcpy-win64-v1.24.zip」をクリックしてダウンロードします。

scrcpy は、特に堅苦しいインストール作業はなく、.zip ファイルを展開すればすぐに使えます。

「scrcpy-win64-v1.24.zip」をエクスプローラなどで展開します。

この .zip ファイルに Android Debug Bridge(略して adb )が含まれています。

adb は Android SDK の platform-tools に含まれるツールです。( Unity Editor のインストール時にもインストールされています)

このツールを用いると、現在利用可能なデバイス・エミュレータの列挙、シェルコマンドの発行、ファイルの転送などが行えます。

次にPowerShellを起動します。

Windows キー + R でファイル名を指定して実行を開いたら、「PowerShell」と入力します。

scrcpy を展開したフォルダに移動します。

かげさんの場合、F:\Download\Android\scrcpy-win64-v1.24フォルダに展開したので

f:
cd F:\Download\Android\scrcpy-win64-v1.24

PC と Android 端末を USB 接続した状態で下記のコマンドを実行し、Android 端末側の ADB デーモンを TCP/IP 接続モードにする。

.\adb tcpip 5555

5555は、ポート番号です。5555~5585の間の番号を使うので、分かりやすい 5555 を使っています。

この時、必ず最初に「.\」を付けること。
Windows PowerShell は規定では現在の場所からのコマンドを読み込まないので「.\」を付けてやる必要があります。

* daemon started successfully
restarting in TCP mode port:5555

が表示されたら、IP アドレスが確認済みなら Android 端末から USB ケーブルを外して OK です。

error: no devices/emulators found

が表示された場合、事前準備のところに書いた「開発者オプション」の設定を確認してください。

PC と スマホを USB 接続していない場合、接続してください。

その上で PC との USB ケーブル接続時に「USBデバッグを許可しますか?」と表示されたら「許可する」や「OK」などのボタンを選択して USB デバッグを許可して TCP/IP 接続モードにするのを試みてください。

それでもつながらない場合、「パソコンからadbコマンドでスマホに接続するとerror: no devices foundとなる問題解決法 2020」という記事にあるようにスマホの USB ドライバが原因かもしれません。スマホによってドライバのインストール方法が違うため、「スマホの名前」と「USBドライバ」をキーワードに Google や Yahoo! などで検索してみてください。

TCP/IP 接続モードになったら次のコマンドを入力します。

.\adb connect 192.168.….…:5555

192.168.….… は、Android 端末の IP アドレスです。

connected to 192.168.….…:5555

が表示されれば OK です。

.\scrcpy

と入力してscrcpy を起動します。

なお、.\scrcpy と入力するのは、PowerShell の画面で「sc」と入力して「Tab キー」でも OK です。(Tabキーが入力補完のキーなので勝手に補完してくれます)

スマホ画面をミラーリングしたウィンドウが表示されます。

PC 側にミラーリング表示されたウィンドウでクリックすると Android 端末でタップしたことになります。

.apk ファイルの Android 端末へのインストール

.apk ファイルをビルドしたら、できあがった .apk ファイルをエクスプローラから、scrcpy の画面にドラッグ&ドロップします。

scrcpy で表示されている画面の方は変化がありませんが、PowerShell の画面を見ると .apk ファイルがインストールされていることがわかります。

一応、Nebulaが起動していてもインストールはできるようです。

これでかなり作業手順が簡略化されました。

PowerShellを起動して毎回 scrcpy のフォルダに移動するのも面倒だから省力化

エクスプローラの右クリックメニュー「新規作成」-「ショートカット」を選択します。

項目の場所として「%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe」を指定して「次へ」ボタンをクリック。

ショートカットの名前は「ps」を入力して「完了」ボタンをクリック。

出来上がったショートカット「ps」を右クリックメニュー「プロパティ」で開く。

作業フォルダに scrcpy の .zip を展開したフォルダを指定して「OK」ボタンをクリック。

環境変数:Path が通っているところに格納するか、下記の設定を行う

「スタートメニュー」-「設定」-「システム」-左下「詳細設定」-右側「システムの詳細設定」で「環境変数」ボタンをクリック

ユーザの環境変数のPathを選択して「編集」ボタンをクリック

「新規」ボタンをクリック。

一覧に入力可能になるので、先程ショートカットを作成したフォルダを指定する。

「OK」ボタンをクリック。

「OK」ボタンをクリック。

これで Windows キー + R キーでファイル名を指定して実行を開いた時に「ps」と入力して Enter キーを押すと PowerShell が scrcpy を展開したフォルダが現在フォルダになって起動する。

TCP/IP 接続から USB 接続に戻す場合

PowerShell の画面で下記のコマンドを入力します。

.\adb usb

まとめ

scrcpy は堅苦しいインストールは不要で .zip ファイルを展開すると使えます。

展開すると Android Debug Bridge(略して adb )も含まれていて、現在利用可能なデバイス・エミュレータの列挙、シェルコマンドの発行、ファイルの転送などが行えます。

PowerShellを起動して下記のコマンドを使うとAndroid 端末側の ADB デーモンを TCP/IP 接続モードにできます。

.\adb tcpip 5555

次のコマンドで Android 端末と TCP/IP 接続します。

.\adb connect 192.168.….…:5555

192.168.….…は Android 端末のIPアドレス

.\scrcpy

で scrcpy を起動します。

.apk ファイルをビルドしたら、できあがった .apk ファイルをエクスプローラから、scrcpy の画面にドラッグ&ドロップします。

これで .apk ファイルを Android 端末にインストールできます。

カテゴリ追加

<ルール7>適用でカテゴリを追加します。

  • カテゴリ「PowerShell」
    PowerShellに関わる記事につけます。

ここまではOKだ


 このエントリーをはてなブックマークに追加

| |コメント (0)

このエントリーへのリンク

このエントリーのリンクを入れるHTML:

コメント

このブログの新着コメントをRSSリーダに登録する為のxml




←名前とメールアドレスは必須です。
URLも記入すれば、URLのみが公開されます。
メールアドレスのみですと、メールアドレスが公開されてしまいますので、御注意ください。

↓コメント本文では、「a href」「b」「i」「br/」「p」「strong」「em」「ul」「ol」「li」「blockquote」「pre」のタグが使えます。絵文字をクリックすると、本文にタグを挿入できます。