基礎&応用力をしっかり育成!Androidアプリ開発の教科書 第2版 Kotlin対応 なんちゃって開発者にならないための実践ハンズオン(WINGSプロジェクト 齊藤 新三 山田 祥寛)|翔泳社の本
  1. ホーム >
  2. 書籍 >
  3. 基礎&応用力をしっかり育成!Androidアプリ開発の教科書 第2版 Kotlin対応 なんちゃって開発者にならないための実践ハンズオン

基礎&応用力をしっかり育成!Androidアプリ開発の教科書 第2版 Kotlin対応 なんちゃって開発者にならないための実践ハンズオン


監修

形式:
書籍
発売日:
ISBN:
9784798169811
定価:
3,135(本体2,850円+税10%)
仕様:
B5変・448ページ
分類:
プログラミング・開発
レーベル:
CodeZine BOOKS

本書籍の他の形式を確認する

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

■好評シリーズのKotlin対応版がリニューアル
SDKバージョンが上がっても通用する「Androidアプリ開発の基礎力」を習得!

好評のAndroidアプリ開発の入門書が、開発環境を最新化して改訂!

本書は、Kotlin言語の学習者を対象として、
ハンズオン形式でサンプルプログラムを作りながら、
Androidアプリ開発に必要な基礎知識やSDKの機能、
プログラミングテクニックを学ぶことができる書籍です。

最新の開発環境Android Studio 4を利用し、アプリ開発の基本手順から、
ビュー・アクティビティ、イベント・リスナ、リストビュー・ダイアログ、
画面遷移・Intentクラス、オプション・コンテキストメニュー、フラグメントの使い方など、
SDKのバージョンが上がっても通用する「Androidアプリ開発の基礎力」を
積み上げ・体系的に習得していきます。

また、データベース接続や非同期処理・Web API連携、
メディア再生、バックグラウンド処理・通知機能の利用方法、
地図アプリ(やGPS機能)・カメラアプリとの連携、
マテリアルデザインといった応用的なプログラミング方法もしっかり学習します。
「Androidアプリを作る方法をしっかり学びたい」
「Androidアプリ開発の基礎力・応用力をきちんと身につけたい」
という方におすすめの一冊です。

好評の同シリーズ、
『基礎&応用力をしっかり育成!Androidアプリ開発の教科書 第2版 Java対応』の
アプリ開発言語はJavaですが、
本書は同じ構成のまま、Kotlinに対応させているため、
KotlinとJavaを読み比べながら学んでいくことも可能です。

【本書の特徴】
○Androidアプリ開発の必須知識&テクニックを積み上げ・体系的にハンズオン形式で学ぶ
○わかりやすいサンプルコードと丁寧な解説
○SDKのバージョンに左右されにくい基礎力・応用力が身につく
○既刊のJava版と同じ構成のため、比較しながら読み進めることで理解が深まる

【前提知識】
○Kotlin言語仕様の基礎的な知識


Androidアプリ開発。なんちゃって開発者にならないための実践ハンズオン

好評シリーズのKotlin対応版がリニューアル。SDKバージョンが上がっても通用する「Androidアプリ開発の基礎力」を習得!

好評のAndroidアプリ開発の入門書が、開発環境を最新化して改訂!本書は、Kotlin言語の学習者を対象として、ハンズオン形式でサンプルプログラムを作りながら、Androidアプリ開発に必要な基礎知識やSDKの機能、プログラミングテクニックを学ぶことができる書籍です。

本書の内容

基礎&応用力をしっかり育成!

最新の開発環境Android Studio 4を利用し、アプリ開発の基本手順から、ビュー・アクティビティ、イベント・リスナ、リストビュー・ダイアログ、画面遷移・Intentクラス、オプション・コンテキストメニュー、フラグメントの使い方など、SDKのバージョンが上がっても通用する「Androidアプリ開発の基礎力」を積み上げ・体系的に習得していきます。また、データベース接続や非同期処理・Web API連携、メディア再生、バックグラウンド処理・通知機能の利用方法、地図アプリ(および、GPS機能)・カメラアプリとの連携、マテリアルデザインといった応用的なプログラミング方法もしっかり学習します。

「Androidアプリを作る方法をしっかり学びたい」「Androidアプリ開発の基礎力・応用力をきちんと身につけたい」という方におすすめの一冊です。

手順

手順

各章に手順と書かれた項がいくつかあります。これが実際に手を動かしていただく項です。この順番通りに作業すると、実際にアプリを作成でき、実行できるようになります。この手順は 読み飛ばすのではなく、パソコンの前に座って実際に作業を行ってください。

NOTE

NOTE

NOTEの囲みでは、注意事項や関連する項目、知っておくと便利な事柄などを紹介しています。

動作環境

動作環境

本書内の記述/サンプルプログラムは、以下の環境で動作確認しています。Windows 10/macOS Catalina(10.15.7)/Android Studio 4.1.2

第1章 Androidアプリ開発環境の作成
1.1 Androidのキソ知識
1.2 Android Studioのインストール

第2章 はじめてのAndroidアプリ作成
2.1 はじめてのAndroidプロジェクト
2.2 AVDの準備
2.3 アプリの起動
2.4 Android Studioの画面構成とプロジェクトのファイル構成
2.5 Androidアプリ開発の基本手順

第3章 ビューとアクティビティ
3.1 ビューの基礎知識
3.2 画面部品をもう1つ追加する
3.3 レイアウトエディタのデザインモード
3.4 デザインモードで部品を追加してみる
3.5 LinearLayoutで部品を整列する
3.6 他のビュー部品―ラジオボタン/選択ボックス/リスト

第4章 イベントとリスナ
4.1 アプリ起動時に実行されるメソッド
4.2 イベントリスナ
4.3 ボタンをもう1つ追加してみる

第5章 リストビューとダイアログ
5.1 リストタップのイベントリスナ
5.2 アクティビティ中でリストデータを生成する
5.3 ダイアログを表示する

第6章 ConstraintLayout
6.1 ConstraintLayout
6.2 制約の設定には制約ハンドルを使う
6.3 ConstraintLayoutにおける3種類のlayout_width/height
6.4 横並びとベースライン
6.5 ガイドラインを利用する
6.6 チェイン機能を使ってみる

第7章 画面遷移とIntentクラス
7.1 2行のリストとSimpleAdapter
7.2 Androidの画面遷移
7.3 アクティビティのライフサイクル

第8章 オプションメニューとコンテキストメニュー
8.1 リストビューのカスタマイズ
8.2 オプションメニュー
8.3 戻るメニュー
8.4 コンテキストメニュー

第9章 フラグメント
9.1 フラグメント
9.2 スマホサイズのメニューリスト画面のフラグメント化
9.3 スマホサイズの注文完了画面のフラグメント化
9.4 タブレットサイズ画面を作成する
9.5 注文完了フラグメントのタブレット対応

第10章 データベースアクセス
10.1 Androidのデータ保存
10.2 Androidのデータベース利用手順

第11章 非同期処理とWeb API連携
11.1 AndroidのWeb連携
11.2 非同期処理
11.3 サンプルアプリの基本部分の作成
11.4 Androidの非同期処理
11.5 HTTP接続
11.6 JSONデータの扱い
11.7 Kotlinコルーチンによる非同期処理

第12章 メディア再生
12.1 音声ファイルの再生
12.2 戻る・進むボタン
12.3 リピート再生

第13章 バックグラウンド処理と通知機能
13.1 サービス
13.2 通知
13.3 通知からアクティビティを起動する

第14章 地図アプリとの連携と位置情報機能の利用
14.1 暗黙的インテント
14.2 緯度と経度の指定で地図アプリを起動するURI
14.3 位置情報機能の利用
14.4 位置情報利用の許可設定

第15章 カメラアプリとの連携
15.1 カメラ機能の利用
15.2 ストレージ経由での連携

第16章 マテリアルデザイン
16.1 マテリアルデザイン
16.2 ScrollView
16.3 アクションバーより柔軟なツールバー
16.4 ツールバーのスクロール連動
16.5 CollapsingToolbarLayoutの導入
16.6 CollapsingToolbarLayoutにタイトルを設定する
16.7 FloatingActionButton(FAB)
16.8 Scrolling Activity

第17章 リサイクラービュー
17.1 リストビューの限界
17.2 リサイクラービューの使い方
17.3 区切り線とリスナ設定

本書は付属データの提供はございません。

書籍への問い合わせ

正誤表、追加情報をご確認の上、こちらよりお問い合わせください

書影の利用許諾について

本書籍に関する利用許諾申請はこちらになります

追加情報はありません。

ご購入いただいた書籍の種類を選択してください。

書籍の刷数を選択してください。

刷数は奥付(書籍の最終ページ)に記載されています。

現在表示されている正誤表の対象書籍

書籍の種類:

書籍の刷数:

本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。

対象の書籍は正誤表がありません。

最終更新日:2022年01月19日
発生刷 ページ数 書籍改訂刷 電子書籍訂正 内容 登録日
1刷 057
「NOTE 単位」上から4行目
2刷
サイズを計算していくれる単位です。
サイズを計算してくれる単位です。

※リフローEPUBの場合、第3章の「3.1.6 画面部品でよく使われる属性」のNote「単位」が該当箇所になります。
2022.01.12
1刷 168
リスト7.11 下から11行目
2刷
Log.i("LifeCycleSample", "Main onDestory() called.")
Log.i("LifeCycleSample", "Main onDestroy() called.")
2022.01.12
1刷 206
図9.6 上から6行目
onActivityCreated() アクティビティのonCreate() メソッドが完了した際に呼び出される。
onViewStateRestored() アクティビティでのビュー生成が完了した際に呼び出される。
2022.01.19
1刷 222
「9.5.2 【手順】注文完了フラグメントをタブレットに対応する」の「1 画面サイズ判定フラグと判定処理を記述する」1行目
リスト9.11のプロパティとonActivityCreated()メソッドを追加しましょう。
リスト9.11のプロパティとonViewStateRestored()メソッドを追加しましょう。

※以下の箇所も同様にonViewStateRestored()に修正します。
222ページ
・リスト9.11の5行目

223ページ
・リスト9.11の続き 2行目

226ページ
・「定食メニューリストフラグメント」の判定のタイミング
・下から10行目
・下から5行目
2022.01.06
1刷 223
リスト9.12の③-1
fragmentManager?
parentFragmentManager

※「fragmentManager」のあとの「?」を削除をすることに注意してください。
※以下の箇所も同様にparentFragmentManagerへ修正します。

224ページ
・リスト9.13の(2)-1

225ページ
・リスト9.15の(1)-1
2022.01.06
1刷 223
リスト9.12の③-3、③-4
transaction?
transaction

※「?」を削除します。
※以下の箇所も同様に修正します。

・225ページ 
リスト9.15の(1)-2、(1)-3

・230ページ
最終行のコード

・231ページ
上から4行目のコード
2022.01.19
1刷 229
上から7行目以降
 FragmentクラスはFragmentManagerオブジェクトをfragmentManagerプロパティとして保持しています。FragmentManagerはその名前通り、フラグメントの管理を行うクラスです。  このFragmentManagerクラスのメソッドfindFragmentById()で同一アクティビティに属する他のフラグメントを取得できるので、このメソッドを使ってMenuListFragmentを取得します(リスト9.13❷‐1)。ただし、fragmentManagerプロパティはNullable型メンバなので、セーフコール演算子を使います。
 FragmentクラスはFragmentManagerオブジェクトをparentFragmentManagerプロパティとして保持しています。FragmentManagerはその名前通り、フラグメントの管理を行うクラスです。  このFragmentManagerクラスのメソッドfindFragmentById()で同一アクティビティに属する他のフラグメントを取得できるので、このメソッドを使ってMenuListFragmentを取得します(リスト9.13❷‐1)。ただし、fragmentManagerプロパティはNullable型メンバなので、セーフコール演算子を使います。

※リフローEPUBの場合、第9章の図9.18の後にある箇条書きの下にある段落が該当箇所になります。
2022.01.19
1刷 230
「1 FragmentManagerからFragmentTransactionオブジェクトを取得する」3行目
フラグメントトランザクションを制御するクラスがFragmentTransactionです。このオブジェクトは、FragmentManagerのbeginTransaction()メソッドで取得します(リスト9.12❸‐1とリスト9.15❶‐1)。その際、セーフコール演算子を忘れないようにしてください。
フラグメントトランザクションを制御するクラスがFragmentTransactionです。このオブジェクトは、FragmentManagerのbeginTransaction()メソッドで取得します(リスト9.12❸‐1とリスト9.15❶‐1)。その際、セーフコール演算子を忘れないようにしてください。

※リフローEPUBの場合、「9.5.4 フラグメントトランザクション」の「1 FragmentManagerからFragmentTransactionオブジェクトを取得する」の最初の段落が該当箇所になります。
2022.01.19
1刷 262
リスト11.2 下から1つめの注釈
2刷
画面の上半分にするために0.5とする
画面の下半分にするために0.5とする

※リフローEPUBの場合、リスト11.2の4つ目の注釈(青字部分)が該当箇所になります。
2022.01.12
1刷 285
リスト11.13 上から7行目
2刷

(画像クリックで拡大)

(画像クリックで拡大) ※「 }」の位置を8行目の先頭と同じ位置に揃えます。

※リフローEPUBの場合、上から6行目になります。
2022.01.12
1刷 418
リスト17.7 上から4行目
2刷
//区切り専用のオブジェクトを生成。
//区切り線専用のオブジェクトを生成。
2022.01.12