むずかしいことはわかりません

いろいろ書いてるみたいな

ABC2009 ハンズオンセミナー

ABC2009のAndroidハンズオンセミナーに行ってきました。

初歩の初歩という話ではありましたが、とっかかりを掴むためと参加した身としては非常にうれしい内容でした。

1.HelloAndroid!の実装
2.ボタンを作る
3.Intentについて
4.GoogleMapsとの連携(おまけ?だったようです)

と、入り口が見えたところで時間になってしまったのですが、やっぱり本だけで見るより話聞いてるほうがわかりやすいなー。


もう少し色々と調べて何か作ってみるか。

※追記:メモってたことをここに転記。ソースにメモったことも書いてるので時系列は一致しないけど。

  • たとえば、ウィンドウやデスクトップのようなベースになる部分をActivityと呼んでいる
    • Activity Classを継承
  • setOnClickListenerはButtonクラスにしか定義されていないので、厳密にButtonクラスにキャストしている

Button b = (Button)findViewById(R.id.Button01);
b.setOnClickListener(this);

  • geo:緯度,経度
    • q=Tokyo →東京をQueryとして調べる

Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("geo:0,0?q=Yokohama"));

  • mapAPIを使うときに必要な関数(eclipseなら自動で補完されたけど)

@Override
protected boolean isRouteDisplayed() {
// TODO 自動生成されたメソッド・スタブ
return false;
}

  • レイアウトの中に画面解像度を設定できる。
    • 解像度ごとにレイアウトを用意し、それを利用できる
    • fullcontent?の指定をしておけば、解像度に応じたresizeは可能
  • 画面の向きが変わると onDestroy→onCreate でファイル、アプリを読み直す
  • 文字の大きさなどはテーマ(theme)を切り替える
    • 画像の大きさ、枠の大きさなどの単位を設定
  • アプリケーション間でデータをやりとりする
    • コンテントプロバイダ contentprovider
  • intentを登録するのは manifest
    • そこに登録しておけばシステムが検索してアプリケーションをkickする
    • アクティビティ間の連携を取るために intent を使える
  • StartActivityForResults
    • activityの実行結果待ちをする
  • サービスとして音楽を流しつつ、ファイルを選択したりなどをしている
    • サウンドプレイヤーが例としてはいい
  • IMEを作るためのframeworkがあるので、文字入力を作るときはこれを使う
  • DOOMをいれたら、キー入力ができなかった。リアルタイムでキーボードを取得することはできないのか?
    • キーボードがついている前提で作るとそうなる
    • 特定のハードウェアがあるものとして作るのはよろしくないと(ry
  • デバッグする際に実機を使うことはできるのか
    • 可能 USB接続してからRUNで動く
    • 実機が手に入れば、実機をつないで使うようになる。動作も転送もその方が速い
  • サンプルをエミュレータで動かしているけど、センサー使ってるモノが動かない。
  • 実機の判別はできるのですか
    • システムプロパティを見れば判別は可能
    • そういうのを確認しなくてもいいようにしたほうがいい、かも。
  • market以外に売る方法はないのか
    • システムの設定を変更すれば.apkファイルをダウンロードできる
  • 機種によってダウンロード制限はかけられるか
    • 場合によってはできるのではないか。まだわからない。