マーリンアームズ サポート   翻訳   コンサル   講座   アプリ   コラム

Androidアプリ開発入門
ローレン・ダーシー + シェーン・コンダー著 武舎広幸監訳 阿部和也+上西昌弘訳

はじめに

Android(アンドロイド)は、携帯機器の市場において世界的に大きな注目を集めています。SDKは数ヵ月ごとにアップデートされそのたびに機能強化されており、搭載する携帯機器は増え続けています。Android搭載の携帯電話の数はすさまじい勢いで増加していますが、それだけでなく、Androidを搭載したタブレット型の端末や、ネットブック、電子ブックリーダも多数登場してきています。Androidを搭載した電子レンジや洗濯・乾燥機を作ろうという動き(http://bit.ly/bGqmZp)さえ出ています。電話会社やモバイル機器の企業はこのプラットフォームに真剣に取り組んでおり、大量の資金をAndroid搭載機器の広告に投入しています。

ほんの少し前まで、Androidは専門家だけが注目を集めるプラットフォームでした。しかし、今ではiPhoneなど既にその地位を確立した機器と競合する存在になったといってもよいでしょう。

ここで、どのプラットホームがベストかといった議論に入るのはやめておきましょう。ひとつのプラットフォームだけが全体を支配するということは考えられません。そんな議論をしても時間の無駄ということになります。世界中の人がさまざまな場所でさまざまな方式の電話を使い、そしてその選択の理由も、価格、入手しやすさ、サービスエリア、機能、デザイン、慣れ、互換性などなど、さまざまなのです。すべてを満たしてくれる携帯電話はないのです。

私たちはほとんどすべてのモバイルプラットフォーム用に開発を行ってきましたので、各プラットフォームの長所も短所もよく知っています。その経験から考えて、あるプラットフォームが他のプラットフォームよりもよいとか、悪いとかいったことは一概には言えません。それぞれのプラットフォームにはそれぞれ長所があり、その長所を活かすようにすべきなのです。

特定のプロジェクトに対して、どのプラットフォームがよいかを検討すべきなのです。できるだけ多くのプラットフォームに対応するのがよいということもあるでしょうが、とくに最近では、Androidがもっとも適しているというケースが増えてきました。価格が安く、開発が容易で、世界中に何百万、何千万という(潜在的な)ユーザーがいます。何より、ほかのプラットフォームにあるような制約が少ないのです。

しかし、Androidは誕生からそれほど時間がたっていないため、まだ十分にその機能を発揮し切れていない面ももっています。このためSDKは頻繁に更新されますし、新しい機器も次々と市場に投入されています。このため、最新情報を入手するよういつも注意を払っていなければなりません。

Androidでの開発をドライブに喩えれば、まだまだ「快適なドライブ」とは言えず、ときどきデコボコ道に遭遇することになります。しかし「エキサイティングなドライブ」ができることは間違いのないところです。皆さんも、この時流に乗ってすばらしいアプリケーションを開発して、一旗揚げてみてはいかがでしょうか。

それでは一緒に「エキサイティングなドライブ」に出かけることにしましょう。

対象読者

Androidが搭載された電話機やタブレットなどで、趣味あるいは仕事でアプリケーションを作ってみたいと思っている人なら、誰でもこの本の対象読者です。モバイル分野に進出したいと思っているプログラマーや、アプリについて面白いアイディアをもっている起業家の方々、この本は皆さんのための本です。

皆さんがプログラミング言語Javaについて基本的な知識をおもちであることを仮定しています。たとえば、クラス、メソッド、継承などといった概念に関する知識です。そうは言ってもAndroidの開発を通してJava言語を学ぶというのも悪い選択ではありません。この本では、Javaの複雑な機能を使うことは避け、初心者の方々にも理解できるようなコードを使うよう努めました。ですから、Javaに関する基本が書かれた書籍の最初の数章か、オンラインで読めるチュートリアル程度の知識を身につければ、十分この本の内容を理解していただけると思います。

パソコンにアプリケーションをインストールした経験はおもちだと仮定しています。Androidの開発には、Eclipse、Java JDK、Android SDKといったアプリケーションや開発環境のインストールが必要です。また、基本的なAndroid携帯の使い方も知っていると仮定しています。しかし、携帯電話のアプリケーション開発に関する経験は前提としていませんのでご安心ください。

本書の構成

この本は24の章からなっています。各章は1時間を目処に読み終えられるよう書かれています。24の章を読み終わる頃には、ネットワーク機能や位置情報を処理し、ソーシャルネットワーク機能ももつ高度なアプリケーションを作れるようになるはずです。各章は前の章で説明した概念の上に新しい概念を積み上げる形で構成されており、徐々にアプリケーションに機能を加えていく形になっています。

Android SDKは頻繁にアップデートされていますので、この本で紹介している例題は、できる限りバージョンに依存しないようなものを選ぶようにしました。

この本は大きく次の6つの部分に分かれています。

第1部 Androidの基礎

第1部はAndroidに関する基礎的な概念やツールの紹介です。開発用ツールのインストールを行い、最初のAndroidアプリケーションを作ります。第1部ではこのほか、Androidアプリケーションを書くために必要なデザインの指針を紹介します。Androidアプリケーションの構成を説明するとともに、文字列、画像、ユーザーインタフェース(UI)要素などをどのように扱ってアプリケーションを組み立てるのかを説明します。

第2部 アプリケーションフレームワーク

第2部では、この本のこれ以降で利用するアプリケーションの枠組(フレームワーク)を構築します。アニメーション付きの起動画面に続いて、メインメニューが表示され、設定、ヘルプ、スコアといった画面をもつゲームアプリケーションの枠組を作成します。また、基本的なUIデザイン、ユーザーからの入力の取得、ダイアログボックスの表示といった事柄についても学びます。また、ゲーム画面の中核となるアプリケーションロジックの実装も行います。

第3部 アプリケーションへの機能追加

第3部ではAndroid SDKのより細かな部分に入っていきます。この本で作成するアプリケーションにさまざまな機能を加えていきます。画像や内蔵カメラ、位置情報の処理方法、ネットワーク機能の利用方法、ソーシャルネットワークへの対応方法などを学びます。

第4部 アプリケーションの改良

第4部ではアプリケーションをカスタマイズする方法を説明します。解像度や大きさの異なる端末に対応する方法や、別の言語をサポートする方法(ローカライゼーション)などについて説明します。また、アプリケーションのテストについても解説します。

第5部 アプリケーションの公開

第5部では開発したアプリケーションをAndroid Marketで公開する方法について紹介します。

第6部 付録

第6部は付録です。Androidの開発環境の準備の仕方、Eclipseの利用法、参考資料などを紹介しています。