Android Studioでトラブる
今週は、先週購入したM4 MacBook Airの性能なんかを計測しつつ、MasterReversi Ver1.5.8関連ソフトの更新作業を行ってきたのだが、今日は、その最後となるAndroid版用の作業で、また、Android Studioでトラブった。
このブログの長年の読者であれば、作者がAndroid Studioの出来の悪さについて、何度も何度も何度も、書いてきていた事を覚えている筈だ。
多分、最初に書いた問題は、メニュー項目の異常さで、Windows / macOS / Ubuntu用の開発環境として、Visual Studio / XCode / Eclipseを10年以上は使ってきていた作者的には、Android Studioを使い始めた時に、そのコマンドの異常さに嫌気がさした訳だ。
具体的には、最新バージョンにも残っている「Join Lines」なんて項目は、作者の様に、CP/M80の時代からパソコンを使ってきている人間なら、「昔のエディタには、こんな項目もあったなあ」、と、思う事になる筈なのだが、今時のエディタには、普通は、こんな項目はない筈だ。
もっとも、上記を書いてから、ネットで検索してみると、VS Codeにも、同じ項目はあった様なので、普通はない筈だ、というのは疑わしくなったのだが、それでも、作者が上記のメニュー項目を見て、ネガティブに捉えたのは、似た様な、別に無くても良さそうな機能が山盛りで、普通に使おうとした場合に必要になる項目を探すのが大変だったからだ。
まあ、Android Studioは、エンジニア向けのツールだから使えない素人はお断り! といった感じで開発している、と、思われるのだが、作者の様に、Android版の開発に消極的な人間からしてみると、1年から数年に一度しか使わない訳なので、その度に、ネットを検索して、内蔵されている様々なツールをアップデートして、ビルドできない問題を解決するのには、嫌気がさす訳だ。
と、言う事で、今日も、Android Studioで、最新版のMasterReversi Ver1.5.8相当の変更を入れようとしてビルドしてみていると、ビルドエラーが出たりしたので、色々とAndroid Studioを弄ったりしていたのだが、埒が開かなかったので、インストールしていたバージョンを削除して、最新バージョンをゼロからインストールしなおした。
それでも、最初は上手くビルド出来なかったのだが、Gladle のバージョンを手動でアップし、インストールされなくなっていたCMakeを追加し、xmlファイルに記述されている使用するツールのバージョンなんかを設定し直す事で、やっと、ビルド可能な状態に戻せた。
最新バージョンにインストールし直したので、来年くらいまでは、普通に使える事を祈ったりしている今日この頃だ。
ちなみに、オープンソース系のソフトしか使わない人は、Android StudioがJavaやGladleのバージョンが更新されたりする度に、内部ツールなんかが対応できなくなって動作しなくなっていたとしても、最新版をどこかからダウンロードしてアップデートすれば何とかなるので、やっぱりオープンソース最高! みたいに思っているのかもしれない。
しかし、Visual StudioだとかXCodeを使っている人たちから見れば、そんなツールは異常だ。
何故なら、Visual StudioだとかXCodeは、メーカーが、新しいバージョンを作成すると、そのバージョンにアップデートするだけで、問題なく利用できる様になるからだ。
更に言えば、Visual StudioやXCodeの場合、10年くらい前に開発していたソース環境を普通に最新環境に変換しつつビルドしてくれる。
それに比べて、Android Studioは、数年放置していると、自らの内部ツールが最新環境で動作しなくなったりしてくるので、普通に動作させるためには、内部ツールのバージョンを、適切に! アップデートしなければならないし、自製ソフトのソース環境についても、そのxmlファイルなんかにある設定は、手動で自分で変更しなければならない。
と、言う事で、Android Studioはメジャーなビルドツールの中では、飛び抜けて使いづらいツールになる。
なので、Androidアプリしか作っていないプログラミング初心者は、もし、Android Studioを使いこなせなくてアプリをビルドできなくても、あまり悲観する必要はないかもしれない。
もっとも、それでは自製アプリが作れないじゃないか! と、いう事で困る人は、Visual Studioを使って、Windows用にアプリを作れば良いかもしれない。
Windowsアプリはスマホで動かせないじゃないか、という人は、XCodeを使ってiPhoneアプリを作るか、Webアプリを作って、レンタルサーバーなんかで動作させれば良いかもしれない今日この頃だ。
まあ、運良く、Android Studioが動作してくれた人の場合、Androidアプリを作れば良いかもしれないのだが・・・

