作ればわかる!Androidプログラミング(金宏 和實)|翔泳社の本
  1. ホーム >
  2. 書籍 >
  3. 作ればわかる!Androidプログラミング

作ればわかる!Androidプログラミング


形式:
書籍
発売日:
ISBN:
9784798124339
定価:
2,948(本体2,680円+税10%)
仕様:
B5変・352ページ
キーワード:
#プログラミング,#開発環境,#開発手法,#Web・アプリ開発
紙の書籍
本書籍には新版があります
作ればわかる!Androidプログラミング 第2版 SDK4対応

アプリを作りながら楽しく学べるAndroidプログラミングのコツ

本書は、Android SDKで実際にアプリケーションを作りながら、Androidアプリ開発の基礎知識と実践的なプログラミング方法を学ぶことができる書籍です。絵合わせゲームやワンタッチで定型メールを送るアプリ、音声認識機能を使って口述筆記するアプリ、散歩中に移動経路や時間/速度などを記録するアプリ、Androidケータイを使ってマインドストームNXTロボットを制御するアプリなど、「作って楽しい」をコンセプトとした10のサンプルプログラムを用意しています。これらを作りながら、Androidアプリ開発の基礎知識とプログラミングのコツを身につけていきます。最新のAndroid SDK 2.3に対応。「とにかく何か作りたい」「アプリを作りたいけど何から始めればいいのかよくわからない」「アプリを作りながらプログラミングのコツを覚えたい」という方におすすめの1冊です。

第1章 アプリケーションを作るためのウォーミングアップ

1-1 Androidの概要
Androidの特徴
  Memo Apache v2ライセンス
Androidのアーキテクチャ
1-2 Windowsに開発環境を構築する
Java Development Kit(JDK)のインストール
統合開発環境Eclipseのインストール
  Memo Pleiadesの動作が遅く感じる場合
Android SDKのインストール
Android Development Tools(ADT)のインストール
Android Virtual Device(AVD)の作成
パスの設定
1-3 Androidプログラミングの基礎知識
Androidプロジェクトの作成
ファイルの構成と役割
  Memo オーバーライド
1-4 エミュレータでの実行方法
プロジェクトの実行構成を作成
エミュレータは事前に起動しておく
1-5 実機での実行方法
実機用サンプルの作成
  Memo 単位
コマンドラインツールで実機へ転送
Eclipseから実機で実行
1-6 アクティビティ
アクティビティとは
アクティビティのライフサイクル
  Memo エミュレータの時間を合わせる
  Memo DDMSパースペクティブ

第2章 なつかしの数字合わせパズル

2-1 作成するAndroidアプリケーション
  Memo イベントリスナー
2-2 ビュー/ビューグループの基本
  Memo エミュレータのハードキー
2-3 「数字合わせパズル」を作る
プロジェクトの作成
レイアウトの定義
strings.xml
マニフェストファイル(AndroidManifest.xml)
画像ファイルの準備
アクティビティの作成
  Memo Androidで使う主なデータ型

第3章 ○○ちゃんに電話&ワンタッチメール

3-1 作成するAndroidアプリケーション
3-2 インテントの基本
明示的なインテント
暗黙的なインテント
3-3 「○○ちゃんに電話」を作る
プロジェクトの作成
アクティビティの作成
マニフェストファイルの変更
3-4 「ワンタッチメール」を作る
プロジェクトの作成
アクティビティの作成
実機での実行

第4章 休日にサーバー状態チェックツール

4-1 作成するAndroidアプリケーション
4-2 プリファレンスの基本
プリファレンスへのアクセスと保存/読み込み
プリファレンスの削除
プリファレンスのクリア
  Memo クラスとオブジェクト
4-3 「休日にサーバー状態チェックツール」を作る
プロジェクトの作成
アクティビティの作成
  Memo @Overrideとは

第5章 思い出のアルバム

5-1 作成するAndroidアプリケーション
5-2 コンテントプロバイダの基本
データの取得方法
サンプルデータの準備
登録されている連絡先の全件取得
電話番号が登録されている連絡先のみを取得
電話番号の取得
メールアドレスの取得
5-3 「思い出のアルバム」を作る
プロジェクトの作成
ビューの構成
アクティビティの作成
  Memo Logによるデバッグ出力

第6章 口述筆記くん

6-1 作成するAndroidアプリケーション
6-2 音声認識プログラミングの基本
音声認識によるWeb検索
  Memo String、StringBuffer、StringBuilderの使い分け
6-3 「口述筆記くん」を作る
プロジェクトの作成
アクティビティの作成
  Memo TextViewとEditTextをスクロール可能にする

第7章 Never Touch Me!

7-1 作成するAndroidアプリケーション
7-2 実装されているセンサーを調べる
7-3 音声を録音する
プロジェクトの作成
アクティビティの作成
  Memo match_parentについて
パーミッションの追加
録音してみる
7-4 「Never Touch Me!」を作る
プロジェクトの作成
NeverTouchMe.javaの作成
  Memo オーバーロードとは
パーミッションの設定
VoicePlayer.javaの作成
7-5 サービスを利用する
プロジェクトの作成
アクティビティの作成
サービスの作成
パーミッションの追加
7-6 ノーティフィケーションを利用する
NeverTouchService.javaの修正

第8章 チーズ!でカシャ

8-1 作成するAndroidアプリケーション
8-2 音を感知する
スレッドとは
プロジェクトの作成
アクティビティの作成
  Memo LogCatビューにログが表示されないとき
LoudNessクラスの作成
  Memo サンプリングレート
パーミッションの追加
8-3 サーフェイスビューに画像を描く
アクティビティの作成
LoudSurFaceViewクラスの作成
8-4 カメラ機能(Cameraクラス)を使う
アクティビティの作成
CameraViewクラスの作成
パーミッションの追加
8-5 「チーズ!でカシャ」を作る
プロジェクトの作成
アクティビティの作成
LoudNessクラスの作成
CameraViewクラスの作成
パーミッションの追加

第9章 卓球少女養成ギプス

9-1 作成するAndroidアプリケーション
9-2 加速度センサーの基本
加速度を表示するアクティビティ
9-3 「玉転がしゲーム」を作ってみる
BallAccelクラスの作成
BallSurFaceViewクラスの作成
9-4 タブレイアウトを使う
プロジェクトの作成
タブページのレイアウト
タブページ1のコンテンツ
タブページ2のコンテンツ
  Memo ディザリングとフィルタリング
TabActivityを継承するTabTestクラスの作成
9-5 「卓球少女養成ギプス」を作る
プロジェクトの作成
ファイル構成と表示する文字列
表示する文字列とタブページのコンテンツ
TabActivityを継承するPingPongクラスの作成
SwingListenerクラスの作成

第10章 お散歩の友

10-1 作成するAndroidアプリケーション
  Memo GPSロガーとは
10-2 Android MapsとGPSの使い方
Android Maps APIのインストール
Android Maps APIキーの取得
プロジェクトの作成
GoogleマップとGPSを使うための設定
strings.xmlにMaps APIキーを追加
地図表示用レイアウトの定義
  Memo タッチイベントの操作を表わす用語
地図と現在地の描画
10-3「 お散歩の友」を作る
プロジェクトの作成
マニフェストファイルの設定
作成するクラス
レイアウトの定義
表示する文字列とMaps APIキーの準備
実行イメージの確認
地図上に自分アイコンを描く
  Memo 1E6について
地図上に経路を描く
AsyncTaskによる非同期実行〜緯度と経度から住所を取得
データ保存のためのダイアログの作成
SQLiteデータベースの利用
オプションメニューの作成
ListViewによるレコード一覧表示

第11章 AndroidでマインドストームNXTリモコン

11-1 作成するAndroidアプリケーション
  Memo ペアリングとは
11-2「 マインドストームNXTリモコン」を作る
プロジェクトの作成とパーミッションの設定
作成するクラス
Bluetoothの対応確認と有効化
接続可能なデバイスの検出と一覧表示
  Memo android:visibilityの"gone"
  Memo OUIとは
Bluetoothデバイスへのソケット接続
  Memo ソケット
Bluetoothデバイスとの通信〜ダイレクトコマンドの発行
  Memo PIN(Passkey)の入力
  Memo シフト演算子
  Memo LogCatの出力をテキストファイルへ
ソケット接続を閉じる
オプションメニューの作成
加速度センサーでロボットを操作する

付属データはこちら

お問い合わせ

内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。

正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。

利用許諾に関するお問い合わせ

本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。

  • ダウンロードサンプルについて

    本書のサンプルプログラムは、以下からダウンロードすることができます。

    http://www.shoeisha.co.jp/book/download/9784798124339/


    ダウンロードしたサンプルプロジェクトを最新の開発環境(Eclipse)で実行する際、
    「your project contains error(s),please fix them before running your application.」
    などのエラーが表示されて実行できない場合があります。

    そのような場合は、ダウンロードしたサンプルプロジェクトの「コンパイラー準拠レベル」
    を「1.6」に変更してください。変更の手順は以下のとおりです。

    1.サンプルプロジェクトを開いた状態で、メニューから[ウィンドウ]→[設定]を選択。
    2.「設定」ダイアログが開くので、左側のツリーから「Java」→「コンパイラー」を選択。
    3.ダイアログ右側に「コンパイラー準拠レベル」ドロップダウンリストから「1.6」を選択。
    4.「設定」ダイアログの[OK]ボタンをクリック。
  • Android SDKの新しいバージョンへの対応(P.30 1.3節の「Androidプロジェクトの作成」の説明に関する補足)

    本書刊行後のSDKのバージョンアップによって手順が変更になっています。
    新しいSDKでの手順についてはこちらのPDFをご参照ください。

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

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

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

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

書籍の種類:

書籍の刷数:

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

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

最終更新日:2013年01月18日
発生刷 ページ数 書籍改訂刷 電子書籍訂正 内容 登録日
1刷
【追加情報】ダウンロードサンプルについて

※【追加情報】をご覧ください。
2012.10.05
1刷 030
【追加情報】Android SDKの新しいバージョンへの対応(1.3節の「Androidプロジェクトの作成」の説明に関する補足)

※【追加情報】をご覧ください。
2013.01.10
1刷 049
Memo 5行目
2刷
表示密度が違っても、同じような物理サイズを維持できます。
表示密度が違っても、同じようなサイズを維持できます。
2012.02.09
1刷 055
ページ下部の「注意」囲み
実行単位のことです(プロセスより細かい)。
実行単位のことです。

「(プロセスより細かい)」という表現は正確ではないため削除。
2012.08.17
1刷 083
Memo 本文1行目
2刷
Androidで使う基本データ型を表Aに示します(この他にも、文字列を扱うStringなどがあります)
Androidで使う基本データ型を表Aに示します。
2012.02.09
1刷 097
表3.2 「ACTION_VIEW」の「説明」
2刷
Webブラウザで指定のURLを表示する。AndroidManifest.xmlにインターネットアクセスをするための権限が必要
Webブラウザで指定のURLを表示する。
2012.02.09
1刷 156
1~4行目
また、リストAでは、~変更しています(詳細は第4章を参照してください)。
また、リストAでは省略していますが、~変更しています(詳細は第4章の118ページ下から9行目以降を参照してください)。
2012.03.12
1刷 163
表7.1、下から5行目「TYPE_ORIENTATION」の説明
方位センサー(非推奨)
方位センサー(非推奨。代わりにSensorManager.getOrientation()を使う)
2012.08.17
1刷 163
表7.1、下から1行目「TYPE_TEMPERATURE」の説明
温度センサー
温度センサー(非推奨。TYPE_AMBIENT_TEMPERATUREを使う)
2012.08.17
1刷 166
本文最終行
2刷
なくてはいけないOnClickListenerインターフェイスを省略できるのです。
なくてはいけないOnClickListenerインターフェイスを省略できるのです(①②)
2012.02.09
1刷 184
リスト7.13の④
Intent.FLAG_ACTIVITY_NEW_TASK
PendingIntent.FLAG_CANCEL_CURRENT
2013.01.18
1刷 191
「スレッドとは」6~7行目
2刷
スレッドはプログラムの小さな処理単位です。一般に、処理単位の大きさは、プログラム>プロセス>スレッドの関係にあります。
スレッドはプログラムの小さな処理単位です。
2012.02.09
1刷 259
「fireprintの作成」5行目
次のコマンドを実行します。
次のコマンドを実行します[※]。 ※JDK7(JDK1.7.0)から、keytoolはSHA1形式でfingerprintを作成します。同時にMD5形式を表示させるには、-vをオプションとして指定します。以下のように入力してください。 keytool -list -v -keystore ・・・

JDK7でのコマンド変更に関する注記を追加。
2012.08.17

感想・レビュー

たいそ さん

2013-08-31

ゲーム、GPS、カメラ、センサ、音声認識/録音、HTTP、Bluetooth といった飛び道具的サンプルが掲載されている。後半は題材が多くなった分解説が薄くなっているように感じる(何をしているかは書かれているが、なぜその処理がいるのかがわからない)が、これらのサンプルに手を加えるところから始めるほうが、他の入門書にありがちな「次に何をしていいかわからない」状態に陥りにくいのかもしれない。「Androidのプログラムが作成できるようになるために必要なことは、Androidのプログラムを書いてみること。」