[Android] 開発環境のアップデート 21.0.0.v201210310015-519525

Eclipse のアップデートにて
20.0.3.v201208082019-427395
⇒21.0.0.v201210310015-519525

  • Android DDMS
  • Android Development Tools
  • Android Hierarchy Viewer
  • Android Traceview
  • Tracer for OpenGL ES

で、再起動が促されるので再起動すると、SDK Tools rev.21が要求されるので、SDK Managerを起動
この辺↓が上がっている。

Tools
Android SDK Tools rev.21
– Android SDK Platform-tools rev.16

Android 4.2(API17)

Extras
Android Support Library rev.11

一時的に出たエラー

[2012-11-20 15:07:31 – Dex Loader] SecurityException: Unable to find field for dex.jar
[2012-11-20 15:20:50 – SDK Manager] [SDK Manager] ‘spath’ は、内部コマンドまたは外部コマンド、
[2012-11-20 15:20:50 – SDK Manager] [SDK Manager] 操作可能なプログラムまたはバッチ ファイルとして認識されていません。

[Android]AsyncTaskLoader を使用したら起動しなくなった件のメモ

結論

Activityの内部クラスで使用する場合は、static 宣言 をしないとエラーが出ます。
弊害ないのか…?

該当ソース

1
2
3
4
5
6
7
8
9
10
11
12
13
if (mLoader != null) {
       if (mLoader.getClass().isMemberClass()
               && !Modifier.isStatic(mLoader.getClass().getModifiers())) {
           throw new IllegalArgumentException(
                   "Object returned from onCreateLoader must not be a non-static inner member class: "
                   + mLoader);
       }
       if (!mListenerRegistered) {
           mLoader.registerListener(mId, this);
           mListenerRegistered = true;
       }
       mLoader.startLoading();
   }

http://android-eksempler.googlecode.com/svn/trunk/Android30Elementer/assets/src/android/support/v4/app/LoaderManager.java

[CakePHP2] モデルで使用するプロパティなど

モデルに設定するプロパティ

  • public $useTable = ‘table’
    命名規約に沿ってない場合に、テーブルの名称を指定。アッパーキャメルでアンスコ区切りとなる。
  • public $tablePrefix = ‘prefix’
    テーブルのプレフィックスを指定。
  • public $primaryKey = ‘primary_key’
    プライマリーキーが’id’でない場合に指定。
  • public $useDbConfig = ‘config_name’
    DBを2つ以上使用する場合など、database.phpのdefault以外の設定を使用する場合に指定
  • public $virtualFields = array(‘name’ => ‘concat(user.first, ” “, user.family)’)
    関数の実行結果を別名として使用可能。select時のみ使用可能
  • public $displayField = ‘show_name’
    ドロップダウンリストなどへの表示項目の指定
  • public $actsAs = // TODO
    有効にするビヘイビアの指定
  • public $validate = // TODO
    バリデーションの設定を行う
  • アソシエーションの設定

モデルの機能

  • findメソッド
    検索機能book.cakephp.orgでおk
  • saveメソッド
    主キーが設定されているかされていないかでUPDATEかINSERTを自動実行

書きかけコミット!ドン

[CakePHP2] コントローラで使用するプロパティなど

コントローラに設定するプロパティ

  • public $uses = array(‘Table1’, ‘Table2’)
    コントローラ内で使うテーブルのクラス名を指定
  • public $helpers = array(‘Number’)
    ビューで使うヘルパーを指定。HTML,Form,Sessionはデフォで使用可能
  • public $components = array(‘Cookie’)
    コントローラの処理を拡張するコンポーネントを指定。Sessionはデフォ

コントローラの機能

  • renderメソッド
    指定されたビューを読み込む。指定なし時はアクション名(メソッド名)のビュー呼び出し。絶対パス可能
  • setメソッド
    コントローラからビューにデータを渡す
  • redirectメソッド
    ドメイン内外へのリダイレクトができる。redirect以降の処理は実行されない
  • flashメソッド
    redirectに近いが、メッセージの表示機能がある。
    setFlash + redirect とい実装の方が今風か
  • $requestプロパティ
    フォームからの送信データ、URLのパラメータの読み取りが可能。
  • refererメソッド
    リファラの取得
  • postConditionsメソッド
    フォームから送信された内容を検索条件用に整形
  • paginateメソッド
    データをページごとに分けて取得
  • requestAction
    指定されたアクションの処理を実行する

JavaでのJsonの扱いメモ -Array と Object-

Array と Objectの違い

1分クッキング編

概要

ArrayはObjectの連なり。

表記上の見極め

ポイントは”[]”と”{}”
JSONArray → “arrayName”:[<obj1>,<obj1>,<obj1>]
JSONObject → “objname”:{“item1″:val,”item2”:val}

[Android] WebViewで表示しているサイト内のiframeのリンク動作がおかしい件

アプリ内でWebViewを使用してサイトをラップしているわけですが、
サイトに貼られたAdsenseのリンクが正常に動作しません。

Adsenseはjsを用いて、iframeを利用して表示しています。
アプリ内でadsenseをクリックすると、
ページ全体が書き換わらずに、iframe内でリンク動作が完結してしまいます。

英語圏では結構話題になってたみたいですが、解決策は見つからず。
何か知ってる人がいらっしゃったら教えてください。