ISBN: 978-4-7981-5202-8
基礎&応用力をしっかり育成! Androidアプリ開発の教科書
サポート終了
| 著者 | WINGSプロジェクト 齊藤 新三 |
|---|---|
| 監修 | 山田祥寛 |
| 出版社 | 翔泳社 |
| 価格 | 2,750円(税別) |
| 判型 | B5変判・2色 |
| ページ数 | 416ページ |
| 発売日 | 2018年2月20日 |
| 対象レベル | 初中級 |
「Androidアプリ開発の基礎力」を習得しよう!
本書は、開発者のための実装系Webマガジン「CodeZine」の人気連載(Android Studio 2で始めるアプリ開発入門)をまとめ、加筆・修正・再構成して書籍化したものです。Androidアプリ開発の必須知識やテクニックを積み上げ、体系的にハンズオン形式で学びます。
SDKのバージョンに左右されにくい基礎力/応用力が身につきます。
更新履歴
- FAQ情報:2020年8月20日 更新
- 正誤訂正:2019年2月1日 更新
目次
- 第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 AsyncTask
- 11.4 HTTP接続
- 第12章 メディア再生
- 12.1 音声ファイルの再生
- 12.2 戻る・進むボタン
- 12.3 リピート再生
- 第13章 バックグラウンド処理と通知機能
- 13.1 サービス
- 13.2 通知
- 13.3 通知からアクティビティを起動する
- 第14章 地図アプリとの連携とGPS機能の利用
- 14.1 暗黙的インテント
- 14.2 緯度と経度指定で地図アプリを起動するURI
- 14.3 GPS機能の利用
- 14.4 GPS利用の許可設定
- 第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 区切り線とリスナ設定
- Note
- Android Studioの動作環境
- 漢字表記のユーザー名に注意
- HAXMのインストール
- 不足ライブラリの自動ダウンロード
- ビルド中にさらに不足ライブラリがある場合
- Javaクラスの一意性
- Kotlin
- HAXMに関する警告
- 日本語入力でのIME強制終了
- プロジェクトの閉じ方
- プロジェクトの削除
- 単位
- オーバーライド
- AppCompatActivityクラス
- メンバクラスと無名クラス
- Android Studioでクラスのインポートを行う
- リスナインターフェース
- findViewById()のキャスト
- プロジェクトのzipファイルを作成する
- onItemClick()の第2引数viewの利用例
- コンテキスト
- android.R
- サポートライブラリのDialogFragment
- etCommentのテキスト位置
- データを加工しながらListViewを生成するには
- Intentのコンストラクタ引数
- ログレベル
- xmlns:app属性のインポート
- app:showAsActionとandroid:showAsAction
- メニューの入れ子
- FrameLayout
- フラグメントでオプションメニューを使うには
- layout_weightの小数
- トランザクション
- DialogFragmentはフラグメント
- 開発中はアプリをアンインストールする
- Android内データベースの主キーは_id
- try-with-resourcesによるdbの解放
- rawQuery()でバインド変数を使う方法
- SQL文を使わない方法
- UIスレッド
- 可変長引数
- HTTP接続がPOSTの場合
- 音声ファイルはなぜURI指定か?
- onPrepared()とonCompletion()の引数
- FusedLocationProviderClient
- カメラアプリの起動
- アプリのテーマ指定
- elevationの値
- なぜv7ライブラリはあらかじめ設定されているのか
正誤表
| 該当頁 | 該当箇所 | 修正刷 |
|---|---|---|
| 訂正箇所 | 訂正事項 | 更新日 |
| p.116 | リスト5.9 引き出し2-3の位置 | 4刷 |
| msg = getString(R.string.dialog_nu_toast); の右横 | case DialogInterface.BUTTON_NEUTRAL: の右横 | 2019/02/01 |
| p.166 | 本文 1行目 | 4刷 |
| メソッドが呼びされる | メソッドが呼び出される | 2019/02/01 |
| p.167 | 手順3 本文 1行目 | 4刷 |
| [File]メニューから | [java]フォルダを選択した状態で、[File]メニューから | 2019/02/01 |
| p.170 | リスト7.12 Log.i()の第2引数 7か所 | 4刷 |
| (太字になっていない) | (太字にする) | 2019/02/01 |
| p.172 | 表7.1 ログレベル「Debug」の「内容」欄 | 4刷 |
| 開発時にのみ役立つデバッグメッセージ | 詳細なメッセージ。製品版アプリでも出力される | 2019/02/01 |
| p.172 | 表7.1 ログレベル「Verbose」の「内容」欄 | 4刷 |
| 詳細なメッセージ | 詳細なメッセージ。製品版アプリでは出力されない | 2019/02/01 |
| p.314 | 本文1行目 リストのキャプション(2か所) | 2刷 |
| activity_sound_start.xml | activity_intent_start.xml | 2018/05/10 |
FAQ
2020年7月31日(金)に、「livedoor 天気」のサービス提供が終了しました。
そのため11章のサンプルは、動作できなくなっております。
そのため11章のサンプルは、動作できなくなっております。
更新日: 2020.08.20
ダウンロード
お問い合わせ
書籍に関するご質問や誤りのご報告、ご意見・ご感想などをお寄せください。
お問い合わせの前にFAQ・正誤表をご確認ください。すでに掲載済みの内容については個別回答が難しい場合があります。