がぶちゃんの日記

札幌からフルリモートCTO

「Android SDK開発のレシピ」という本を書きました。

AndroidSDK開発のレシピ―104個のレシピで学ぶAndroidアプリ開発の極意

AndroidSDK開発のレシピ―104個のレシピで学ぶAndroidアプリ開発の極意

このたび「Android SDK開発のレシピ」という本を書きました。
Androidアプリ開発者向けのTips集という位置づけです。

姉妹書

Android SDK開発のレシピ」は、@takayama さん、@hirobe さん、@syuhari さんの「iPhone SDK開発のレシピ」の姉妹書になります。

iPhone SDK開発のレシピ」の目次をベースにAndroidではどうやるのかを書くと共に、iPhone独自のレシピは削除して、Android独自であったりAndroidの特徴になるレシピを追記して、執筆しました。

iPhoneアプリAndroidアプリを開発する際に、あわせて読むことで役に立つ本になっていると思います。

iPhoneSDK開発のレシピ

iPhoneSDK開発のレシピ

執筆にあたり

僕自身知らないことも多く、非常に勉強になりました。
「あれはどうやってやるんだろう?」と思ったことを、どんどん解決していくイメージで原稿を書いていきました。
中には英語の情報しかないTipsやニッチなTipsもあるので、読者の方に「おお、こんなことできるのか!」という発見があると嬉しいです。
開発中にWebで検索するのはもちろんですが、一度本書を手にとって頂き、一度目を通していただくと「たしか、あの本に書いてあったなぁ」という逆引き的な利用方法もあると思います。

本書のレシピがAndroidアプリ開発者である読者の方々にとって、有益な情報源となれば幸いです。

ちなみに、サンプルコードをGitHubで公開する予定です。また、このブログやTwitter @gabu などでご連絡したいと思います。

Update: サンプルコードを公開しました。 「Android SDK開発のレシピ」のソースコードをGitHubにアップしました。 - gabuchanの日記

目次

Chapter 1 開発環境のレシピ

レシピ 001 実機とエミュレータで動作を切り替える
レシピ 002 端末情報で動作を切り替える
レシピ 003 デバッグ時のみ有効な処理を作る
レシピ 004 新規クラス作成時にヘッダコメントを挿入する
レシピ 005 端末内のファイルを編集する
レシピ 006 コマンドラインからビルドする
レシピ 007 ユニットテストを行う
レシピ 008 ユニットテストでUIのテストを行う

Chapter 2 基本レシピ

レシピ 009 ユニークなファイル名を生成する
レシピ 010 アプリケーションの終了を検知する
レシピ 011 自動的に画面ロックしないようにする
レシピ 012 URLエンコードする
レシピ 013 Listをランダムに並べ替える
レシピ 014 クリップボードを使う
レシピ 015 プリファレンスにデータを保存する
レシピ 016 XMLをパースする
レシピ 017 文字列からMD5を取得する
レシピ 018 ローカライズ
レシピ 019 パスワードを安全に保存する
レシピ 020 起動パスワードをつける
レシピ 021 設定画面を作成する
レシピ 022 ZIPファイルを解凍する
レシピ 023 JSON形式のデータを扱う
レシピ 024 正規表現を使う
レシピ 025 インストールされているアプリの一覧を取得する
レシピ 026 コンタクトリストを取得する

Chapter 3 UIのレシピ

レシピ 027 画面の回転をロックする
レシピ 028 EditTextを選択状態にする
レシピ 029 プログレスダイアログを表示する
レシピ 030 端末の解像度に合わせて画像を表示する
レシピ 031 拡大されても綺麗な画像(9-patch)を作る
レシピ 032 Buttonに背景画像(9-patch)を使う
レシピ 033 Buttonの状態によって背景画像を変える
レシピ 034 アラート内にEditTextを表示する
レシピ 035 アラート内にWebViewを表示する
レシピ 036 WebViewで用意したHTMLを表示する
レシピ 037 WebViewでカバーフローを作る
レシピ 038 ジェスチャーを認識する
レシピ 039 WebViewをジェスチャーで操作する

Chapter 4 ListViewのレシピ

レシピ 040 所定の位置までスクロールさせる
レシピ 041 表示内容をカスタマイズする
レシピ 042 リンクを設定する
レシピ 043 クリックを検知する
レシピ 044 長押しを検知する
レシピ 045 最後までスクロールしたことを検知する
レシピ 046 次のX件を読み込む

Chapter 5 画像のレシピ

レシピ 047 画像を任意のサイズにリサイズする
レシピ 048 画像を任意のサイズで切り取る
レシピ 049 アニメーションGIFを簡単に表示する
●このレシピについて
レシピ 050 ImageViewをアニメーションする
レシピ 051 ImageViewに反射エフェクトをつける
レシピ 052 点を描画する
レシピ 053 直線を描画する
レシピ 054 四角形を描画する
レシピ 055 円を描画する
レシピ 056 楕円を描画する
レシピ 057 弧を描画する
レシピ 058 パスを描画する
レシピ 059 Bitmapに描画する
レシピ 060 拡大縮小可能なImageView

Chapter 6 マルチメディアのレシピ

レシピ 061 音声ファイルを再生する
レシピ 062 マイクから録音する
レシピ 063 音を感知するスイッチを作る
レシピ 064 カメラの映像にビューを重ねる
レシピ 065 ギャラリーから写真を選択する
レシピ 066 動画を撮影する
レシピ 067 動画を再生する
レシピ 068 再生中の動画にビューを重ねる

Chapter 7 ハードウェアのレシピ

レシピ 069 シェイクを検知する
レシピ 070 バッテリーの状態を取得する
レシピ 071 近接センサーを使う
レシピ 072 明るさセンサーを使う
レシピ 073 位置情報を取得する
レシピ 074 方位を取得する
レシピ 075 地磁気センサーを使う
レシピ 076 端末の向きでレイアウトを切り替える
●端末別のセンサー搭載状況

Chapter 8 ネットワークのレシピ

レシピ 077 ネットワークの接続状況を判定する
レシピ 078 Webサービスから天気情報を取得する
レシピ 079 メールを送信する

Chapter 9 データベース(SQLite)のレシピ

レシピ 080 データベースをオープンする
レシピ 081 テーブルを作成する
レシピ 082 レコードを追加・更新・削除する
レシピ 083 レコードを検索する
レシピ 084 テーブルを変更する
レシピ 085 検索結果をListViewに表示する

Chapter10 インテントのレシピ

レシピ 086 ブラウザを呼び出す
レシピ 087 電話を呼び出す
レシピ 088 カメラを呼び出す
レシピ 089 動画を撮影するアプリを呼び出す
レシピ 090 ボイスレコーダーを呼び出す
レシピ 091 音声認識を呼び出す
レシピ 092 特定のアプリを呼び出す

Chapter11 外部連携のレシピ

レシピ 093 音楽データを取得する
レシピ 094 標準の音楽アプリにアクセスする
レシピ 095 Tumblrに写真をアップする
レシピ 096 Evernoteと連携する
レシピ 097 AdMobの広告を組み込む
レシピ 098 Googleドキュメントの一覧を取得する
レシピ 099 Googleドキュメントのファイルをダウンロードする
レシピ 100 Googleドキュメントに文書を保存する
レシピ 101 Googleカレンダーから予定を取得する
レシピ 102 Twitter4JでxAuthを使う

Chapter12 ホーム画面のレシピ

レシピ 103 ウィジェットを作る
レシピ 104 ライブ壁紙を作る

AndroidSDK開発のレシピ―104個のレシピで学ぶAndroidアプリ開発の極意

AndroidSDK開発のレシピ―104個のレシピで学ぶAndroidアプリ開発の極意