2015年1月30日金曜日

AppWidgetProviderのonDeletedのバグ

AppWidgetProviderクラスのonDeletedには概知のバグがありonDeletedが呼ばれるタイミングで呼び出されないというバグがあるそうです。
この現象はonReceiveメソッドをオーバーライドすることで回避可能なのでドキュメントにもその実装のコードが記されています。
しかしながら、本格的に対応を行うとどうしても実行時のAPI実装Levelを元にして処理を分岐させる必要があり、そのためにバージョンチェックを行おうとして前回の記事に至りました。

Androidのバージョン取得

私は最近になってAndroidに触り始めたので過去の資産などほとんど無いのですがやはりどうせなら古い旧式のバージョンでも動いたほうがいいと欲を出したところ意外な落とし穴がありました。

2015年1月27日火曜日

intentの追加パラメータ

ActivityやServiceにパラメータを渡したい時など

// Serviceの起動側
Intent intent = new Intent(this, MyService.class);
intent.putExtra("Param", "text");
this.startService(intent);

// Service側
@Override
protected void onHandleIntent(Intent intent) {
    Log.d("MyService", "Param:" + intent.getStringExtra("Param"));
}

onStartCommand で受け取れるような気がする?

動的な配列

ArrayList

ArrayList arrayList = new ArrayList();
arrayList.add("text");

arrayList.add(new Byte(1));


2015年1月24日土曜日

Open GL のエラー

とりあえずどこを見ればいいのか全くわからないが、初期化処理でエラーが出てしまいどこがだめなのかすら見当がつかなかった。

 glError 1280

出てきたコードはこのエラー番号。
内容は「GL_INVALID_ENUM 無効な列挙 GLenum型の引数が範囲を超えている」らしいです。

2015年1月19日月曜日

Touch Screen Testを作った理由

なんでもいいからアプリを作りたい!というようなレベルではなく、購入したタブレットのタッチパネルがおかしくなったのでそれの様子を見るために作ったのが最初です。

筆圧の対応

Tegra NOTE7のタッチパネルは筆圧に対応しているというのも売りの一つでした。
対応アプリがあればそれなりに描けるものの結構癖があります。実際にどんな感じなのか試そう試そうとは思っていました。
ついでなのでタッチパネルテストアプリで遊んでみました。

2015年1月18日日曜日

ActionBarActivityからActivityへ

互換性の問題からActivityではなくサポートライブラリに含まれるActionBarActivityを使ったほうがいいのかもしれないと使ってみましたが、あまり関係はなさそう。
旧バージョンでもv21以上のマテリアルデザインっぽい部分が再現される部分もありますが、正直微妙。
いろいろなところでも書かれているので自分メモです(笑)

2015年1月11日日曜日

OpenGL

なんとなくプログラムにかかわるどうでもいいようなネタを書きなぐるようなブログになりつつありますが、今回は懲りずにOpenGLの話です。
OpenGLも触り始めたのは随分昔のことですが実際にあれこれ使ったことはありませんでした。
本格的にやろうにも実用的に重かったというのが正直なところでした。
ハードウェアもナシにテクスチャもないポリゴンを描画するだけでもリアルタイムで使うには程遠い感じだったのですが、それでもいろいろと遊んでは居ました。