トップページ


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

Android

今後の開発項目

  • サムネイル
  • タイマー表示バリエーション
  • 動画のローテーション
    • 重ねを入れ替えられるか
    • どこのタイミングでバッファしてるのか
    • 初回と途中を区別しないローテーションの仕組み
    • ローテーションできるVideoViewClassの作成
  • タイマーの中断(画面遷移時の正しい後処理、条件による分岐)
  • エラー処理
  • 見た目の装飾

設計の問題

  • 動画のローテーション
  • サムネイルの表示
  • タイマーの中断

exceptionの検討

リソース

Context

  • Context内にはどんなデータがあるのか
  • アプリケーションの実行状態を保持するクラス。
  • 同じアプリケーション内のクラスを生成するときにインテントコンストラクタの第一引数として利用する。第二引数には生成するアクティビティクラスを指定。

インテント

  • Intent内にはどんなデータがあるのか
  • 同じアプリ内の場合
マニフェストに呼び出したいアクティビティクラスを登録
  • 外のアプリの場合

afterTextChanged()

onFocusChanged()

カスタムUIコンポーネント

  1. 既存部品の拡張
  2. 描画処理も独自のフルカスタマイズ・ビュー
  3. 既存のビューを組み合わせたコンポジット・ビュー

Hint

アニメーション

2Dグラフィックス

ジェスチャー

動画の扱い

Androidとデザインパターン

JUnit

動画をローテーション

VideoViewのsetOnCompletionListenerを実装して、動画の再生が終わったら次の動画を再生する
AsyncTask(別スレッド処理をめっちゃ簡単に出来るようにしてくれるクラス)

とりあえずタイマーを作る

  • Handlerを使った疑似マルチスレッド
    • Androidはシングルスレッドだが、全てをUIスレッドで処理すると重たい処理をするときにはユーザの操作を受け付けられなくなる。一時的に他スレッドでの処理が必要な場合には、Handlerを使って割り込み処理をするように組む。ThraadまたはRunnableのrun()メソッドの中で、Handler.sendMessage(Message msg)の形式でメッセージを送る。Handler/Messageの仕組みは汎用イベント機構と捉えることができる。Message→Handlerで出された依頼は、UIスレッドの一部を借りる形で処理される。
  • AsyncTask
  • その他にSystemClockなどを使って実装する方法はないか?

時間表示のフォーマット

  • Chronometerを使って表示する?
  • その他フォーマット?

Android機能

  • Toast
    • 小さいアラートウィンドウ

Java

  • Thread
    • Threadを継承したクラスを新規Threadとして実行。
  • Runnable
    • Threadを継承するとその他のクラスの継承ができないため、Runnableインターフェイスを実装したものをThraadでラップしてThraadと同じことを行う。
  • Timer
    • Threadと似た方法で実装できるが、細かいスケジューリングなどができ、バックでデーモンのように実行させることができる。
  • データ型
    • Long
    • Int
  • 変数スコープ
  • 定数の種類

Git

  • 同じ構成の場所でgit initして.gitを作らないとpushできない
  • 「まとめディレクトリ」同士を同期するのではなく、プロジェクト単位で管理する