家族ToDo(仮)開発日誌

やりたいことや行きたい場所を家族で共有するためのAndoridアプリの開発日誌(兼Android開発学習メモ)です。

開発日誌 (9) : セキュリティと利便性を両立するOAuth2.0認証シーケンス (その2)

今回の進捗 Web側のユーザ登録・認証処理仮実装 Android端末(Genymotion)からローカル端末の自前Webを参照するためのhosts設定 Andorid端末から自前Webを経由してOAuthし、結果をDB登録した後、独自認証キーを返却するまでの一連の通し動作確認 作業時間: 4h…

開発日誌 (8) : セキュリティと利便性を両立するOAuth2.0認証シーケンス

今回の進捗 Web側でのOAuth2.0による認証のサンプル実装 セキュリティに配慮した認証シーケンスの検討 作業時間: 5h Webアプリ(PHP)経由でOAuth 前回、Androidアプリから直接GoogleにOAuth2.0で認証しようとしたが、下記が課題だった。 GoogleのOAuth 2.0で…

開発日誌 (7) : scribeでGoogle OAuth 2.0 (client_secretなしで認証)

今回の進捗 Google OAuth 2.0対応のscribeを入手、ビルド (client_secretが空文字列でもOKに修正) カスタムスキーマなCallback URLをうまく扱ってくれない件について調査。http://localhostしかない? 作業時間: 3h Google OAuth 2.0対応のscribeでやりなお…

開発日誌 (6) : Google Developers Consoleにアプリ登録

今回の進捗 Google Developers Consoleにアプリ登録してClient IDを取得 モデルクラスの整理 作業時間: 1h client_secretがもらえない 本来はClient IDの登録結果画面にclient_secretも表示されるようなのだが、どう探してもない。いろいろ検索すると、Insta…

Intent解決 (Intent Resolution)

第5回でOAuthする際、デフォルトのWebブラウザのActivityを呼び出してGoogleの認証画面を表示しているわけだが、これはAndroidのIntent解決機能を利用している。要はstartActivityに渡すIntentを生成する際、アプリ内のActivity間遷移では第1引数がContextク…

開発日誌 (5) : OAuthでログイン (Googleからメールアドレスとユーザ名を取得)

今回の進捗 JavaのOAuthライブラリscribeの導入 ログイン画面の追加 (テンプレから不要要素削除しただけの張りぼて) OAuthを使ってGoogleからユーザ情報とメールアドレスの取得 取得した情報のメイン画面への表示 作業時間: 3h Googleアカウントを使ってログ…

開発日誌 (4) : アプリのデータをJSONで保存する

今回の進捗 JSONライブラリJSONICの導入 android.content.Contextクラスを用いた端末上でのデータファイルIO 作業時間: 2.5h 端末ローカルへのデータ保存(JSON形式) ネットワーク接続が不安定な状況を考えると、アプリのデータは端末ローカルとサーバ側の両…

開発日誌(3) : モデルの追加とDI

今回の進捗 ToDoアイテムのとりあえずモデリング DIコンテナdaggerの導入 モデルのFactory(とりあえず版)を実装 作業時間: 1.5h モデリング 昨今はMVVMとか最近流行(再燃?)らしいが、フレームワークの高度なサポートがないと実装が面倒だという話をどこかで…

開発日誌(2) : 画面(Activity)の作成とウィジェットの配置

今回の進捗 ToDo一覧画面の作成(UIだけ) fragmentに関する調査 作業時間: 2h Activityを構成するファイル ウィザードが頑張ってくれたおかげでとりあえず最小限の動くコードセットができた。これを書き換えて自分好みの画面を作っていきたい。Androidにおい…

try-with-resourceとは

Java SE 7知らないのでちょっと調べたら、処理の終わりで確実にリソースをクローズしたい場合に使う模様。C#のusingみたいなもんか。よくDB接続処理なんかで↓みたいにして各種リソースを確実に閉じていたけど、 Connection conn = null; Statement stmt = nu…

開発日誌(1) : 開発環境の構築と空プロジェクトの実行

今回の進捗 Android Studioのインストール Genymotionのインストール (Android StudioへのGenymotionプラグインのインストールも含む) 空プロジェクトの作成とGenymotion上での動作確認 作業時間: 2h Android Studioのインストール Javaの開発環境といえばec…

Android開発の基礎知識を蓄えるために読んだ本

何か新しいことを始めるとき、まず入門用の本を読むようにしている。Webの情報は調べ物には良いが、体系的にまとまっているものは少ないので。Androidの場合は公式ドキュメントが大変充実しているようだが、英語は読むのに時間が掛かるのでパス。とりあえず…

開発計画のような何か

だいたい下記のような感じで作ろうと思う。見積もりは根拠なし。調査時間やハマリ時間含めてだいたいカン。この時間くらいで何とかするぞ、という意思表示程度のものにすぎない。Web側は作り慣れているのでそこまで詰まらない見込み。なお、単体テストの時間…

家族で行きたい場所、ほしいものを共有する「家族ToDo(仮)」

家族で休日に行きたい場所について、思い立ったときにメモして共有できるツールがほしかったが、下記まとめで紹介されているようなToGo系というかWishList系のサービスはどれもソーシャルな感じで大げさでイマイチ。未来共有系サービスまとめ - NAVER まとめ…