Appiumでテストを書くことになり、レイアウトのIDなどを確認するため、久々にUI Automator Viewerを起動してみたところ…
$ uiautomatorviewer
-Djava.ext.dirs=/Users/<UserName>/Android/sdk/tools/lib/x86_64:/Users/<UserName>/Android/sdk/tools/lib is not supported. Use -classpath instead.
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
動かない。
調べてみたところ、Java 11にしたことが原因のよう。
リンクのコメントを参考に以下のようにスクリプトを書いた。
uiautomator() {
JAVA_HOME=`/usr/libexec/java_home -v 1.8` uiautomatorviewer
}
これで画面は起動するようになったものの、今度は画面が何のイベントも受け付けない。
どうやらswt.jar
なるものの新しいバージョンを落とし、Android/sdk/tools/lib/x86_64/
にswt2.jar
として置けば良いらしい。
- 上書きではなく、別名保存
- 4.20をDownloadする(最新の4.24では動かなかった)
これにて解決。無事動くようになりました。