Androidアプリをゼロから2週間で開発する【0〜3日目】

2019-06-21

突然ですが、Java未経験の非エンジニアである僕が、2週間独学で勉強してAndroidアプリを開発することにしました。
今回はその過程の記録として、3日目までに行ったことをまとめていきます。

もくじ

  1. 目的と開発環境
  2. Androidアプリ開発に必要なもの
  3. アプリ開発:0日目
  4. アプリ開発:1日目
  5. アプリ開発:2日目
  6. アプリ開発:3日目
  7. 今後の計画
  8. 参考

目的と開発環境

スマホアプリを開発出来るようになりたいと思い立って勉強を初めました。
Androidを選んだ理由としては、お金がなくてMacが買えなかったからです笑

Swiftは2015年にオープンソース化されてLinuxでも書けるようになったみたいなんですが、アプリのビルドにはMacが必須のようです。
逆に他の言語は全てMacでも使えるっていうんだからずるい話ですよね。
僕はキーボードとトラックポイントが好きでThinkPad使ってるんですが、このまま開発やっていくならやっぱりMacに買い替えたほうが良いのかなーとは思います。

さて、話がそれましたが、今回のチャレンジの目的についてです。
2つあります。
1つは、スマホでストレスマネジメントが出来るアプリをつくりたいと思ったから。
もう1つは、現在絶賛転職活動中なのですが、第一志望の最終面接の前に少しでもスマホアプリ開発に触れておきたいなと思ったことです。

とりあえず2週間でストアに公開までできればと思ってるのですが、正直現時点ではゴールが見えません。
というか多分審査期間とかあるので、2週間で公開は無理かもですね。
まぁそのあたりのことは後で調べておきます。

さて、目的を簡単にまとめた所で、これからAndroidアプリ開発を行う環境について書いておきます。

Androidアプリ開発に必要なもの

Androidアプリ開発に必要なものをまとめてみました。

PC環境については、以下のスペックを推奨。

前述の通り、今回僕はLinuxOSのUbuntuで環境構築を行いました。
Linuxでの環境構築には、AndroidStudioとJDKの他に、仮想環境を実行するためのKVMを設定する必要がありました。
環境構築の詳細は割愛しますが、参考にしたサイトだけ貼っておきます。

①Android Studioのダウンロード
②Android Studioのインストール
③Ubuntu 18.04にKVMをインストール

アプリ開発:0日目

アプリ開発0日目。
アプリ開発を決心した日に行ったことです。

Android開発のために購入したのは、初学者向けの書籍とAndroidスマホでした。
購入した書籍は、『基礎&応用力をしっかり育成! Androidアプリ開発の教科書 なんちゃって開発者にならないための実践ハンズオン』です。
最新のAndroidStudio3.0に対応している書籍の中で最も良さそうな本を購入しました。

スマホは『AndroidOne S3』にしました。
AndroidOneはOSのアップデート保証があり、2年間は最新のOSに更新できるため、アプリ開発にちょうど良いかなと思い購入しました。
イオシスの未使用品で16000円と、かなりお手頃な価格で買うことができました。
レビューも悪くなさそうなので届くのが楽しみです。

アプリ開発:1日目

アプリ開発チャレンジの初日に行ったことです。

JavaもAndroid開発も初めてだったので、とりあえず入門書を読み進めてました。
PC上でAndroidOSを動かせるのはちょっとびっくりでした。
普通にアプリとかもダウンロードできたので、これがあればPCでスマホアプリも使えますね。
何かPCで動かしたら面白そうなアプリとかあるかなぁ。

アプリ開発:2日目

さて、こちらは2日目の内容。

Androidスマホのビュー(画面)はXMLで記述します。
これまでHTMLは何度も書いたことがあったのですが、XMLは初めて書いたので新鮮でした。
とはいえ、基礎的な部分はHTMLと共通しているところが多かったので、HTMLを経験していれば習得は早そうだなと感じました。

そもそもXMLとは何かということについてはこのサイトを参考にしました。
5分でわかる!XML超入門 第01回 何はともあれXMLって何?

Androidプロジェクトのファイル構成はざっくり以下の通りです。

あと、エミュレーターの起動時に"Android Studio guest hasnt come online in 7 seconds"というエラーが返ってくることがありました。
すでに既知のエラーのようで、こちらを読んだら解決しました。
英語で書かれてますが、簡単に言うとADVマネージャーでCold Boot instead of Quick bootを選択すると解決します。
何のエラーなのかはよくわかってないので、詳しい人がいたら教えてほしいです。

アプリ開発:3日目

3日目は結構いろいろできました。

ツイート埋め込み、便利ですね笑
3日目は、イベントリスナとイベントハンドラを作成して、初めてアプリケーションを作成することができました。
最終的に完成したのはこちら。

フォームで入力されたキーワードでGoogle検索を行うアプリです。(普通にGoogle使え笑)
Androidアプリでインターネット上のページを参照するにはWebViewというビューを作成する必要がありました。
こちらの記事が分かりやすかったのでぜひ。

今後の計画

4日目以降も引き続き、JavaとAndroidの勉強をしつつ、7日目までに入門書を一通り読み切りたい!
まだアプリ開発の全体像がつかめなくてゴール設定もうまくできないので、とりあえずこのまま手探りで進めていきます。

やっぱり誰かメンターになってくれる人がいた方が絶対習得早いよなー。
とはいえ無い物ねだりをしても仕方ないので、出来ることを一つ一つやっていきましょう。

参考

・BOOK
基礎&応用力をしっかり育成! Androidアプリ開発の教科書 なんちゃって開発者にならないための実践ハンズオン

スッキリわかるJava入門 第2版 スッキリわかるシリーズ

・WEB
①Android Studioのダウンロード

②Android Studioのインストール

③Ubuntu 18.04にKVMをインストール

Android Studio guest hasnt come online in 7 seconds

Androidアプリ開発でWebViewを追加する方法【初心者向け】