iOS、Android、Unityなどのアプリ開発について、初心者向けの内容を『RainbowApps』講師陣が分かりやすく解説していきます。
ツールやドキュメントの進化を知ろう!過去から学ぶAndroid開発の今【初心者向けアプリ開発3分tips】
目次
【1】Google Play開発者サービスとは?
皆さんのAndroid端末にはどんなアプリが入っていますか? Androidの「設定」→「アプリケーション」で確認してみましょう。インストールされたアプリや、最初から入っているアプリが確認できます。
次は「すべて」という項目で確認してみましょう。この中に『Google Play開発者サービス』という見慣れないアプリが入っているのがお分かりになりますか?
このアプリは位置情報、広告、PUSH通知、マルウエア検出などを担ってくれる、ユーザー、開発者ともに非常にうれしいアプリです。
開発者はGoogle Play servicesというライブラリを用いてこのアプリと連携し、先ほどの機能を実装できます。自動的にインストールや更新が行われるため、ユーザーに特別な操作をしてもらう必要はありません。
以前は自力で作るかOSのアップデートを待つかしかなかった機能を、Google Play開発者サービスによって比較的楽に実装できるようになりました。
>> Android DevelopersのGoogle Play servicesに関する公式ドキュメント
【2】Fragmentの登場
Fragmentは、Android3.0(Android初のタブレット)から導入された概念です。
Fragmentが登場する前は、広告の表示、通信の開始・キャンセルなどのライフサイクルに関する処理や、画面表示に関する処理は、全てActivityに実装していました。
そのためActivityがいろんなクラスと複雑に絡み合い、数千行の特大コードができ上がるなど、メンテナンスが難しくなるケースがありました。
そこで登場したのがFragmentです。FragmentはActivityの画面や動作の一部を担当するという機能を持っています。そのため、1つのActivity内で
■画面上部の処理は「UpFragment」に
■画面中段の処理は「MiddleFragment」に
■広告の処理は「AdFragment」に
というような形で、複数のFragmentを組み合わせて表示できます。
このように、Fragmentを組み合わせて1つの画面を作るので、ある画面では「UpFragmentは必要だけど、AdFragmentはいらない」というような別の要望にもコードを大幅に書き換えずに対応できます。
>> Android Developer サイトのFragmentについての詳細資料
私も以前、Fragmentについての講演をしましたので、こちらも参考にしてください
【3】バージョン差分の対応が楽になるSupport Library
Androidはこれまで多くのバージョンアップをし、さまざまな機能を追加してきました。しかし、必ずしも最新のAndroid OSにバージョンアップされるわけではありません。そのため、ある人は最新のOSを、ある人は数年前のOSを使用する問題が発生しました。
その問題を解決するために登場したのがSupport Libraryです。このライブラリは、古いOSでも新しいOSの機能を使うことを目的にしたライブラリです。
例えば、先ほど説明したFragmentはAndroid3.0から導入されたため、それより前のバージョンでは使用できません。しかしSupport Libraryを使用すると、Android3.0未満の端末でもFragmentを使用できます。
Support Libraryの機能はかなり強力です。幅広いユーザーに向けてアプリを届けるためにぜひ利用してください。
>> Android DevelopersのSupport Libraryに関する公式ドキュメント
【4】変わっていくテーマ
Androidの全体的な雰囲気を決める「テーマ」もいくつか存在します。
Android 3.0から はHoloというテーマが導入されました。HoloにおいてActionBarは特徴的で、アイコン、タイトル、アクションボタンなどが上部にまとめられました。
>> Android DevelopersのActionBarに関する公式ドキュメント
そして最新のOSである5.0(Lolipop)では、Googleが提唱する新しいMaterialデザインを取り込んだMaterialと呼ばれるテーマが登場しました。
AndroidにおいてはHoloテーマを継承しつつ、影やアニメーションなどを使いアプリを使用する楽しさ、一貫性を追求しています。
【5】見逃してはいけない「Depricated」
Android OSのバージョンアップに従って、不具合やある事情で使えなくなるクラスやメソッドがあります。このようなクラスやメソッドは、deprecated(非推奨)という形で公式ドキュメント上に記載されます。
Webを表示するWebViewは脆弱性のあるメソッドなどが非推奨になっています。
非推奨となったクラスやメソッドを使い続けることは、脆弱性のあるアプリとなり攻撃を受けたり、新しいOSで正しく動作しなくなる可能性があります。
新しいOSがリリースされた際は必ず確認しましょう。正しいコードを保つには以下のような方法を採ってみてください。
■OSバージョンアップによるAPIの差分を確認する。
>> Android API Differences Report
■Lintを使ってコードの警告を表示する。
>> Improving Your Code with lint
【6】開発環境も変わる
これまでAndroidを開発するにあたっては、Eclipseを利用するのが主流でした。ですが、EclipseよりもAndroid開発に最適化されたAndroid Studioが登場しました。
Android Studioを使用すると、以下の様な点が便利になります。
■アプリの開発版、リリース版を簡単に切り替えられる
■画像や色のプレビューが簡単にできる
■ライブラリの取り込みが柔軟にできる
など。
今はベータ版ですが、Googleとして推している開発環境なのでぜひ使ってみてください。
【7】徐々に増えるタブレットユーザー
近年、タブレット端末を使うユーザーが増えています。使用する状況としては、PCの代わりとして使用したり、就寝前のひとときに使用したりなど屋内が多いです。最近では幼稚園や小学校など教育機関に向けて導入されることもちらほらあります。
Androidは3.0からタブレットへの対応を続けています。Google Playにおいても7インチ、10インチのタブレット用画像をアップロードできます。これらの画像を用意することでGoogle Playでの露出が多くなります。
【まとめ】
Androidを取り巻く環境はこれからも加速していきます。最近のGoogle I/Oでは車を制御したり、ウエアラブル端末にAndroidが採用されるという発表がありました。
これからも変化についていくことがエンジニアにとって最も重要です。昔5年やった人よりも、今1年やっている人の方が価値が高くなることもあります。ぜひ過去を知り、今に活かしてもらえればと思います。
【講師プロフィール】
RainbowApps講師
曽川義英(そがわ・よしひで)
1985年生まれ。愛媛県出身。2010年、ナビタイムジャパンに入社。乗換NAVITIMEなど新規立ち上げプロジェクトを経験する。2013年からリクルートライフスタイルで業務委託と並行して、RainbowAppsでAndroid講師を担当。2013年末にチームEGG株式会社を起業し、リズムゲーム『ビート&マジシャンズ』に力を入れている。最近話題のクラウドファンディングにも挑戦中。
スクール講師がアドバイス!初心者のためのアプリ開発3分tips
アプリ開発スクール『RainbowApps』
日本で初めて、プログラミング受講料の無料提供を始めたアプリ開発スクール。iPhone、Android、Unity、HTML5、AWSコースを展開しており、受講用のMac完備、初心者・未経験者から受講OK。特徴は、大手IT企業からベンチャーまで、受講後の就職・転職もサポートしている点だ。全国で教室を開いているほか、オンライン講座も展開中
RELATED関連記事
RANKING人気記事ランキング
米国優位が揺らぐ?ひろゆき「CPUの進化でGPU神話って崩壊しません?」【AI研究者・今井翔太が回答】
NEW!
表面的なテクニックより「基礎基本の重要性」に気付かされた一冊【Node.js 日本ユーザーグループ代表・古川陽介】
AWS認定資格10種類を一覧で解説! 難易度や費用、おすすめの学習方法も
NEW!
正論モンスター化に要注意!ぎくしゃくしない「ミスの指摘」のコツ【澤円「コミュ力おばけ」への道】
社会で成功するゲーマーに、ひろゆきが聞く「現実世界を攻略できないゲーマーに足りないものって何すか?」
JOB BOARD編集部オススメ求人特集
タグ