【Java編】ゼロからはじめる一番やさしいAndroidアプリ開発入門<はじめてのアプリ作成からリリースまで>
4.4 (12 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
156 students enrolled
Wishlisted Wishlist

Please confirm that you want to add 【Java編】ゼロからはじめる一番やさしいAndroidアプリ開発入門<はじめてのアプリ作成からリリースまで> to your Wishlist.

Add to Wishlist

【Java編】ゼロからはじめる一番やさしいAndroidアプリ開発入門<はじめてのアプリ作成からリリースまで>

Javaの知識もプログラミング経験も一切不要。Android Studio2.3によるアプリ開発の基礎をゼロから身につけられる完全初心者向けプログラム。はじめてのアプリからGoogle Playでのリリースまで網羅。スライド・コード付き。
4.4 (12 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
156 students enrolled
Price: $200
30-Day Money-Back Guarantee
Includes:
  • 22.5 hours on-demand video
  • 1 Article
  • 4 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Android studio2.3を使ったアプリ開発ができるようになります。
  • 世界で一番使われているプログラミング言語「Java」の基礎が習得できます。
  • 効果音を出すAndroidアプリを作れるようになります。
  • タイマー処理(Timer)を行うAndroidアプリを作れるようになります。
  • データベースを使ったAndroidアプリを作れるようになります。
  • 最新のデータベース「Realm」が使えるようになります。
  • Google PlayからAndroidアプリをリリースできるようになります。
View Curriculum
Requirements
  • パソコンとAndroid4.0以上が搭載されたスマートフォンあるいはタブレットPC
  • 基本的なパソコンの操作(マウス操作・インターネット閲覧・ファイル操作など)はできておいてください
  • できれば64bitのWindows8以上のパソコンが望ましいです(Windowsで撮影を行っているため、macの場合はキーボード操作が異なります)
  • Androidアプリを作りたいというあなたの熱意
Description

(注)講義は関西弁で展開されます。聞く方によってはややクセが感じられるかと思いますので、無料で公開しているレクチャー動画をご覧になった上で、受講のご判断をして頂きますようお願いいたします。


Androidアプリは世界のスマートフォン市場で約9割という圧倒的なシェアを誇ります。



「一番やさしいAndroidアプリ開発入門」は、その莫大な市場であるAndroidアプリの最低限の開発スキルを、Javaの知識もプログラミング経験も全くない人でも習得してもらえるように設計された、現役アプリプログラマーによるプログラミング講座です。



具体的なアプリを作りながら、実践的なスキルを無理なく「からだでおぼえる」ことができます。



また、初心者がつまづきそうな部分もスモールステップで丁寧に解説していきますので、これまであえなく挫折してしまった経験のある方でも着実に習得していただけます。


本講座では、4つのアプリ(自己紹介アプリ・ツッコミマシーン・計算脳トレ・わたしだけの単語帳)をハンズオン形式で一緒に作っていきながら、Androidアプリ開発手法を一通り学んでいただける内容となっています。



また、最終回ではGoogle Playからアプリをリリースする方法についても習得してもらいますので、あなたのオリジナルアプリを世界に向けて発信することができるようになります。



この講座は完全初心者向けの入門講座ですので、膨大な量のAndroidの機能からすれば、ご紹介できるワザはわずかです。しかし、この講座でご紹介するワザだけでもアプリを出すことが十分にできます。



また、この講座を受講頂くことによって、これまで敷居が高くて全くワケがわからなったAndroidプログラミングの世界のワケがわかるようになって、どんどん新しいワザを楽しんで習得頂けるようになります。



そして、ワケがわかるようになれば、ご自身で自律的にどんどんと学んでいただくことができます。この講座を受講頂くことで、そのための基礎体力を身につけることができます。



各セクションの最後では、ソースコードをダウンロードいただけますので、動作を確認したり、応用を加えてオリジナルのアプリを作っていただくことができます。

また、講座で使用した100枚超のスライドテキストもダウンロードいただけますので、PCの使えない環境でも効果的に復習していただくことができます。


さあ、あなたもこの機会にAndroidアプリ開発に挑戦してみませんか。



(注)講義は関西弁で展開されます。聞く方によってはややクセが感じられるかと思いますので、無料で公開しているレクチャー動画をご覧になった上で、受講のご判断をして頂きますようお願いいたします。



<本講座で作るアプリ>

1.はじめてのアプリ(自己紹介アプリ)

Androidアプリを作るための道具であるAndroid Studioの設定を行ってから、はじめてのアプリを作ります。アプリに欠かせないボタンのクリック処理を中心に、画面に文字や画像を出したり、画面から文字を入力するワザを習得してもらいます。


2.ツッコミマシーン

ボタンを押したら音や声が出るツッコミマシーンを作ります。音を出すことを中心に、Javaの大事なワザも習得してもらいます。音を出すことができたら、アプリがぐっと楽しくなりますよ。


3.計算脳トレ

足し算と引き算のシンプルな計算脳トレを作ります。一定時間後に処理を行うタイマー処理を中心に、プログラミングで重要となるワザを習得してもらいます。この計算脳トレからは、いよいよ2画面のアプリです。画面の見た目をきれいに整えるワザも習得できますので、アプリらしい仕上がりになりますよ。


4.わたしだけの単語帳

あなただけのフラッシュカードが作れるアプリです。英単語のみならず、受験勉強にも使えるアプリです。最新のデータベース(Realm)を使うワザも身につけることができますので、クイズアプリなど様々なアプリに応用できますよ。このアプリでは4画面に挑戦していただきます。



<本講座を受講することで習得できる60のワザ>


[Android Studioの使い方関係]

  •  プログラミングの基礎(スマホとは・アプリとは・プログラミングとは)
  •  新しいプロジェクトの作り方
  •  新しい画面(Activity)を追加する
  • 画面のライフサイクル
  • 作ったアプリを実機で動かす
  • 作ったアプリをエミュレーターで動かす
  • TODOタグの使い方
  • パッケージ名の変更の仕方


[レイアウト・マニフェスト関係]

  • 最初に起動する画面を設定する
  • 最初に起動するクラスを設定する
  • 画面の向きを設定する
  • 画面のレイアウトを整える(3つのレイアウト [Constraint Layout / Linear Layout / Table Layout]
  • タイトルバーを消して全画面表示する
  • スマホの画面の大きさの単位(px / dp / sp)
  • アプリで使う文字列をresフォルダで管理する(strings.xml)


[Java関係]

  • クラスと基本データ型の違い
  • 条件分岐(if / switch)
  • 繰り返し制御(for文)
  • ボタンを押したときのクリック処理
  • 画面に文字を出す
  • 文字列をつなげる
  • 文字列の比較
  • 文字列の空白チェック
  • 新しい自作クラスを作る
  • カプセル化(getterとsetter)
  • ラッパークラス
  • 演算子
  • 自作メソッドを作ってコードを部品化させる
  • ビューを動的に表示・非表示させる
  • ビューを動的に使える(使えない)ようにする
  • 画面全体の背景色を動的に変える
  • 乱数(Random)の使い方
  • static(静的)メンバ
  • プルダウン選択肢(Spinner)の使い方
  • リストビュー(ListView)にデータを表示させる
  • RadioButtonの使い方
  • チェックボックス(CheckBox)の使い方
  • Androidでの情報の受け渡し(明示的インテント)
  • 定数(final)の使い方
  • スコープ(変数の使える範囲)
  • コレクションの使い方(ArrayList等)
  • コレクションのシャッフル
  • 一定時間後に自動的に次の処理を行う(タイマー処理:TImer)
  • 効果音の出し方(SoundPool)
  • 確認ダイアログ(AlertDialog)の使い方
  • クラスの継承とメソッドのオーバーライド
  • インターフェースの使い方(クラスの継承との違い)
  • トーストメッセージ(Toast)の使い方
  • ビュー内のアイテムをタップした時の処理
  • ビュー内のアイテムを長押しした時の処理
  • 大量のデータを永続的に保存する(データベースRealmの使い方)


[Google Play関係]

  • Google Playにデベロッパー登録をする
  • Google Playからアプリをリリースする
  • リリースしたアプリのバージョンアップをする


【講座更新履歴】

2017/6/30 Android Studio2.2以上の場合はJDKのインストールが不要となりましたので、該当部分のレクチャー(JDKのダウンロードとインストール)を削除いたしました。


(注)講義は関西弁で展開されます。聞く方によってはややクセが感じられるかと思いますので、無料で公開しているレクチャー動画をご覧になった上で、受講のご判断をして頂きますようお願いいたします。

Who is the target audience?
  • 小学校高学年以上で、Androidアプリを作ってみたいという意欲のある方であれば、どなたでも受講いただけます。
Students Who Viewed This Course Also Viewed
Curriculum For This Course
156 Lectures
22:24:53
+
Androidアプリを作るための道具の準備とスライド資料のダウンロード
3 Lectures 08:59
本講座で使うスライド資料
00:00

Androidアプリを作るための道具であるAndroid StudioのダウンロードとPCへのインストールを行います。

Preview 05:25

この説明はどこに表示されるのでしょうか

0-02:Android Studioの初期設定
03:34
+
第1回:はじめてのアプリを作ろう
16 Lectures 02:15:28

プログラミングを全くやったことがない方のために、プログラミングの基礎として「スマホとは」「アプリとは」「プログラミングとは」の解説をしています。


1-02:プログラミングの基礎
11:09

  • Android Studioをタスクバーにピン止めする 
  • 新しいプロジェクトを作る
  • 既に作ったプロジェクトの開き方(作りかけのプロジェクトも含む)
1-03:Android Studioで新しいプロジェクトを作ってみよう
08:15

  • プログラミングの天才に教わるAndroid Studioに行く前にすべきこと
  • 今回作るアプリの設計図を紙に書く
Preview 08:02

  • スマホアプリを作るためのホップ・ステップ・ジャンプ
  • Android Studioのフォルダ構造
1-05:スマホアプリを作る手順とAndroid Studioのフォルダ構造を知ろう
06:53

  • レイアウトファイルの構造 
  • 「ビュー(View)」とは 
  • 2種類のブロック(道具[クラス]と箱[基本データ型])
  • ビュー(View)は6つだけおぼえておけばよい
1-06:完成図(layoutファイル)の構造を知ろう
06:21

1-07:完成図(layout)にビュー(View)を貼り付けよう
07:05

1-08:今回つくるアプリで使う画像をインターネットから取得しよう
04:00

  • 「resフォルダ」とは
  • 「resフォルダ」に入れるファイルの名前付けの決まり 
  •  Android Studioでファイル名を変更する方法
1-09:resフォルダの構造を知ろう
11:29

  • 「ブロック」は名前をつけないと使うことが出来ない理由
  • レイアウトファイルを作成した最後にやること(infer constraints)
1-10:完成図(layoutファイル)を完成させよう
04:37

  • Javaプログラミングはたったの2ステップしかない
  • 使うブロックを決めて名前をつける(宣言の文) 
  • Javaの文の型は3つしかない 
Preview 12:58

  • Javaファイルの構造(クラスとメソッド) 
  • レイアウトとJavaファイルのビューの結び付け[findViewById]
1-12:完成図(layout)に貼り付けたビュー(View)をJavaファイルと結び付けよう[findViewByIdメソッド]
12:33

  • 名前をつけたブロックに何をさせるかを決める(命令の文) 
  • ボタンのクリック処理5ステップ
1-13:ボタンのクリック処理のソースコード(Java)を書こう(ボタンのクリック処理5ステップ)
10:02

  • 画面に画像を出すコードの書き方[setImageResources()]
  • 命令の文を使う(メソッドを使う)ときの注意点
  • 画面に文字を出すコードの書き方[setText()]
  • 画面から入力した文字を”文字列”に変換させる2ステップ[String.valueOf()]
  • 文字列をつなげる
1-14:画面に画像と文字を出すためのソースコード(Java)を書こう
14:50

  • 作ったアプリをエミュレーターで動かす
  • 作ったアプリを実機で動かす(開発者向けオプションの設定の仕方)
1-15:作ったアプリを動かしてみよう
08:50

1-16:アプリ起動時にビューに文字や画像を出したくないときのやり方
05:03
+
第2回:ツッコミマシーンアプリを作ろう
16 Lectures 02:15:14

2-02:今回作るアプリの設計図を書こう
04:07

  • 今回作るアプリの新しいプロジェクトを作る
  • APIレベルとは(Target Android Devices画面の説明)
  • レイアウトファイル(完成図)とJavaファイル(説明書)はどこで結びついているのか(Customize the Activity画面の説明)
2-03:今回のアプリのプロジェクトを作ろう
07:58

2-04:完成図(layoutファイル)を作ろう
11:02

  • 効果音ファイルを入れるrawフォルダの作り方 
  • アプリで使う効果音ファイルをインターネットから取得する(効果音ラボ)
  • resフォルダに入れるファイルの名前付けの決まり(ファイル名の変更)
  • ボタンに表示させる文字をレイアウトファイルで変更する
2-05:アプリで使う効果音ファイルを準備しよう
09:06

2-06:ボタンのクリック処理のソースコード(Java)を書こう
13:01

  • Androidで音を出すための2つの方法(SoundとMusic) 
  • 「メモリ」とは(コンピューターの処理を本を読むことにたとえる) 
  • ストリーミングとは(短い音と長い音の鳴らし方の違い)
2-07:Androidで音を出すための2つの方法
09:42

  • 効果音を出すための5ステップ
  • Android Developers(開発者向け公式リファレンス)の見方
2-08:効果音(sound)を出すための5ステップ
05:58

  • 道具(クラス)に名前をつける2ステップ(たこ焼きにする=インスタンス化)
  • 道具(クラス)のインスタンス化がonCreateメソッドの後でないと出来ない理由
  • レイアウトファイルに貼り付けたビューをインスタンス化する必要がない理由
2-09:インスタンス化とは(クラスに名前をつけるための2ステップ)
09:29

  • SoundPool(効果音を出す道具[クラス])のインスタンス化 (条件分岐[if文]と非推奨[deprecated])
2-10: SoundPool(効果音を出すクラス)をインスタンス化しよう
06:49

  • サウンドIDを入れるための整数の箱(基本データ型)の準備
  • 道具(クラス)と箱(基本データ型)との違い
  • メソッドの「引数」と「戻り値」(サウンドIDが必要な理由) 
2-11:サウンドIDを入れるための整数の箱(基本データ型)を準備しよう
09:44

  • サウンドIDを入れる整数の箱(int)を設定する 
  • 「継承」とメソッドのオーバーライドとは
2-12:メソッドのオーバーライドとは
09:19

2-13:効果音ファイルをメモリにロードしてサウンドIDを取得しよう
06:00

  • プログラミングの流れは3つしかない
  • ビューのリソースIDを取得するコードの書き方(view.getId())
  • switch文の書き方
  • 押されたボタンに対応する効果音を出すコードを書く(soundPool.play())
2-14:押されたボタンに対応する効果音を出すコードを書こう(Java)
10:17

  • 使い終わった効果音をメモリから後片付け(release)する(onPauseのオーバーライド)
  • 画面(Activity)のライフサイクル 
  • 効果音ファイルのメモリからの後片付けをonPauseメソッドでやる理由
  • 効果音ファイルのロードをonCreateではなくonResumeメソッドでやる理由
2-15:使い終わった効果音ファイルをメモリから後片付けしよう
13:05

  • アプリを動かしたときにエラーになったらどうなるか
  • SoundPoolのインスタンス化をonCreateではなくonResumeでやる理由
  • アプリの表示名の変え方(res=>strings=>app_name)
2-16:作ったアプリを動かしてみよう
07:36
+
第3回:計算脳トレアプリを作ろう①
17 Lectures 02:14:22

3-02:今回作るアプリの設計図を書こう
06:23

  • 今日作るアプリのプロジェクトの作成
  • マニフェストファイル(AndroidManifest.xml)とは
  • マニフェストファイルから画面の向きを横向きに設定する
3-03:新しいプロジェクトを作ってアプリの画面を横向きに設定しよう
12:39

  • レイアウトファイルに貼り付けたビューの横幅と文字の大きさを変える
  • レイアウトファイルに貼り付けたビューを画面の真ん中に配置する
  • レイアウトファイルに貼り付けた通りにビューを画面に表示させる(Infer Constraints)
  • アプリで使う画像をインターネットから取得してresフォルダに入れる
3-04:アプリの完成図(layoutファイル)を作ろう
15:38

3-05:完成図(layout)に貼り付けたビューをJavaファイルと結び付けよう
06:09

3-06:リソースIDとは(R.javaファイルの正体を探る)
05:54

3-07:型変換とキャスト(findViewByIdメソッドの前でビューの型変換をしないといけない理由)
07:59

3-08:押されたボタンのリソースIDを取得しよう(Java)
06:35

3-09:プログラミングにおける「=」は「等号」ではなく「代入」
03:06

  • 押されたボタンの種類によって処理を分ける(条件分岐)
  • 演算子とは
3-10:押されたボタンの種類によって処理を分岐させよう(条件分岐)
06:10

  • 設計図で書いた処理を条件分岐の文にコメントで振り分ける
  • 乱数(Random)の使い方①(問題の2つの数字をランダムに選び出す)
3-11:問題の2つの数字をランダムに出そう(乱数[Random]の使い方)
08:33

3-12:数字を画面に表示させる際の注意点(TextView#setTextメソッドのトラップ)
07:25

3-13:計算の方法(+or―)をランダムに出そう(乱数と条件分岐の併用)
06:53

  • こたえ合わせボタンを押した場合の処理の確認
  • 同じ「2」でも「文字」と「数字」とでは違う
  • 画面から入力した文字を数字に変身させる3ステップ
  • ラッパークラスとは
3-14:画面から入力したデータを数字に変換させるための3ステップ
10:35

3-15:こたえ合わせをして〇・×画像を出そう
05:57

  • ビューを動的に表示させる(view.setVisibility(View.VISIBLE)) 
  • 作ったアプリを実機で動かしてみる 
  • 自作メソッドを作って部品化する(問題を出す処理とこたえ合わせ処理をメソッドにして外出し)
  • メソッドの作り方と呼び出し方
3-16:自作メソッドをつくって「問題を出す」処理と「こたえ合わせ」処理をonClickメソッドから外出ししよう(コードの部品化)
12:11

3-17:クラスとメソッドの正体を探る(TextViewを例に)
06:24
+
第4回:計算脳トレアプリを作ろう②
20 Lectures 02:36:50

4-02:今回作るアプリの設計図を書こう
09:19

  • 前回作ったプロジェクトを開く
  • 新しい画面(Activity)を追加する
4-03:前回作ったプロジェクトを開いて新しい画面を追加しよう
07:17

4-04:マニフェストファイルから最初に起動させる画面を設定しよう
06:57

4-05:メニュー画面の完成図(lauout)を作ろう
05:55

4-06:脳トレ画面の完成図(layout)を修正しよう
10:59

4-07:メニュー画面のボタンのクリック処理のコード(Java)を書こう
09:27

  • Spinner(プルダウン選択肢)の使い方5ステップ 
  • 選択肢をセットするためのArrayAdapterとは 
4-08:プルダウン選択肢(Spinner)の使い方5ステップ
05:32

  • ArrayAdapterに数字を入れたい場合にすべきこと(ラッパークラス)
  • ArrayAdapterに選択肢をセットしてSpinnerとつなぐ
  • Spinnerで選択したアイテムをゲットするコードをonCreateメソッドで書かない理由
4-09:選択肢をArrayAdapterにセットしてSpinnerとつなごう
11:31

4-10:インテントとは(渡し方3ステップ)
07:34

4-11:スコープとは(変数の使える範囲)
04:53

  •  Spinnerで選択したアイテム(問題数)をゲットして数字の箱に入れる
  • インテントを引数にしてstartActivityメソッドで2画面目を開く(実機で試す)
4-12:選択した問題数を脳トレ画面にインテントを使って渡そう
08:22

4-13:「もどる」ボタンを押した場合の処理用の自作メソッドを作ろう(脳トレ画面)
11:21

  • 画面が開いたときに問題を自動的に出すようにする 
  • 前の画面から渡された情報を受け取る(インテントの受け取り方3ステップ)
  • インテントを受け取るときにIntentクラスをインスタンス化する必要がない理由
  • インテントに格納された情報を受け取る
4-14:メニュー画面から渡された情報(問題数)をインテントで受け取ろう(受け取り方3ステップ)
09:22

  • Bundleとは(保管したオブジェクトを守ってくれる「金庫」)
  • インテントを渡すときにBundleが出てこなかった理由
4-15:Bundleとは(保管したオブジェクトを守ってくれる「金庫」)
09:52

4-16:ボタンを動的に使える(使えない)ようにしよう
08:36

  • 正答率を計算して表示させる
  • のこり問題数がなくなった場合の処理の実装
4-17:正答率の計算と最後の問題が終わった時の処理のコードを書こう(Java)
09:05

4-18:デバッグモードの使い方(1行ずつプログラムを実行させる方法)
02:36

4-19:「型変換」を使って正答率を正しく計算させよう
04:47

  • 前の画面に戻る処理 [Activity#finish()]
  • 前の画面に戻るときになぜIntentを使わないのか(インスタンス化の本質)
4-20:前の画面に戻る処理のソースコード(Java)を書こう
08:10
+
第5回:計算脳トレアプリを作ろう③
23 Lectures 03:08:40

5-02:今回作るアプリの設計図を書こう
08:42

5-03:アプリで使う小道具(画像・音)をresフォルダにセットしよう
05:59

  • マニフェストファイルから画面の向きをタテ向きに設定する
  • タイトルバーを消して全画面表示に設定する(styles.xml)
5-04:タイトルバーを消して全画面表示させよう
07:18

  • wrap_contentとmatch_parentとは
5-05:メイン画面の完成図(layout)を修正しよう
04:36

  • スマホの画面の大きさの単位(px/dp/sp)
  • ピクセル(px)とは
Preview 08:53

5-07:完成図(layout)におけるビューの親子関係・上下関係
04:03

  • レイアウト(layout)は3つだけおぼえておこう
  • ConstraintLayoutはとりあえずこれだけ知っておこう
5-08:Constraint Layoutとは
10:32

  • LinearLayoutはとりあえずこれだけ知っておこう
  • TableLayoutはとりあえずこれだけ知っておこう
5-09:Linear LayoutとTable Layout
06:47

  • 完成図(レイアウトファイル)の作成(2画面目:activity_main.xml) 
  • 1方向に並べたビュー群の幅を相対的に調整する(layout_weightの考え方) 
  • レイアウトファイルにおける「parent」の意味 
  • ビュー内の文字を縦方向に中央寄せする(gravity)
5-10:脳トレ画面の完成図(layout)を作ろう①
17:47

5-11:脳トレ画面の完成図(layout)を作ろう①
10:57

5-12:今回完成図(layout)に追加したビューをJavaファイルと結び付けよう(脳トレ画面)
08:38

  • 今回加える処理を設計図からJavaファイルにコメントで追加する
  • onClickメソッドの修正(次の問題を出すボタンの廃止と電卓ボタンの追加に伴う自作メソッドの作成)
  • 電卓ボタンを押した場合の処理(onNumberClicked:自作メソッド)の実装
5-13:電卓ボタンを押した場合の処理を行う自作メソッドを作ろう
10:37

5-14:電卓ボタンを押すたびに1文字ずつ画面に表示させよう
05:09

  • 文字列の比較と数字の比較との違い(クラスに名前をつけるときにメモリで何が行われているのか) 
5-15:数字の0は1文字目しか表示できないようにしよう
11:44

  • 文字列の空白チェック(クラス[参照型]と基本データ型の違い)
5-16:“-”は1文字目しか表示できないようにしよう
05:36

  • 押されたボタンに表示されているテキストを取得し引数として渡す
  • 1~9のボタンを押した場合の処理を1つにまとめる
5-17:電卓ボタンを押した処理のコードをもっとシンプルにしよう
07:21

  • 問題を出す処理(questionメソッド)の修正 
  • こたえ合わせ処理(answerCheckメソッド)の修正
5-18:問題を出す処理とこたえ合わせの処理を修正しよう
04:11

5-19:こたえ合わせをした時に効果音を出そう(効果音を出す5ステップ復習)
12:09

  • タイマー処理とは
  • タイマー処理(Timer)の使い方4ステップ
5-20:1秒後に次の問題を自動的に出そう(タイマー処理)
10:26

5-21:TimerTaskの変なコードのナゾを探る(無名クラス)
11:59

5-22:タイマー処理をメインスレッド(UIスレッド)で行う方法 [runOnUiThread]
05:04

5-23:回答欄を入力せずにこたえ合わせボタンを押してもエラーにしない方法(文字列の空白チェック)
06:18
+
第6回:わたしだけの単語帳アプリを作ろう①
19 Lectures 03:20:52

6-02:今回作るアプリの設計図を書こう
09:51

今回作るアプリ用の新しいプロジェクトを作成して、小道具(画像)をresフォルダにセットしましょう。

  • 今回作るアプリのプロジェクトを作成する
  • 今回作るアプリで使う小道具(画像)をダウンロードしてAndroid Studioにセットする
6-03:新しいプロジェクトを作成しよう
04:50

メイン画面以外の画面を新しく追加して、アプリの各種設定(画面の向き・アプリの表示名・色・画面のスタイル)をしましょう。

  • 新しい画面(Activity)を追加する
  • 画面の向きをタテ向きに設定する
  • アプリの表示名を変える(strings.xml)
  • 色の設定をする(colors.xml:色コードのインターネットからの取得含む)
  • 画面上部のタイトルバーを消す(styles.xml)
6-04:今回作るアプリの各種設定をしよう
13:46

メイン画面の完成図(activity_main.xml)を作りましょう。

  • ボタン(Button)の背景を画像にする
  • 画面に表示する文字列をresフォルダで管理する(strings.xml)
  • xmlファイルでコメントを入れる
  • ボタン(Button)の背景を色にする
6-05:メイン画面の完成図(layout)を作ろう
11:52

単語一覧表示画面の完成図(activity_word_list.xml)を作りましょう。

  • ビュー同士の制約(Constraints)を設定する
6-06:単語一覧表示画面の完成図(layout)を作ろう
07:24

単語の編集画面の完成図(activity_edit.xml)を作りましょう。 

  • レイアウトファイルでは画面をまたいで同じidをつけてはいけない
6-07:単語編集画面の完成図(layout)を作ろう
07:01

メイン画面の説明書(MainActivity.java)のソースコードを書きましょう。

  • TODOタグの使い方
  • ボタンのクリック処理の実装(onClickメソッドを作るところまで)
  • スコープの復習(押されたボタンのリソースidを取得)
  • onClickメソッド内を抑えたボタンのリソースidで条件分岐させる(if文)
6-08:メイン画面のソースコード(Java)を書こう
12:22

  • 確認テスト画面に移る処理(Intentの渡し方3ステップの復習)
  • ボタンを押したら画面の背景色を変える自作メソッドを作る
  • resフォルダにセットした画面全体の背景色を動的に設定する
6-09:メイン画面から確認テスト画面に移る処理を書こう
11:42

6-10:メイン画面で設定した画面の背景色を他の画面でも使えるようにしよう(static変数の話)
11:33

  • ボタンのクリック処理の実装
  • メイン画面でstaticに設定した背景色を引き継いで画面全体に設定
  • onClickメソッドの実装(単語の編集画面に移るIntent・メイン画面に戻るfinishメソッド)
6-11:単語一覧表示画面のソースコード(Javaファイル)を書こう
11:14

  • ボタンのクリック処理の実装
  • メイン画面でstaticに設定した背景色を引き継いで画面全体に設定
  • onClickメソッドの実装(もどるボタンを押した場合)
6-12:単語の編集画面のソースコード(Java)を書こう
10:22

  • データベース(DB)とは
  • データベースを扱う4つの操作とは
Preview 06:13

  • Realmとは
  • projectレベルのbuild.gradleからRealmを使うためのプラグインをインストールする
6-14:データベースRealmをインストールしよう
07:57

  • アプリが起動したときに最初に呼び出されるApplicationクラスとは
  • Applicationクラスを継承した自作クラスを作る(MyApplication.java)
  • MyApplicationクラスでRealmの初期化を行う
  • MyApplicationクラスを最初に起動するクラスに設定する(マニフェストファイル)
6-15:データベースRealmの初期化をしよう
11:31

  • フィールドを定義したモデルクラスを自作クラスとして作成(WordDB.java)
  • カプセル化とは
  • getterとsetterの作り方
6-16:データベースRealmのモデルクラスを作ろう
11:52

  • Realmインスタンスの取得処理をonResumeメソッド内に実装する
  • Realmインスタンスの後片付け処理をonPauseメソッド内に実装する
  • 新しい単語をRealmデータベースに登録する(onClickメソッド内)
  • 主キー(Primary Key)とは
  • 登録完了メッセージを出す(Toastメッセージの使い方)
6-17:単語の編集画面からデータベースにデータを登録しよう
17:07

  • Realmインスタンスの取得処理と後片付け処理を実装する
  • データベースから登録したデータを抽出する(onResumeメソッドに実装)
  • 抽出したデータをListViewに表示する
6-18:データベースからデータを取得して単語の一覧表示画面に出そう
15:47

  • ArrayListを使って、出力したDBデータの表示形式を変える
  • 繰り返しのfor文を使ってRealmResults型のリストをArrayList型のリストに入れなおす
  • アダプターにセットするリストをセットしなおす(results⇒word_listに)
6-19:出力した単語リストの表示を変えよう(単語の一覧表示画面)
12:04
+
第7回:わたしだけの単語帳アプリを作ろう②(単語の編集・削除及び確認テスト機能の追加)
17 Lectures 02:52:37

7-02:今回作るアプリの設計図を書こう
13:06

  • 前回作成したプロジェクトを開く
  • テスト画面(Activity)を追加してタテ向きに設定する[activity_test.xml]
  • TODOタグをレイアウトファイルに設定する方法
  • 前回作った画面のレイアウトの修正①[activity_word_list.xml]
  • 前回作った画面のレイアウトの修正②[activity_edit.xml]
7-03:前回作った画面の完成図(layout)を修正しよう
11:21

  • 確認テスト画面の完成図(activity_test.xml)の作成
  • ImageViewの上にTextViewをぴったりと重ねる方法
7-04:新しく加えた画面の完成図(layout)を作ろう
11:03

7-05:今回追加する処理をJavaファイルにTODOタグをつけてコメントで貼り付けよう
04:18

7-06:メイン画面から確認テスト画面に移る処理を書こう
03:05

  • 単語の編集ステータスをEditActivityインテントで渡す処理の追加(onClickメソッド内)
  • リスト内のアイテムをタップ・長押しした時の処理(クリックリスナーの設置まで)
7-07:メイン画面から単語の編集画面に移る処理を書こう
09:21

  • インターフェースとクラスとの違い
  • 「インターフェースの『実装』」と「クラスの『継承』」との違い
7-08:インターフェースとは
10:19

  • リスト内のアイテムをタップした時の処理(onItemClickメソッドの実装)
  • タップした単語の情報をデータベースから取得する
  • データベースから取得した情報を単語の編集画面にインテントで渡す
7-09:リスト内の単語をタップ(クリック)した時の処理を書こう(選択した単語のデータをDBから取得して単語の編集画面に渡す)
10:39

  • リスト内のアイテムを長押しした時の処理(onItemLongClickメソッドの実装)
  • タップした単語をRealmデータベースから削除する
  • データベースから単語を削除した瞬間に画面のリストを更新させる
  • boolean型とは
  • タップ処理と長押し処理を両立させる方法(onItemLongClickメソッドの戻り値をtrueに)
7-10:リスト内の単語を長押しした時の処理を書こう(長押しした単語の削除)
18:15

  • 単語一覧表示画面から渡されたインテントを受け取る
7-11:単語一覧からタップされた単語の情報をインテントで受け取ろう(単語の編集画面)
11:31

  • 新しい単語を追加した場合の処理
  • 修正の場合の単語の修正処理(データベースの更新)
7-12:データベースに登録した単語の修正処理をしよう(単語の編集画面)
11:10

  • レイアウトファイルに貼り付けたビューの結び付けまで
  • MainActivityでstaticに設定した背景色を引き継いで画面全体に設定
7-13:確認テスト画面のソースコードを書こう(メイン画面で設定した画面の背景色引き継ぎとボタンのクリック処理まで)
07:11

  • 定数(final)とは
  • テストの状態を定数(final)で設定する
  • なぜ「テストの状態(ステータス)」を整数で表現するのか
  • テスト開始前の初期状態の設定(onCreateメソッド)
7-14:確認テストの状態を「定数(final)」で設定しよう
11:20

  • Realmインスタンスの取得処理と後片付け処理を実装する
  • テストデータをデータベースから取得する
  • データベースから取得したテストデータをシャッフルする
7-15:確認テストで使うデータをデータベースから取得してシャッフルしよう
15:09

  • onClickメソッドの実装(テストの状態によって上のボタンでやることを場合分けする)
7-16:確認テストの状態によって処理を場合分けしよう(確認テスト画面)
07:32

  • 問題を出す自作メソッド(showQuestionメソッド)の実装
  • こたえを出す自作メソッド(showAnswerメソッド)の実装
  • 出来上がったアプリを実機orエミュレーターで実行する
7-17:問題とこたえを出す処理を書こう(確認テスト画面)
13:22
+
第8回:わたしだけの単語帳アプリを作ろう(ジャンプ:3/3)
18 Lectures 02:55:04

8-02:今回作るアプリの設計図を書こう
08:16

  • 前回作ったプロジェクトをコピーする
  • コピーしたプロジェクトを開く
  • パッケージとは
  • プロジェクトのフォルダ名を変えただけでは別アプリと認識されない理由
  • import文の意味とは
  • パッケージ名を変更する
  • パッケージが存在する理由(Javaの部品化の1つ)
  • パッケージ名の付け方の決まり
  • パッケージ名を変更するとアプリを実行した際にエラーになるトラップへの対処方法
8-03:パッケージ名を変更しよう
16:19

  • 前回作ったプロジェクトを開く
  • ラジオボタン(RadioButton)とは
8-04:メイン画面の完成図(layout)を修正しよう
07:30

  • 単語一覧表示画面の完成図(activity_word_list.xml)の修正
  • 確認テスト画面の完成図(activity_test)の修正
8-05:他の画面の完成図(layout)を修正しよう
04:39

8-06:今回追加する処理をJavaファイルにTODOタグをつけてコメントで貼り付けよう
06:56

  • RadioButtonの使い方5ステップ
  • 暗記済みの単語を含めるかどうかの情報をTestActivityにインテントで渡す
8-07:メイン画面のソースコード(Java)を書こう
12:06

  • Realmデータベースのモデルクラスに新しいフィールド(暗記済みフラグ)を設定する
  • 問題フィールドに主キーを設定する
8-08:データベースに新しいフィールドと主キーを設定しよう
04:22

  • 今回追加したビューの結び付けとボタンのクリック処理
  • データベースから単語の一覧を取得し、暗記済みの場合は「暗記済」と表記する
  • boolean型をif文で使うときの注意点
8-09:暗記済みの単語を「暗記済」と表示させよう(単語一覧表示画面)
08:42

  • データベースから単語の一覧を取得し、暗記済フラグでソートする
  • 「暗記済は下に」ボタンを押したときに単語リストが画面に二重表示にならないようにする
8-10:暗記済みの単語をリストの下にくるようにソートしよう(単語一覧表示画面)
06:56

  • 確認ダイアログ(AlertDialog)の使い方5ステップ
  • 匿名クラスとは(内部クラス)
  • 内部クラスから外のクラスへの変数(ブロック)はfinalがついたものしかアクセスができない
8-11:単語を削除する際に確認ダイアログを出そう(単語一覧表示画面)
16:52

  • ステータス(新しい単語の追加/登録した単語の修正)ごとに別メソッドに分ける
  • 新しい単語メソッド(addNewWord)に確認ダイアログを追加する
  • 登録完了メッセージ(Toast)を確認ダイアログを出しても使えるようにする
  • 主キーと暗記済フラグフィールド設定したことに伴うデータベースへの登録処理を修正する
8-12:新しい単語を追加する際に確認ダイアログを出そう(単語の編集画面)
15:02

  • プログラミングにおける3つのエラー
  • 新しい単語の追加メソッド(addNewWord)に例外処理(try~catch文)を入れる
8-13:新しい単語を登録する際にアプリが落ちないように例外処理を入れよう
10:34

  • 登録した単語の修正メソッド(changeWord)に確認ダイアログを追加する
  • 主キーを設定した場合の制約条件(主キーを設定したフィールドの値は変更することができない)
8-14:登録した単語を修正する際に確認ダイアログを出そう(単語の編集画面)
09:05

  • 登録した単語の修正メソッド(changeWord)に例外処理(try~catch文)を入れる
  • 例外処理でcatchする例外クラスを加える方法
  • 単語の修正処理の場合は問題欄を入力できないようにする
8-15:アプリが落ちないようにするための例外処理と修正の場合は「問題」が入力できないように使用(単語の編集画面)
08:40

  • checkBoxの結び付け
  • 暗記済みの単語を含むかどうかをメイン画面からインテントで受け取る(onCreateメソッド)
  • 暗記済みの単語を除外したテストデータをDBから取得する(onResumeメソッド)
8-16:暗記済みの単語を除外したテストデータをデータベースから取得しよう(確認テスト画面)
07:45

  • チェックボックスを押したときに暗記済のステータスを変える(checkBoxの使い方)
  • 前の問題の暗記済みフラグをデータベースに登録する(showQuestionメソッド)
  • シャッフルしたテストデータをもとにデータベースを更新しようとする場合の注意点
8-17:暗記した単語データの暗記済フラグを更新しよう(確認テスト画面)
14:17

  • 暗記済みの単語がテストに出てきた場合はチェックボックスにチェックを入れる
  • 「かくにんテストをやめる」ボタンを押したときに確認ダイアログを出すようにする
  • 最後の問題の暗記済フラグをデータベースに登録する
8-18:確認テスト画面に残りの機能を追加しよう
12:05
+
最終回:Google Playからアプリをリリースしよう
7 Lectures 36:43
9-01:GooglePlayにデベロッパー登録しよう
04:45

9-02:署名付きAPKファイルを作ろう
08:11

  • apkファイルをGooglePlayにアップロード
  • クローズド版ベータテストのテスターを登録する
9-03:APKファイルのアップロードとテスターの登録をしよう
04:46

9-04:GooglePlayストアに掲載する情報を入力しよう
08:06

9-06:リリースしたアプリのバージョンアップをしよう
06:07

  • リリース前にアプリをテストする
  • テストしたアプリを製品版としてリリースする
9-05:アプリをテストしてからリリースしよう
02:57

9-07:エンディングメッセージ
01:51
About the Instructor
北川 博之 (みんなのプログラミング by Telulu LLC)
4.5 Average rating
37 Reviews
447 Students
2 Courses
プログラマー, プログラミングサポーター, 心理カウンセラー

大阪府生まれ。京都大学経済学部経済学科卒業。

2000年より、日本生命保険、ニッセイアセットマネジメント、パトナム・インベストメンツ(米国)で、日本株トレーダー・アナリスト、経営企画、システム開発等の業務に従事。主に日本株の売買執行・投資分析、経営計画の策定、海外投資家向け日本株営業、社内トレーディングシステム及び経理システムの開発等を行う。

2016年、合同会社てるる設立。スマホアプリプログラマーとして「新感覚脳トレアプリ・記憶戦隊オボエルンジャー」「ご当地的鉄道アプリ・関西鉄道駅検定(京阪神編)」をはじめとした、子供向け知育アプリを中心に4タイトル・計8本(Android・iPhone)をリリース。

2017年、自身のこれまでの社会人経験・育児経験とプログラミング経験を基に、プログラミングを通じて新しい時代を創る人材を輩出したいという想いから、ビギナー向けプログラミングひろば「みんなのプログラミング by Telulu LLC」を設立。

3児の父。