カテゴリー: Android

Windows10環境でAndroid Studio 4を使用して、Androidアプリを勉強しています。何か簡単なアプリを作って公開出来たらと思います!

  • AndroidアプリにFirebaseを導入する手順!SDK追加やSHA-1登録も解説

    AndroidアプリにFirebaseを導入する手順!SDK追加やSHA-1登録も解説

    FirebaseプロジェクトはGoogleが提供するサービスの一つです

    このFirebaseを利用して、アプリのユーザを管理(認証)するようにしたいので、まずは、Firebaseの導入方法について勉強していきます

    ■Firebaseを使ってみる

    まずは、Firebaseを利用するために、Firebaseにアカウントを作成します

    ※Googleアカウントを所有していることを前提とします

    ・Firebaseへログイン

    1.サイトへ移動

    まずは、Firebaseのサイトへ移動して、画面の中央左側にある「使ってみる」ボタンをクリックします

    ※既に登録済みの人は、右上の「コンソールへ移動」や「ログイン」でログインします

    使ってみる
    使ってみる

    2.Googleアカウントでログイン

    お持ちのGoogleアカウントでログインしてください。

    ※お持ちでない方は、画面下の「アカウントを作成」から作成してください

    Googleログイン
    Googleログイン

    ログインが完了すると、コンソールへ移動します

    ■プロジェクトの作成

    ・コンソール画面から作成

    1.「プロジェクトを作成」をクリック

    コンソール画面から「プロジェクトを作成」ボタンをクリックします

    Firebaseへようこそ
    Firebaseへようこそ

    2.プロジェクト名を付ける

    「プロジェクトの作成(手順 1/3)」でまずは、プロジェクトに名前を付けます

    プロジェクトの作成 (手順 1/3)
    プロジェクトの作成 (手順 1/3)

    えーーーっと、日本語名を付けようとしたら、怒られましたw

    日本語NG
    日本語NG

    使用できるのは英数字、スペース、および次の記号のみです。-!'"

    https://console.firebase.google.com/

    スペースとか入れれるなら、実行ファイルの名前ではない感じ?

    名前を付けてみる
    名前を付けてみる

    プロジェクト名を付けると、下に「一意のプロジェクトID:auth-sample-project-f3080」ってのが表示された

    編集できるみたいだけど、サンプルなので今回はそのまま使います

    「続行」ボタンをクリックします

    3.Googleアナリティクス

    「プロジェクトの作成(手順 2/3)」画面ではGoogleアナリティクスをプロジェクトで使用するかどうかの設定を行います

    Googleアナリティクス
    Googleアナリティクス

    無料で使えるレポートなので、有効に設定します

    「続行」ボタンをクリックします

    4.Google アナリティクスの構成

    「プロジェクトの作成(手順 3/3)」画面では「アナリティクスの構成」があります

    最初は、地域が「アメリカ合衆国」になっているので日本に変更しましょう

    アナリティクスの構成 (デフォルト)
    アナリティクスの構成 (デフォルト)

    一つ目の「Google アナリティクス データの共有にデフォルト設定を使用します。」にチェックが入っています

    これを外すと・・ちょっと内容が変わりました

    データ共有の個別設定
    データ共有の個別設定

    必要に合わせて個別設定を利用してください

    全てチェック
    全てチェック

    今回は、全ての項目をチェックしています

    「プロジェクトを作成」ボタンをクリックします

    5.プロジェクト作成

    プロジェクトを作成してくれるのでしばらく待ちます

    作成中
    作成中

    準備ができたそうです!

    準備完了
    準備完了

    「続行」ボタンをクリックします

    プロジェクトが作成されるとプロジェクト用の画面(ダッシュボード)に切り替わります

    ■アプリの追加

    ・ダッシュボード画面から追加

    ダッシュボード画面下に書かれている通り、プロジェクトにアプリを追加しましょう!

    アプリを追加

    Androidマークをクリックします

    「Android アプリに Firebase を追加」です

    ※参考サイト:「Android プロジェクトに Firebase を追加する
    アプリの登録
    アプリの登録

    ・アプリの登録

    1「Android パッケージ名」を設定します

    Android パッケージ名
    Android パッケージ名

    パッケージ名とはなんだ?

    ヘルプを見るとアプリに設定されている[applicationId]だと教えてくれる

    ※Android Studioを使用したアプリ用のプロジェクト作成は以下を参考にしてください

    マニフェスト:「app/src/main/AndroidManifest.xml」に記載されている[package]と同じですね

    Kotlin
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="net.zesys.authsampleproject" >

    アプリレベルのGradle ファイル「build.gradle」内に記載されていると書いてますね!w

    Kotlin
    android {
        compileSdkVersion 30
        buildToolsVersion "30.0.2"
        defaultConfig {
            applicationId "net.zesys.authsampleproject"
            minSdkVersion 16
            targetSdkVersion 30
            versionCode 1
            versionName "1.0"

    2.アプリのニックネーム

    省略可能なのですが、日本語名を付けておきます

    アプリのニックネーム
    アプリのニックネーム

    特に誰かに見えるわけではないので、管理しやすくするために、わかりやすい名前を付ける感じです

    3.デバッグ用の署名証明書 SHA-1

    こちらも省略可能となっていますが、以下の記載もあります

    Auth で Dynamic Links、Invites、Google ログイン、電話番号をサポートするために必須です。[設定] で SHA-1 を編集してください。

    https://console.firebase.google.com/project/…/overview

    認証方法にGoogleログインを使用しようと考えているので「必須」です

    デバッグ用の署名証明書 SHA-1
    デバッグ用の署名証明書 SHA-1
    ※参考サイト:「こちらのページをご覧ください」

    これちょっと面倒なので、以下のサイトを参考にしてください

    ※参考サイト:「JDK keytool の基本的な使い方 (openssl との対比) – Qoosky」(KeyToolの使い方)
    ※参考サイト:「デバッグ用の署名証明書 SHA-1 の取得方法 – Qiita」(デバッグ用署名証明書の作り方)

    デバッグ用の署名証明書ができたら、「証明書のフィンガプリント:」にある[SHA1]をデバッグ用の署名証明書に貼り付けます

    アプリを登録
    アプリを登録

    「アプリを登録」ボタンをクリックします

    ・設定ファイルのダウンロード

    jsonファイルが作成されますので、ダウンロードします

    設定ファイルのダウンロード
    設定ファイルのダウンロード

    ダウンロードしたファイルを指定の場所「app\google-services.json」へ配置します

    jsonの配置
    jsonの配置

    配置が終わったら「次へ」ボタンをクリックします

    ・Firebase SDK の追加

    次にFirebaseのSDKをアプリに追加します

    Firebase SDK の追加
    Firebase SDK の追加

    画面の手順に従って、以下の2つのファイルを更新します

    • プロジェクト レベルの build.gradle
    • アプリレベルの build.gradle

    1.プロジェクト レベルの build.gradle

    ルートレベル(プロジェクト レベル)の Gradle ファイル 「<project>/build.gradle」 に google-servicesを追加します

    ※classのバージョンは必ず最新のものを設定するようにします

    プロジェクト レベルの build.gradle
    プロジェクト レベルの build.gradle

    2.アプリレベルの build.gradle

    モジュール(アプリレベル)の Gradle ファイル「<project>/app/build.gradle」に 以下を追加します

    • google-servicesプラグイン
    • (旧)firebase-analytics(Google アナリティクス)
    • (新)コア Firebase SDK(Google アナリティクス機能を提供する)

    画面の通り設定するとエラーがでますw

    アプリレベルの build.gradle
    (旧)アプリレベルの build.gradle
    アプリレベルの build.gradle
    (新)アプリレベルの build.gradle 1
    (新)アプリレベルの build.gradle 2

    (旧)このfirebase-analyticsの部分ですが・・バージョンの記載がありません

    (新)Google アナリティクス機能を提供するコアFirebase SDKを指定するように変わっていました(更新:2020/11/01)

    Kotlin
    dependencies {
    //  // add the Firebase SDK for Google Analytics
    //  implementation 'com.google.firebase:firebase-analytics'  // (旧)
    //  // add SDKs for any other desired Firebase products
    //  // https://firebase.google.com/docs/android/setup#available-libraries
      // ...
      implementation 'com.google.firebase:firebase-core:17.0.0'  // (新)
      // Getting a "Could not find" error? Make sure that you've added
      // Google's Maven repository to your root-level build.gradle file
    }

    コメントにもある通り、以下のサイトを確認して、対象のライブラリのバージョンを記載してください

    ※参考サイト「使用可能なライブラリ
    Kotlin
    dependencies {
      // add the Firebase SDK for Google Analytics
    //implementation 'com.google.firebase:firebase-analytics:17.5.0' // (旧)
      implementation 'com.google.firebase:firebase-core:18.0.0'      // (新)
    }

    サイトには「17.0.0」と書かれていましたが、実際には「18.0.0」でした・・w

    3.「今すぐ同期」[Sync now]

    SDKの設定が終われば、「今すぐ同期」を実行します

    今すぐ同期
    今すぐ同期

    同期が終わったことを確認してから、「次へ」ボタンをクリックします

    4.アプリを実行してインストールを確認

    正しく設定が行われたことを確認することができますので、是非とも実施してください

    Android Studioで実行します

    ※Android Studioでのアプリの実行方法は以下を確認してください

    アプリがシミュレータで起動すると、Firebaseコンソールの画面は以下のように、正常に追加されたことを確認してくれます!

    ■最後に

    本当ならば、ユーザ認証のところまで、勉強したかったのですが、導入に結構時間がかかってしまいましたw

    次回は、ユーザ認証して、アプリにログインするところまで作成していきたいですね!

    あ・・今回、Firebaseの勉強予定だったかなw

    ま、その辺は予定変更ということでー

    また、色々と勉強していきます!

    ではでは

  • Android下部ナビゲーションで画面が隠れる?レイアウト修正手順

    Android下部ナビゲーションで画面が隠れる?レイアウト修正手順

    前回、画面上の文字列が中央に配置されていないことを修正しました!

    で、安心していたのですが・・w

    ■違和感です!

    ・activity_main.xml

    今回も違和感は、レイアウトの「activity_main.xml」ですw

    レイアウト
    違和感違和感

    上図の赤く囲った部分を見てもらうとわかるのですが、今回も「nav_host_fragment」のレイアウトで、おかしな箇所があります!

    「nav_host_fragment」のBottomが「nav_view」のTopと制約で接続されています

    でも、画面左側のレイアウトでは、「nav_host_fragment」が画面の下まで伸びています!?

    これが違和感です!

    ・実行してみる

    実行してみても、前回の修正が入っているので、見た目は特に違和感がないです

    実行結果
    実行結果

    そう!今回は、普通では気づきにくいのですー!

    ■原因

    今回は、原因がはっきりしているので、先にお伝えしておきます

    ・match_parent

    原因は先に述べた通り、「nav_host_fragment」が画面の下まで伸びていることが問題です

    つまり、「layout_height」が「match_parent」になっているからです!w

    原因
    原因

    ・修正方法

    「nav_host_fragment」の「layout_height」を「0dp(match constraint)」に変えるだけです

    修正
    修正

    ・確認方法

    修正は単純なのですが、これで何がどう変わったのか、実行しても全くわかりませんw

    というわけで、「layout_height」の違いで何が起きているのか、見ていきます!

    ■fragment_home.xmlを変更する

    ・LinearLayoutにButtonを並べる

    画面一杯を使い切るために、LinearLayoutを使って、Buttonを5つ並べます

    fragment_home
    fragment_home

    ※TextViewを削除したので、ソースからも削除しておきます

    ■「layout_height」の差を確認

    これで画面一杯のButtonが表示されるはず!?

    ・「match_parent」の場合

    5つ目のボタンが下部ナビゲーションに隠れてしまっているのがわかる

    どんなにスクロールを頑張っても5つ目のボタンの全てを見ることはできなかったのである・・

    match_parent
    match_parent

    ・「0dp(match constraint)」の場合

    はぃ!そーいうわけで、言わずとも予測できるでしょうけど・・

    「0dp(match constraint)」にすることで、5つ目のボタンがちゃんと全部表示できるわけです!

    0dp(match constraint)
    0dp(match constraint)

    ■最後に

    余談ですが、もし、前回の修正も今回の修正も行わずに、Buttonを並べると

    こんなに残念な感じになりますw

    残念な
    残念な

    先にも紹介しましたが、前回の修正も併せて、確認してください!

    下部ナビゲーションは、アプリでよく使用されているアクティビティですので、この修正は必ず必要になってきますね!

    次こそ、更新したTextViewを維持する方法について、勉強していきたい!

    もー、違和感はないよね???w

    ではでは

  • Android Fragment ボタンのクリックイベント処理|Kotlinでの正しい実装

    Android Fragment ボタンのクリックイベント処理|Kotlinでの正しい実装

    下部ナビゲーションを利用することで画面(Fragment:フラグメント)が切り替わることは確認できました

    ではフラグメントに配置したボタンを押下した際に、何か処理をさせる方法について、勉強していきます!

    ■フラグメントにボタンを配置する

    前回作成した下部ナビゲーションを利用します

    ・デザイン画面

    1. Buttonをドロップ

    パレットからButton(ボタン)をデザイン画面かコンポーネントツリーにドロップして、ボタンを配置します

    ボタンを配置
    ボタンを配置

    2. 制約エラーを解除

    制約のエラーが出ているので、制約を設定して解除します

    何も考えずに、「Constraint Widget」にある4つの青丸の上と左をクリックしますw

    ボタンが画面上のどこに配置されるのかが設定できるため、制約エラーはなくなります

    制約を解除
    制約を解除

    3. textの修正

    ボタンのtextが固定文字なので、注意されています

    コンポーネント・ツリーのbuttonの右横に出ている注意マークをクリックします

    注意メッセージ
    注意メッセージ

    メッセージが表示されます

    メッセージを下まで確認すると、「修復」ボタンがあります

    『文字列リソースの抽出』と書かれています

    メッセージ2
    「修復」ボタン「修復」ボタン

    「修復」ボタンをクリックするとこんな画面がでてきます

    リソース抽出
    リソース抽出

    何も考えずに、「OK」ボタンをクリックすると、「strings.xml」がこうなります

    strings.xml
    strings.xml

    これからわかるように、先ほどのリソース抽出画面の項目はこうなります

    • リソース名:ボタンのtextを設定するための一意のid
    • リソース値:ボタンのtextに設定する値
    • ソース・セット:登録するリソースグループ(変更不要)
    • ファイル名:登録するリソースのファイル名(変更不要)
    • ディレクトリーにリソースを作成:(変更不要)※面倒なので触れませんw

    ■ボタン押下イベントを作成

    ・間違った方法 (NG)

    1. ボタンにイベントを追加 (NG)

    属性の中に、「onClick」という項目があったので、そこにイベントを追加してみた

    onClickイベント
    onClickイベント

    当然、そんな「onButtonClick」のメソッドなんて作ってないから、エラーが表示されたので、メッセージを見てみます

    ボタンイベントのエラーメッセージ
    ボタンイベントのエラーメッセージ

    英語はわかりませんけど、こんなことを言われています

    • 「onClick」に設定したメソッドは存在しない
    • ‘public void onButtonClick(android.view.View)’が見つからない

    2. 「onButtonClick」を作成 (NG)

    とりあえず、言われるがままに、「onButtonClick」というメソッドを作ってみました

    どこに作ればいいかがわからないので、「NewItemFragment.kt」に作ってみるw

    onButtonClickを作ってみる
    onButtonClickを作ってみる

    デザイン画面を見ると、エラーはなくなっていました!

    エラーがなくなる
    エラーがなくなる

    3. 動作確認してみる (NG)

    これじゃ、ダメなのはわかってるんですけど、実行してみましたw

    画面は出る
    画面は出る

    ボタンを押すと・・

    停止する
    停止する

    この「onClick」ではダメだということを知っていながらやってみた!

    というわけで、「1. ボタンにイベントを追加」からやり直しますので、以下を削除しておきましょうw

    • 属性の「onClick」イベントの削除
    • コードの「onButtonClick」メソッドの削除

    ・正しい方法 (OK)

    やるべきことは以下の3つになります

    • Buttonオブジェクトの取得
    • ButtonのsetOnClickListenerを作成
    • ボタン押下時の処理を作成

    1. Buttonオブジェクトの取得

    「NewItemFragment.kt」を開き、onViewCreated()メソッドの中でボタンを取得します

    Kotlin
    class NewItemFragment : Fragment(R.layout.fragment_newitem) {
        private lateinit var viewModel: NewItemViewModel
        override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
            super.onViewCreated(view, savedInstanceState)
            viewModel =
                ViewModelProviders.of(this).get(NewItemViewModel::class.java)
            val textView: TextView = view.findViewById(R.id.text_newitem)
            viewModel.text.observe(viewLifecycleOwner, Observer<String> {
                // Update the UI
                textView.text = it
            })
            // ボタンを取得
            val button: Button = view.findViewById(R.id.button)
            // ボタンのリスナーを作成
            button.setOnClickListener {
                // ボタン押下時の処理を呼び出す
                onButtonClick(textView)
            }
        }
        // ボタン押下時の処理
        public fun onButtonClick(view: TextView){
            Log.i("NewItemFragment","onButtonClick")
            // TextViewを書き換える
            view.text = "BUTTONが押された"
        }
    }

    2. ButtonのsetOnClickListenerを作成

    アクティビティ(Activity)でもそうですが、フラグメントでもボタンのイベントを実装するには、ボタンの「setOnClickListener」を使用します!

    3. ボタン押下時の処理を作成

    この関数に渡している引数は自由設計なので、TextViewのオブジェクトを渡して、テキストを「BUTTONが押された」と変更するようにしました

    ※紛らわしいですが、ボタン押下時の処理を「onButtonClick()」メソッドにしていますw

    ■動作を確認する

    ボタンが表示され散る画面に切り替えます

    ボタン押下前
    ボタン押下前

    「BUTTON」をタップします

    ボタン押下結果
    ボタン押下結果

    無事にTextViewが書き換えられました!

    ■最後に

    今回は、フラグメントにボタンを配置して、同じフラグメント内にあるTextViewを更新しました

    次に気になる課題としては以下の2つがあります

    • 別のフラグメントのTextViewを更新するには?
    • 更新したTextViewを維持するには?

    別のフラグメントに切り替えて、再度、同じフラグメントに戻ると、更新したTextViewの内容は、ボタン押下前の内容に戻っています

    当然ですけどねw

    別のフラグメントのTextViewを更新しておいて、フラグメントを切り替えた場合、その更新した内容で表示を維持できていないことには、何もしていないのと同じですからね・・

    その辺りについても次回、勉強していきます!

    ではでは

  • Android下部ナビゲーションの隙間を修正!テンプレートのずれを直す

    Android下部ナビゲーションの隙間を修正!テンプレートのずれを直す

    ふと、下部ナビゲーションのテンプレートを見直していたら、なんとなく、違和感を感じたw

    ■違和感です!

    ・fragment_home.xml

    画面の真ん中辺りに、TextViewがいますよね?

    レイアウト
    レイアウト

    ・実行してみる

    実行すると、なんとなく、画面中央よりも下に「This is home Fragment」がいますよね???

    実行結果
    実行結果

    ■試してみる

    ・TextViewを変更してみる

    TextViewに以下の変更を加えてみた

    • layout_heightを0dp
    • layout_marginTopを0dp
    • backgroundに色を塗る
    TextViewを変更
    TextViewを変更

    ・再実行

    「fragment_home.xml」は全面色が塗られているのに、実行したら上の方に隙間ができていた!?

    上に隙間がある
    上に隙間がある

    ■アクティビティのレイアウト

    ・activity_main.xml

    フラグメントは全面を使っている!ということは、問題は「activity_main.xml」にあると簡単に推測できるw

    activity_main.xml
    activity_main.xml

    既に隙間がある!w

    って、これは、「Home」って書いてある下図の赤枠のとこじゃないの!?

    隙間の正体は?
    隙間の正体は?

    と思ったんだけど、「activity_main.xml」の画面レイアウトでは、この部分が描画されていない!(下部ナビゲーションは描画されているのに・・)

    ・コンポーネント・ツリー

    確かに、nav_host_fragment<fragment>はhome同様に色が塗られているが、上が開いてて、下が画面の最下部までになっている!?

    コンポーネント・ツリー
    コンポーネント・ツリー

    すっごい違和感w

    containerを見ると、全画面になっているんだけど・・

    属性のところに、「paddingTop」に「?attr/actionBarSize」という何やら妙なものが!?

    paddingTop
    paddingTop

    ・actionBarSizeとは・・

    間違いなく、これの高さだよね・・?

    ActionBar
    ActionBar

    これの表示エリア分を開けておきました!ってことなんだろうけど・・

    要らないみたいですwww

    ■修正してみる

    ・paddingTopを消す

    属性から「paddingTop」を削除します

    「activity_main.xml」の画面レイアウトの全体がnav_host_fragment(中身はfragment_home.xml)で最上部まで使われましたね!

    paddingTopを消す
    paddingTopを消す

    ■実行してみる

    ・修正完了

    思った通りだったw

    修正完了
    修正完了

    ・修正前と比べてみる

    念のため、修正前と修正後を同じレイアウトで比べてみる!

    修正前
    修正前
    修正後
    修正後

    ・・微妙だけど、治ってるよね!w

    ■最後に

    まともに動かないサンプルとか、公式に配らないで欲しいですよねwww

    ま、よい子は、彼らを信じない方が良いことに、気が付いているはずです!

    公式のサンプルなんだから、自己満足で終わらないで、しっかりデバッグして、正しいものを配布して欲しいと思うわけで・・w

    ではでは

  • Android下部ナビゲーションの画面追加手順!Kotlinでの遷移方法

    Android下部ナビゲーションの画面追加手順!Kotlinでの遷移方法

    Androidアプリの作成に向けて、よく使いそうなアクティビティをサンプルにして、勉強をしていきたいと思います!

    記事が長くなったので、3ページに分けています!

    ■下部ナビゲーション

    Android Studio 4.x.xには、開発者のためにいくつかのテンプレートが予め用意されています

    その中の「下部ナビゲーション・アクティビティ」を使用して、以下の内容を勉強していきます!

    • 新しいナビゲーションボタンの追加方法
    • 新しい画面(フラグメント:Fragment)の追加方法

    左の下部ナビゲーションのデフォルト画面から、右のような画面に修正しようと思います!

    下部ナビゲーション
    下部ナビゲーション

    画面を確認する
    修正後のイメージ

    ・テンプレートを選択

    下部ナビゲーションのお勉強ですから、当然、「下部ナビゲーション・アクティビティ」を選択して、「次へ」行きましょう!

    テンプレート選択
    テンプレート選択

    ・プロジェクトの構成

    プロジェクトの構成画面は、以下の構成です

    • 名前…わかりやすい名前にしましょう
    • 固有のパッケージ名…お試しならデフォルトで大丈夫
    • 保存先…これもデフォルトでよいです
    • 開発言語…お好みで(当サイトはKotlin)
    • SDKバージョン…API 16がオススメ
    プロジェクトの構成
    プロジェクトの構成

    「プロジェクトの構成」画面の詳しい説明は、以下の記事で記載していますので、そちらをご確認ください

    ・プロジェクトのメイン画面

    画面イメージが表示されています

    プロジェクトメイン画面
    プロジェクトメイン画面

    まずは、テンプレートを使ってプロジェクトを作成した場合の標準的な動作をシミュレータを使って確認してみます

    ・標準動作を確認

    以下の動画で、Android Studioのテンプレート「下部ナビゲーション・アクティビティ」の標準動作が確認できます

    1. 下部のナビゲーションボタンをタップする
    2. フラグメントが切り替わる
    3. 画面中央のメッセージが変化する
    4. 戻るボタンでHomeに戻る

    これで下部ナビゲーションの動作は分かったと思います

    では、これをベースにして、以下の項目を新規に追加する方法を記載します

    • ナビゲーションボタン
    • 画面

    ■新しいナビゲーションボタン

    ・リソースファイル

    プロジェクトツリーにある「app/res/menu/bottom_nav_menu.xml」を開きます

    ・デザイン画面

    標準動作で見た画面のイメージとは異なるイメージの画面が開きますが、これがナビゲーションボタンをデザインする画面です

    デザイン画面
    デザイン画面

    デザイン画面を使ってナビゲーションボタンを追加していきます

    デザイン画面で行うことは大きくは以下の4つです

    • メニューにアイテムを追加する
    • idを設定する
    • タイトルを設定する
    • アイコンを設定する

    【デザイン画面のレイアウトを変更する】

    デザイン画面を使いやすくするために、プロジェクトツリーを隠して、以下の3つの画面を表示します

    • コンポーネント・ツリー
    • パレット
    • 属性
    デザイン変更
    デザイン変更

    ・手順

    1. パレットから「Menu Item」を選択する

    新しいナビゲーションボタンを追加するのですが、オブジェクト的には、ボタン(Button)ではなく、メニューアイテム(Menu Item)になります

    2. コンポーネント・ツリーにドラッグ&ドロップで追加する

    Menu Itemを追加
    Menu Itemを追加

    コンポーネント・ツリー内のメニューアイテムをドラッグ&ドロップすることで、ナビゲーションボタンの順番を変更することもできます

    3. idを付ける

    idを付ける
    idを付ける

    idはプロジェクト内におけるオブジェクト固有の名前です

    他のナビゲーションボタンと同様に「navigation_」を接頭語にして、ここでは「navigation_newitem」と名付けます

    4. タイトルを変更する

    タイトル変更
    タイトル変更

    タイトルには「@string/title_newitem」と設定します

    これは、文字列定義ファイル(strings.xml)から「title_newitem」というidに設定された文字列を取得することを意味します

    現在は、まだ定義されていないため、シンボルが見つからないという内容のエラーが発生した状態で、タイトル入力枠が赤色になっています

    5. タイトルの文字列定義を作成する

    文字列定義を作成
    文字列定義を作成

    プロジェクトツリーから「app/res/values/strings.xml」を開きます

    XML
    <resources>
        <string name="app_name">Bottom Navigation Test</string>
        <string name="title_home">Home</string>
        <string name="title_dashboard">Dashboard</string>
        <string name="title_notifications">Notifications</string>
    </resources>

    直接コードを修正することもできますが、あえて・・右上にある「エディタを開く」でエディタでの編集をやってみます

    エディタを開く
    エディタを開く

    エディタ内の左上の「+」をクリックして、Keyの追加を行います

    Keyの追加
    Keyの追加
    • キー:title_newitem
    • デフォルト値:NewItem
    • リソース・フォルダ:app/src/main/res (変更不要)
    新しい文字列
    新しい文字列

    エディタを閉じて、「strings.xml」を見ると新しく「title_newitem」が追加されていることがわかります

    XML
    <resources>
        <string name="app_name">Bottom Navigation Test</string>
        <string name="title_home">Home</string>
        <string name="title_dashboard">Dashboard</string>
        <string name="title_notifications">Notifications</string>
        <string name="title_newitem">NewItem</string>
    </resources>
    タイトル追加完了
    タイトル追加完了

    「strings.xml」を閉じて、デザイン画面に戻ると、エラーがなくなっています

    6. アイコンを設定する

    アイコン設定
    アイコン設定

    iconには「@drawable/ic_newitem_black_24dp」と設定します

    これは、画面上に描画するグラフィック(app/res/drawable)から「ic_newitem_black_24dp」というidに設定されたグラフィックを取得することを意味します

    現在は、まだグラフィックが用意されていないため、エラーが発生した状態で、iconの入力枠が赤色になっています

    7. drawableリソースを追加する

    プロジェクトツリーから「app/res/drawable」を選択し、右クリックメニューの[新規] – [Drawable リソース・ファイル]を選択します

    新しいリソースファイル
    新しいリソースファイル

    新しいリソースファイルを以下で設定します

    • ファイル名:ic_newitem_black_24dp.xml
    • ルート要素:vector
    • ソース・セット:main (変更不要)
    • ディレクトリー名:drawable (変更不要)
    アイコンリソース
    アイコンリソース

    とは言え、アイコンの作り方はよくわかっていないので・・

    8. アイコンを作ってもらうw

    他所からアイコン画像を貰ってきて、それをリソースファイルに変換しようと思います!w

    【アイコン画像を取得する】

    GoogleさんのMaterial Designのサイトからsvg形式のファイルがダウンロードできますので、まずは、それを貰ってきましょう!

    参考サイト:Google Material Design
    【svg形式からDrawableに変換する】

    取得したsvgファイルをVectorDrawable形式に変換してもらいましょう!

    参考サイト:Android SVG to VectorDrawable
    【既存のアイコンからVectorDrawableを作る】

    各サイトの使い方は、参考にしたサイトに載っているので、ここでは詳しく説明しません

    参考サイト:既存のアイコンからVectorDrawableを作る

    9. アイコンを登録する

    上記サイトを利用して、VectorDrawable形式に変換したファイルの内容を作成した「ic_newitem_black_24dp.xml」に貼り付けます

    アイコン登録完了
    アイコン登録完了

    こんなXML形式のリソースファイルが出来上がります

    XML
    <?xml version="1.0" encoding="utf-8"?>
    <vector xmlns:android="http://schemas.android.com/apk/res/android"
        android:width="24dp"
        android:height="24dp"
        android:viewportWidth="24"
        android:viewportHeight="24">
    
        <path
            android:fillColor="#FF000000"
            android:pathData="M20,4H4C2.89,4,2.01,4.89,2.01,6L2,18c0,1.11,0.89,2,2,2h16c1.11,0,2-0.89,2-2V6C22,4.89,21.11,4,20,4z M8.5,15H7.3 l-2.55-3.5V15H3.5V9h1.25l2.5,3.5V9H8.5V15z M13.5,10.26H11v1.12h2.5v1.26H11v1.11h2.5V15h-4V9h4V10.26z M20.5,14 c0,0.55-0.45,1-1,1h-4c-0.55,0-1-0.45-1-1V9h1.25v4.51h1.13V9.99h1.25v3.51h1.12V9h1.25V14z" />
    </vector>

    これでエラーがとれて、ナビゲーションボタンの追加が完了しました

    ナビゲーションボタン追加完了
    ナビゲーションボタン追加完了

    ・コード画面

    「bottom_nav_menu.xml」のコードを確認すると、以下のようになっています

    XML
    <?xml version="1.0" encoding="utf-8"?>
    <menu xmlns:android="http://schemas.android.com/apk/res/android">
    
        <item
            android:id="@+id/navigation_home"
            android:icon="@drawable/ic_home_black_24dp"
            android:title="@string/title_home"/>
        <item
            android:id="@+id/navigation_dashboard"
            android:icon="@drawable/ic_dashboard_black_24dp"
            android:title="@string/title_dashboard" />
        <item
            android:id="@+id/navigation_notifications"
            android:icon="@drawable/ic_notifications_black_24dp"
            android:title="@string/title_notifications"/>
        <item
            android:id="@+id/navigation_newitem"
            android:icon="@drawable/ic_newitem_black_24dp"
            android:title="@string/title_newitem" />
    
    </menu>

    コードからもわかるように、操作した内容がそのままXMLファイルに作成されています

    • メニューにアイテムを追加する
    • idを設定する
    • タイトルを設定する
    • アイコンを設定する

    ここまで作成すると実行してもエラーにならないので、シミュレータで確認してみましょう

    ・画面を確認する

    画面を確認する
    画面を確認する

    下部ナビゲーションに新しいNEWボタンが増えていることがわかりますね!

    ただし、これはボタンを置いただけですので、ボタンをタップしても何もおきません・・

    さて、次は、新しい画面を追加して、実際に追加したNEWボタンをタップして、新しい画面が表示されるところまでやりましょ!

    ページ: 1 2 3

  • Android Studioプロジェクト作成の手順!エミュレータの設定も解説

    Android Studioプロジェクト作成の手順!エミュレータの設定も解説

    インストールも終わって、日本語化も終わった!

    さー!次は、開発環境として、正しく動作することを確認しましょー

    長くなったのでページを割っています

    インストール方法は、以下の記事を確認してください

    ■新規プロジェクトの作成

    ・起動メニュー

    Android Studioを起動すると、以下の起動メニューが表示されます

    起動メニュー
    起動メニュー

    ※一度プロジェクトを作成すると、前回開いたプロジェクトを自動で開いてくれる設定があるようです

    ・新規プロジェクト

    「新規 Android Studio プロジェクトの開始」をダブルクリックすると、以下の「新規プロジェクトの作成」画面が表示されます

    新規プロジェクトの作成
    新規プロジェクトの作成

    ・テンプレート選択

    通常のよくあるサンプルでは、「Hello World」を作成するので、シンプルなテンプレートを選択することです・・が!

    今回は、実際にエミュレータでどのように動くのか、そしてその実装内容も勉強していくため、複雑そうな以下のテンプレートを選択します

    • テンプレート:「ナビゲーション・ドロワー・アクティビティー」
    ナビゲーション・ドロワー・アクティビティー
    ナビゲーション・ドロワー・アクティビティー

    「次へ」ボタンをクリックします

    ※一般的には「Android Studio」で作成されるプロジェクトの構成を知るためにも、ベーシックなテンプレートを選択することをオススメしますw

    ・プロジェクト構成

    「プロジェクトの構成」画面が開きます

    プロジェクトの構成
    プロジェクトの構成

    以下の項目が設定できます

    • 名前:プロジェクト名
    • パッケージ名:一意のアプリケーション ID (※要注意)
    • 保存ロケーション:保存先フォルダ (新規のフォルダを作成)
    • 言語:開発言語を選択 (Kotlin、Java)
    • 最小 SDK:使用するSDKの選択
    • Use legacy android.support libraries:昔のライブラリを使うかどうか

    詳細な説明・・・的なものを記載しますw

    – 名前:プロジェクト名

    アプリケーションの名前ですので、実行ファイル名(「~~.exe」的な)とは違うようです

    アプリケーションのプロジェクト名なので、バージョン管理をソース管理ツールを使わずに管理する場合は、バージョンも記載して良いと思います

    ※管理方法

    個人的な見解ですが、保存先にも関連しますので、プロジェクト管理方法について記載します

    理想的なプロジェクトの管理方法という点では、以下の観点でフォルダをネストさせておけば、ソース管理とバージョン管理ができます

    1. プロジェクト管理フォルダ(カレントフォルダ:AndroidStudioProjects)
    2. アプリケーション名フォルダ
    3. バージョンフォルダ(「x.y.z」と付ける場合は「x」と「y」でネスト)

    面倒な場合は、ソース管理ツールの導入を検討してください

    – パッケージ名:一意のアプリケーション ID

    これは世界で一意のIDを付ける必要があります!

    理由は、このIDの説明として、公式サイトに以下の記載があります

    すべての Android アプリには、com.example.myapp などの Java パッケージ名に似た一意のアプリケーション ID があります。この ID によってアプリがデバイスと Google Play ストアで一意に識別されます。アプリの新しいバージョンをアップロードする場合、アプリケーション ID(および署名に使用する証明書)は元の APK と同じでなければなりません。アプリケーション ID を変更すると、Google Play ストアは APK をまったく別のアプリとして扱います。そのため、アプリを公開したら、絶対にアプリケーション ID を変更しないでください。

    https://developer.android.com/studio/build/application-id?hl=ja

    よく使われるのは、ドメインの逆順ですねー

    「com.example.myapp」をドメインで表記するなら、「myapp.example.com」となり、このドメインでアプリ専用のサイトを立ち上げるなどすると判り易いですね!

    しかし、上記にもある通り、Google Play ストアにおいてなので、ドメインを持っていたとしてもGoogle Play ストアにアップした順番で取得できるので、ようは早い者勝ちですねw

    – 保存ロケーション:保存先フォルダ

    プロジェクトをどこに保存するかを設定します

    新規の空のフォルダを選択しないと警告が表示されます

    既存フォルダの警告
    既存フォルダの警告

    先にも記載しましたが、プロジェクト管理の観点からもフォルダの階層などは考慮しておくと良いと思います

    – 言語:開発言語を選択

    開発言語を選択するのですが、インストールした環境では、以下の通り、KotlinとJavaしか選べませんでした

    ※プロジェクトのテンプレートにC++があったんですけどね・・w

    cppファイルも追加できるそうです!ビルドツールがいるし、ライブラリとしてビルドされるようです?

    参考サイト:「プロジェクトへの C / C++ コードの追加  |  Android デベロッパー  |  Android Developers

    ここはやはり、最新のKotlinで開発していきましょー!

    – 最小 SDK:使用するSDKの選択

    最小というのは、Androidのバージョン(だと思われる?)

    古いAndroidに対応させるかと言うことでしょうねー

    この選択を変えていくと以下のパーセンテージが変わっていく!

    新しいバージョンにしかないデバイスや機能を利用するアプリケーションの場合は、この対象バージョンを上げる必要がありますけど、その代わり対応するデバイス(スマホやタブレット等)がそれ程ないですよ!?ということですねー

    ※選択可能なOSプラットフォームとAPIレベル
    PlatformAPI LevelCode Name
    Android 4.014IceCreamSandwich
    Android 4.0.315IceCreamSandwich
    Android 4.116Jelly Bean
    Android 4.217Jelly Bean
    Android 4.318Jelly Bean
    Android 4.419KitKat
    Android 4.4W20KitKat Wear
    Android 5.021Lolipop
    Android 5.122Lolipop
    Android 6.023Marshmallow
    Android 7.024Nougat
    Android 7.1.125Nougat
    Android 8.026Oreo
    Android 8.127Oreo
    Android 9.028Pie
    Android 10.029Q
    Android 10.0+30R
    記事記載当時のAndroid Studio 4.0.1の内容です

    – Use legacy android.support libraries:

    「android.support」で始まる昔のライブラリを使いたい場合は、チェックを付ける必要があります

    詳しいことは、以下のサイトを確認してくださいw

    参照サイト:「サポート ライブラリのセットアップ  |  Android デベロッパー  |  Android Developers

    ・プロジェクト作成

    以上の設定ができたら、「完了」ボタンをクリックすると、以下のようにプロジェクトを作成してくれます

    プロジェクト作成
    プロジェクト作成

    ■動作確認の準備

    エミュレータ「仮想デバイス:AVD (Android Virtual Device)」で動作することを確認したいので、とりあえず動く環境を目指して設定します

    そのために必要なものは以下の2点です

    • プラットフォームに対応したSDK
    • プラットフォームに対応したAVD

    この2点を確認して足りない場合インストールします

    ・SDKを確認

    プロジェクトを開いている場合は[ツール]メニュー、起動メニューからは[構成]の「SDKマネージャー」を選択します

    Android SDK
    Android SDK

    プロジェクト作成時には最小SDKは「Android 4.1」が選ばれていたのに、何故だか、「Android 10.0+ (R)」しかインストール済みではない!?

    更に、画面右下の「パッケージ詳細の表示」をチェック付けてみると!

    パッケージ詳細
    パッケージ詳細

    「Android SDK Platform 30」しか入ってない!・・・w

    んーっと、必要そうなものをインストールしていきましょー

    ・SDKのインストール

    では、他のもインストールしていきます

    ※ここからは、各自の必要なものを選択してください
    SDKのインストール
    SDKのインストール

    まずは、プラットフォームのレベルで必要なAndroidのバージョンを選びます

    わしの場合、Galaxyにインストールされているバージョンと最小バージョンを追加で選んでいます

    • Android 10.0 :Galaxy S9
    • Android 8.0 :Galaxy S7 Edge
    • Android 4.1 :最小バージョン

    そして、「パッケージ詳細の表示」で個別にSystem Imageを選びます

    System Imageについては、以下のサイトを確認してください

    参照サイト:「仮想デバイスの作成と管理  |  Android デベロッパー  |  Android Developers

    一応、わしの選択内容は画像で貼っときますw

    選択基準は、Google Playを使いたいので、「Google Play」の文字が入っているものを選択して「Google APIs」しかない場合はそれを選択しています

    スマホも64bitになってきているので、Atom_64があるものは選択してます

    選び終わったら「適用」ボタンをクリックして、インストールします

    変更の確認
    変更の確認

    インストールするSDKを確認して、「OK」ボタンをクリックします

    コンポーネント・インストーラーが起動して、選択したSDKとソースコードがインストールされます

    「ご使用条件」の画面がでたらライセンス内容を確認して、必要に合わせて「受諾」を選択して「次へ」ボタンをクリックします

    コンポーネント・インストーラー
    コンポーネント・インストーラー

    インストール完了まで待つか、「バックグラウンド」ボタンをクリックして、放置します

    SDKのインストール完了
    SDKのインストール完了

    インストールが完了したら次はエミュレータの確認です!

    ・エミュレータの確認

    プロジェクトを開いている場合は[ツール]メニュー、起動メニューからは[構成]の「AVDマネージャー」を選択します

    仮想デバイスの確認
    仮想デバイスの確認

    最初は、エミュレータ(仮想デバイス)がインストールされていないので、「仮想デバイスの作成」ボタンをクリックします

    ・エミュレータのインストール

    「ハードウェアの選択」画面で、カテゴリーを選び、デバイス名を選択して、「次へ」ボタンをクリックします

    ハードウェアの選択
    ハードウェアの選択

    「システム・イメージ」画面でシステムイメージを選択し、「次へ」ボタンをクリックします

    ※ダウンロードできていない場合は、ここでダウンロードしてください

    システム・イメージ
    システム・イメージ

    「Android 仮想デバイス (AVD)」画面でAVD名を設定して、「完了」ボタンをクリックします

    Android 仮想デバイス (AVD)
    Android 仮想デバイス (AVD)

    「仮想デバイス」画面に追加した構成が追加されます

    仮想デバイスの追加
    仮想デバイスの追加

    ■動作確認

    準備が整ったので、実際に実行してみましょう

    ・実行

    先程作成したプロジェクトを起動すると、画面上に以下のツールバーが表示されていると思います

    ツールバー
    ツールバー

    赤く囲った緑三角の「実行(Run)」ボタンをクリックします

    ・エミュレータの起動

    ツールバーで選択された「Pixel 2 API 29」のエミュレータが起動します

    エミュレータの起動
    エミュレータの起動

    ・アプリケーションの実行

    しばらくするとPixel2が起動して、その後にアプリケーションが実行されます

    アプリケーションの実行
    アプリケーションの実行

    ・アプリケーションの動作確認

    実際にナビゲーションが動作するのか、動かしていましょう!

    アプリケーションの動作確認
    アプリケーションの動作確認

    無事に動かくことが確認できました!

    ■最後に

    長かった・・w

    AVDのデバイスはGoogleの「Pixel」ばっかりなのかと思ったが、「Galaxy」の名の付くデバイスもあった!

    あれは、愛しのGalaxyなのだろうか!?w

    今度試してみまーっす!

    ・追記【2020/11/14】※要注意

    Databindingを使用する場合、パッケージ名に大文字を使用するとエラーになります!

    そのため、アプリケーションIDには、大文字を使わないようにしましょう!

    ではでは

  • Android Studio日本語化の手順!PleiadesでUIを変更する方法

    Android Studio日本語化の手順!PleiadesでUIを変更する方法

    英語はわからんのじゃー!w

    というわけで、前回インストールを行った「Android Studio 4.0.1」を日本語化してみようと思います

    ※「Android Studio 4.0.1」のインストール方法は以下を参照してください

    ※ Android Studio 2020.3.1でも日本語化を確認しました(2021/08/12)

    ※ 「Pleiades」 の2021/12/04版でも 2021/10/11リリースの2020.3.1 Patch 3に対して日本語化できていることを確認しています(2021/12/07)

    Android Studio Arctic Fox | 2020.3.1 Patch 3
    Android Studio Arctic Fox | 2020.3.1 Patch 3

    ※このページは古い記事ですので、最新バージョン「2021.2.1 Patch 2」の日本語化は以下を参照してください(2022/08/18)

    ■日本語化前

    「Android Studio」を起動した際に表示されるメニュー画面を見て頂くと判る通り、英語である・・これはわからんw

    英語のメニュー
    英語のメニュー

    ■環境

    まずはPCの環境について、おさらいです!

    開発環境
    開発環境

    ご覧の通りですが、以下の環境にて、開発を行っていきます!

    • OS:Windows 10 Pro (64bit)
    • CPU:Intel(R) Core(TM) i7
    • RAM:24.0GB

    ■日本語化プラグイン – Pleiades

    以下のサイトから日本語化プラグインの「Pleiades」をダウンロードしてくる

    ①サイトへ移動

    サイト:「Pleiades – Eclipse、IntelliJ などの日本語化プラグイン

    サイトの先頭は、Eclipseのメニューが並んでいるので・・

    少し下がったところにある「Pleiadesプラグイン・ダウンロード」にあるOSにあったボタンをクリックします

    Pleiadesプラグイン・ダウンロード
    Pleiadesプラグイン・ダウンロード

    ②「pleiades-win.zip」をダウンロード

    画面が変わったら、自動的にダウンロードが始まります

    ※始まらない場合は、画面に表示されている「pleiades-win.zip」のリンクをクリックします

    ダウンロード画面
    ダウンロード画面

    ③「pleiades-win.zip」を解凍する

    ダウンロードした「pleiades-win.zip」を解凍してください

    zipファイル
    zipファイル

    ④セットアップ開始

    解凍したフォルダ内にある「setup.exe」のショートカットを実行します

    セットアップ
    セットアップ

    ⑤セットアップウィザード

    「Pleiades 日本語化プラグインのセットアップ」画面が表示されます

    セットアップウィザード
    セットアップウィザード

    ⑥アプリケーションの選択

    「選択」ボタンをクリックして、インストールされている「Android Studio」(studio64.exe)を選択します

    アプリケーションの選択
    アプリケーションの選択

    Pleiadesの配置先や追加ファイルの場所は自動で表示されます

    ⑦日本語化する

    「Android Studio」(studio64.exe)の選択が終われば、「日本語化する」ボタンをクリックします

    セットアップが実行されますので、しばらく待ちます

    ⑧日本語化の完了

    日本語化が終了すると以下の情報画面がでますので、「OK」ボタンをクリックして画面を閉じます

    情報画面
    情報画面

    セットアップウィザードの画面を「終了」ボタンをクリックして閉じます

    終了
    終了

    ■日本語化後

    スタートメニューから「Android Studio」を起動します

    スタートメニュー
    スタートメニュー

    ・日本語化を確認

    メニューが日本語での表記に変わっていますね!

    日本語のメニュー
    日本語のメニュー

    ■最後に

    日本語化プラグインのPleiadesは、Android StudioのようなJavaアプリケーションを日本語化するツールですので、有り難く使用させて頂いています!

    このプラグインの開発者に感謝すると共に、活用してより良いものの製造をしていこうと思います!

    と、いいこと風なことを言って〆ますw

    ではでは

  • Android Studioインストール手順|Windowsの設定とエラー解決法

    Android Studioインストール手順|Windowsの設定とエラー解決法

    突然ですが・・何を作りたいとかも特に決まっていませんが・・

    Androidのアプリを勉強するため、Android Studio(4.0.1 for Windows 64-bit)をインストールしてみましたので、そのインストール手順について記載します

    ■環境

    まずはPCの環境について、記載しますね!

    開発環境
    開発環境

    ご覧の通りですが、以下の環境にて、開発を行っていきます!

    • OS:Windows 10 Pro (64bit)
    • CPU:Intel(R) Core(TM) i7
    • RAM:24.0GB
    • Java:jre1.8.0_31 (JDKでもよい)

    ※Javaがインストールされていることが前提です

     ちなみにわしの環境変数に「JAVA_HOME」はないw

    ■ダウンロード

    まずは、Windows(64bit)に対応したインストーラーをダウンロードします

    ①オフィシャル(?)サイト

    以下のサイトへアクセスします

    ダウンロードサイト:「Android デベロッパー

    ②コンテンツページへ移動

    以下のどちらかをクリックして、「Android Studio」のコンテンツページへ移動します

    • サイトのタイトルバー(?)の「Android Studio
    • メインページの『アプリの開発を始める』にある「Android Studio」の「ダウンロード
    Android デベロッパー
    Android デベロッパー

    ③ダウンロード開始

    「Android Studio」のコンテンツページのトップに「DOWNLOAD ANDROID STUDIO」のボタンがあるのでクリック!

    ※環境に対応したバージョンのインストーラーがダウンロードできるようになっています

    Android Studio
    Android Studio

    記事を記載している当日(2020/08/11)でダウンロードできるファイルは以下の通りです

    • バージョン:4.0.1 for Windows 64-bit
    • ファイル名:android-studio-ide-193.6626763-windows.exe
    • サイズ:871 MB

    ※他の環境向けのインストーラーを取得したい場合は、ページの下の方へ

    「Android Studio downloads」というところに環境毎のインストーラーがダウンロードできます

    Android Studio downloads
    Android Studio downloads

    ④利用規約への同意

    「Android Studioのダウンロード」前に、利用規約に同意しなければ、ダウンロードはできません

    内容をよく読んでから、同意できる場合にのみ、ダウンロードを行います

    利用規約に同意
    利用規約に同意

    ⑤ダウンロード完了

    ブラウザによって、ダウンロード状況の表示は異なります

    ダウンロードするファイルサイズはバージョンや環境によっても異なります

    ダウンロード速度もインターネットへの接続環境によって異なりますので、ダウンロードが完了するまで、しばらく待ちましょう!w

    ダウンロードが完了すれば、ダウンロードフォルダにインストーラーが保存されます

    ■インストール

    ダウンロードが終われば、インストールを開始します

    ①インストーラーを実行

    インストーラー
    インストーラー

    インストーラーを起動すると、インストールイメージのベリファイが行われ、何やらファイルができますw

    インストールイメージのベリファイ
    インストールイメージのベリファイ
    何かのファイルができた

    ※場合により、アクセス許可要求の画面が表示されますので、インストールを行う場合は、「はい」を選択してください

    ②セットアップウィザードの開始

    「Android Studio Setup」の「ようこそ」画面が表示されます

    セットアップウィザードが開始されますので、画面に従いインストールを進めていきます

    ようこそ
    ようこそ

    インストールを進める場合は、「Next」ボタンをクリックします

    ③コンポーネントの選択

    次に「コンポーネントの選択」画面へ遷移します

    コンポーネントの選択
    コンポーネントの選択

    デフォルトで2つとも選択されていますので、そのまま「Next」ボタンをクリックします

    ※「Android Virtual Device」は開発するアプリをテスト実行できる疑似的なAndroidの環境(エミュレータ)ですので、インストールをオススメしますw

    ④インストール場所を選択

    次に「インストール場所」画面へ遷移します

    インストール場所を選択
    インストール場所を選択

    「Android Studio」をインストールするフォルダを選択します

    通常はデフォルトで表示されるフォルダで問題ありませんので、そのまま「Next」ボタンをクリックします

    ⑤スタートメニュー設定

    次に「スタートメニューフォルダ」画面へ遷移します

    スタートメニュー
    スタートメニュー

    特に変える必要はないので、そのまま「Install」ボタンをクリックします

    ⑥インストール中

    インストールが開始されますので、完了するまでしばらく待ちます

    インストール中
    インストール中

    ⑦インストール完了

    ステータスバーが端まで行ったら、インストールの完了です

    インストール完了
    インストール完了

    エラーが出たことはないので、そのまま「Next」ボタンをクリックします

    ⑧セットアップウィザードの終了

    セットアップウィザードが終了しましたので、インストールは完了です

    セットアップウィザードの終了
    セットアップウィザードの終了

    この後、初めての起動時に行う設定がありますので、「Start Android Studio」のチェックを付けたまま、「Finish」ボタンをクリックします

    ※「Start Android Studio」のチェックを外して終了した場合は、スタートメニューから「Android Studio」を起動してください

    「Android Studio」を起動
    「Android Studio」を起動

    ■初回起動設定

    ①セットアップウィザード

    再びのセットアップウィザードの「ようこそ」画面が起動しますw

    セットアップウィザード
    セットアップウィザード

    先程とは異なるウィザード画面ですので、そのまま「Next」ボタンをクリックして進めていきます

    ②インストールタイプ選択

    次に「インストールタイプ選択」画面に遷移します

    インストールタイプ選択
    インストールタイプ選択

    インストール手順を一般的なスタンダードか、細かな設定のできるカスタマイズによるインストールかを選択します

    今回は、初めてのインストールですので、スタンダードを選択して「Next」ボタンをクリックします

    ③UIテーマの選択

    次に「Android Studio」の画面スタイル(UIテーマ)を選択します

    UIテーマの選択
    UIテーマの選択

    お好みで選んで、「Next」ボタンをクリックします

    ※たぶん、いつでも変えれると思っている・・

    ④SDKコンポーネントを選択

    次に「SDKコンポーネント」の選択を行います

    ※「Android Virtual Device – (1.14 GB)」はインストール時に行っているので、ここではチェック不要です

    SDKコンポーネントを選択
    SDKコンポーネントを選択

    コンポーネントはデフォルトの選択のまま「Next」ボタンをクリックします!?

    ※【注意】エラー発生

    画面を見ると以下のエラーメッセージが出て「Next」ボタンが押せなくなっています

    エラーメッセージ
    エラーメッセージ

    ※【原因】

    フォルダパスに「やもす」というASCII文字以外の2バイト文字(漢字、ひらがな、カタカナ、記号)が含まれているのが原因です

    ※【対応】

    対応方法は以下の2つです

    1. 半角アルファベットのユーザーを作成してインストールをやり直す
    2. 半角アルファベットのみのフォルダをセットアップ場所に設定する

    とりあえず、後者の2の方法で進めてみます

    インストール場所を変更
    インストール場所を変更

    適当にフォルダを変更して「Next」ボタンをクリックします

    【2020/08/13 後記】


    後者で進めるとインストールはできるのですが、アプリケーションのテスト環境(エミュレータ)が起動しませんでした

    ユーザを作成するとWindows環境を再構築が必要になったり、メインのユーザと使い分けないといけなくなり、面倒だと思って現在の日本語名のユーザをアルファベットに変えてできないかと調べてみたんですが、結構面倒なようです・・

    やればできるタイプの人は、以下のサイトを参考に頑張ってみてください

    参考サイト:「[AndroidStudio]仮想端末が起動しない件と対応(adbコマンドのログファイル)[ANDROID_SDK_ROOT] – Qiita

    諦めが早い人は、素直に前者の1の方法で、新しいアルファベットのみのユーザを作成して、「Android Studio」のインストールからやり直しましょー!

    そして、無事にエミュレータの起動まで確認できました


    ⑤設定内容の確認

    次に「設定内容の確認」画面でインストールする内容を確認します

    設定内容の確認
    設定内容の確認

    問題がなければ、「Finish」ボタンをクリックします

    ⑥セットアップ中

    印象的にはインストール時よりも時間がかかる感じですが、終わるまで待ちましょう

    セットアップ中
    セットアップ中

    ※途中(後半)でアクセス権限要求が発生する場合がありますので、画面をよく見ておきましょう!「はい」を選択して進めます

    ⑦初回起動設定の完了

    セットアップが完了するとインストール状況のログが表示されます

    初回起動設定の完了
    初回起動設定の完了

    「Finish」ボタンをクリックして初回起動設定の画面を閉じます

    ■最後に

    セットアップ画面を閉じると以下のメニュー画面が表示されます

    これでAndroidアプリの開発が行える環境がインストールできました!

    「Start a new Android Studio project」やサンプルプロジェクトなどを開いて、「Android Studio」を使ってみましょう!

    ・日本語化

    日本語化については、次の記事で記載していますので、そちらをご覧ください

    というところで、今回の記事は終了しますw

    ではでは