Android-Java

  • Javaを用いた開発手法。




ソフト

  • Eclipse(SDK・ADT)
  • JDK ver6(現在は7でも可と思われる)
  • Android SDK


Eclipseショートカットキー

+ ...
  • [Ctrl]+[Space]
→候補を出す。

  • [Ctrl]+[Shift]+[O]
→インポートの編成。足りないものを追加し、使用してないものを削除する。

  • [Alt]+[Shift]+[S]
→ソースタブの一部を参照可。使いどころとしては、この後[F]でフォーマットを掛ける位か。
→フォーマットの設定はウィンドウタブから設定を開き、Javaの欄の中にあるコード・スタイル欄の中にあるフォーマッタ―を弄る。




アクティビティーサイクル

Androidアプリのライフサイクル
  • BGMなどを流したりすると処理を切らねばならないので重要となる基本的な知識。
+ ...
  • onCreate()
→アプリ起動時に通る処理。ビューのセットなどを行う。

  • onRestart()
→後記するonStopから復帰した際に通る処理。

  • onStart()
→onCreate()かonRestart()の後に通る処理。

  • onResume()
→onStart()か後記するonPause()のからの復帰時に通る処理

  • onPause()
→ツイッター機能などで他のActivityが起動した際に通る処理。

  • onStop()
→ホームボタンを押すなどしてActivityが表示されない際に通る処理。

  • onDestroy()
→使用しなくなった際に通る処理。


画面に関する設定

  • onCreateで指定するのが定石。
+ ...
  1. // バックライトを保持する(常時点灯)
  2. getWindow().addFlags( WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON );
  3. // ステイタスバーの表示をクリア
  4. getWindow().clearFlags( WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN );
  5. // フルスクリーン処理を追加
  6. getWindow().addFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN );
  7. // タイトルバーを消す
  8. requestWindowFeature( Window.FEATURE_NO_TITLE );
  9.  


getSystemServiceに関して

画面解像度取得やバイブレータの所得等で使いますが、
context.を使うことでonCreate以外でも取得可能です。

+ ...
バイブレータの場合
  1. // これでエラー吹く場合
  2. vibrator = (Vibrator)getSystemService(VIBRATOR_SERVICE);
  3. // Contextで解決
  4. vibrator = (Vibrator)contex.getSystemService(context.VIBRATOR_SERVICE);
  5.  


ActivityとContext

よく、Contextを引数として指定してくるメソッドがあるが、
場合によっては、Contextと書いているにもかかわらずActivityが必要な場合があるので注意。
(Activityの情報を持ったContextが必要というべきか?)


メディアプレイヤ

BGMなどを流すのに用いる機能。SEなどには向かない。
  • SEならSoundPoolが良い。
+ ...
  • 流れ
→new/create/setlooping/seekTo/start/stop/release/null
→prepareも使ったほうが良いと思われる。
→stopだと、再利用不能かと思われる。再利用にはpauseが良いと思われる。


ログ

ログを出力することでデバッグがしやすくなる。
+ ...
  • ログの種類は複数存在する
→ERROR エラー
→WARN 警告
→INFO 情報
→DEBUG デバック
→VERBOSE すべて

  • 使い方は
→Log.e("タグ","メッセージ");
→eがERROR、wが警告…となっている。



ダイアログ

ここではアラートダイアログとプログレスダイアログを紹介する。

「アラートダイアログは便利だが、プログラム側から処理を切るのは不可能かと思われる。(Activity再生成ならどうにか?)」
「なので、プログラム側から一定段階で処理を切りたい場合はプログレスダイアログが良い。」

  • アラートダイアログ
+ ...
メソッドチェーンが可能。
処理の中断は不可能かと思われる。
  1. AlertDialog.Builder aleartDlg = null;
  2. // 生成
  3. aleartDlg = new AlertDialog.Builder(getContext());
  4. // ボタンでのみダイアログに影響を与える
  5. aleartDlg.setCancelable(false)
  6. // タイトル設定
  7. .setTitle("タイトル")
  8. // メッセージ設定
  9. .setMessage("メッセージ")
  10. // ボタン設定(YesNo時は追加で.setNegativeButtonで対処)
  11. .setPositiveButton("OK", new DialogInterface.OnClickListener()
  12. {
  13. // ボタンがタッチされたら
  14. public void onClick(DialogInterface dialog, int whichButton){}
  15. })
  16. // 表示
  17. .show;
  18.  

  • プログレスダイアログ
+ ...
クルクルと回るものが表示されるダイアログを紹介。
  1. ProgressDialog progressDlg = null;
  2. // 生成
  3. progressDlg = new ProgressDialog(getContext());
  4. // タイトル設定
  5. progressDlg.setTitle("タイトル");
  6. // メッセージ設定
  7. progressDlg.setMessage("メッセージ");
  8. // スタイル設定(クルクル回る)
  9. progressDlg.setProgressStyle(ProgressDialog.STYLE_SPINNER);
  10. // 表示
  11. progressDlg.show();
  12. // 表示終了
  13. progressDlg.dismiss();
  14.  


バイブレータ

バイブレータの搭載は至極簡単です。
  • .Java
+ ...
バイブレータを使う
  1. Vibrator vibrator;
  2. // バイブレータ取得
  3. vibrator = (Vibrator)getSystemService(VIBRATOR_SERVICE);
  4. // バイブレータ指定時間(ミリ秒)始動
  5. vibrator.vibrate( 100 );
  6. // バイブレータ停止
  7. vibrator.cancel();
  8.  

  • Manifest
+ ...
バイブレータの権限を得る
  1. <uses-permission android:name="android.permission.VIBRATE"></uses-permission>
  2.  
最終更新:2013年07月23日 16:05