●Android Studio 3.4における「Attributes」ペインの違いについて
2019年4月16日にリリースされたAndroid Studio 3.4では、本書で画面キャプチャした3.3と比べて、「Attributes」ペインのUIが少し変更されています。以下にその変更点についてまとめます。
・「ID」が小文字の「id」に変更されました。
・画面上部の「Show all attributes」ボタンが廃止され、かわりにペイン内の「All Attributes」の左側にある三角マークをクリックすることで、すべてのアトリビュートが表示されることになりました。
・「layout_width」と「layout_height」が制約表示部分の下に移動されました。
・各アトリビュートの右側にある「・・・」ボタンが、縦長の四角ボタンに変更されました。
上記については記述を読み替えてください。またその他の変更点は以下の通りです。
・P163の「textAppearance」のメニュー項目が以下のように変更され、「Large.Inverse」が選択できなくなっています。ここは「Large」にしても画面表示は問題ないので、そちらを選択してください。
・P180のSeekBarのアトリビュートで「max」と「progress」が2つずつあります。おそらくバグと思われますが、これらはまったく同じでどちらで設定してもかまいません。
・P202のフラグメントの「layout」プロパティはデフォルトでは表示されなくなりました。「All Attributes」の左側の三角マークを開いて、設定してください。
・P270の「showAsAction」の設定は左端にある「旗」マークをクリックして、「ifRoom」を選択します。
・P378の「Search Everywhere」の画面が以下のように変更されています。
また、検索の絞り込みボタンがに変更され、メニュー項目もシンプルになっています。
●エミュレータの不具合について
Android Studio 3.4の初期のバージョンにおいて、「起動したエミュレータがオンラインにならない」や、「サンプルアプリの転送ができない」などの不具合が報告されています。現在は修正されているようですので、上記のような不具合が出る場合は最新版をインストールするか、もしくはアップデート(メニューのHelp→Check for Updateを選択)をかけてください(→P.52参照)。
●Android Studio 3.6以降のプロジェクト作成時の注意
書籍内ではプロジェクトの作成時に「Use AndroidX artifacts:チェックを入れる」と説明しています。このチェックはAndroid Studio 3.6以降ではなくなり、代わりに「Use legacy android.support libraries」というチェックに置き換えられていますが、チェックの意味が反対になっていますので注意してください。「Use legacy android.support libraries」にはチェックを入れないようにします。
●Android Studio 3.5以降でプロジェクトがビルドできない問題
新規にプロジェクトを作成した時に、次のようなエラーでビルドできないことがあります。
Cannot inline bytecode built with JVM target 1.8 into bytecode that is being built with JVM target 1.6. Please specify proper ‘-jvm-target’ option
これは、次のコードを追加することで解消することができます。
build.gradle(Module.app)を開き、jvmTargetオプションを追加します。
赤字部分が追加するコードです。
apply plugin: ‘com.android.application’
apply plugin: ‘kotlin-android’
apply plugin: ‘kotlin-android-extensions’
android {
compileSdkVersion 29
buildToolsVersion “29.0.3”
defaultConfig {
applicationId “com.example.janken”
minSdkVersion 19
targetSdkVersion 29
versionCode 1
versionName “1.0”
testInstrumentationRunner “androidx.test.runner.AndroidJUnitRunner”
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile(‘proguard-android-optimize.txt’), ‘proguard-rules.pro’
}
}
kotlinOptions {
jvmTarget = ‘1.8’
}
}
dependencies {
implementation fileTree(dir: “libs”, include: [“*.jar”])
implementation “org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version”
implementation ‘androidx.core:core-ktx:1.3.0’
implementation ‘androidx.appcompat:appcompat:1.1.0’
implementation ‘androidx.constraintlayout:constraintlayout:1.1.3’
testImplementation ‘junit:junit:4.12’
androidTestImplementation ‘androidx.test.ext:junit:1.1.1’
androidTestImplementation ‘androidx.test.espresso:espresso-core:3.2.0’
}
●その他の正誤情報(初版)
P274 下から2行目
誤 次にメニューがタップされたら画像を変更するようにしましょう。
正 次にメニューがタップされたらHTMLファイルを変更するようにしましょう。
P276 上から4行目
誤 メニュー項目をタップすると、それに合わせてHTMLファイル画像が差し替わります。
正 メニュー項目をタップすると、それに合わせてHTMLファイルが差し替わります。
P293 図TextViewの配置
誤 ⓯の矢印がlineSpacingExtraを指し示す
正 ⓯の矢印がtextColorを指し示す
P299 下から1行目
誤 今回使用ないのであれば
正 今回のように使用しないのであれば
P350 下から10行目
誤 0Long型の変数idを用意
正 Long型の変数idを用意
P381のサンプルダウンロードURL
誤 http://isbn.sbcr.jp/95815
正 http://isbn2.sbcr.jp/01140