アーカイブ | 4月 2011

GoogleCodeJam2011

登録は4/6からだったのか!知らなかった。

というわけで、今年もCodeJamのメールが来ましたよ。CodeJamTokyoやるよって言ってて、地震の影響で延期だよってなったから、もっとあとにやるのかと思ってたら、まさかのCodeJam告知。

 

登録は→http://code.google.com/codejam

 

CodeJamTokyoもやるのかな…。

 

去年、忙しくて結局やってなかったら、「We noticed that you registered for Code Jam 2010, but didn’t participate in the qualification round」だって。登録したけど予選に参加してないから教えてやるよ的な感じで。

 

でも、今年もやってる時間ないんだろうなあ。

 

PSNの個人情報漏洩問題

7500万人の情報が流出って聞いてたはずなのに、なぜか7700万人になっていた不思議。

そして、ユーザー数7700万人て話を聞いたのはなんかの間違いだったのかなー。全員分漏れたんだw

すごいなー。

「ちゃんとしたものになったか確認されないうちは、復活させるつもりはありません!」

みたいな宣言していて、すごいことなんだけど、その間にPSN連動サービスが一切使えないのはどうかと思う。

あと、パスワード変えさせて欲しいし、メール来てない。カード情報登録してないけど、メールアドレスとパスワードがセットで漏れたのがなあ。いろいろめんどくさい気分。

特定のアプリの音量をセットできないかという話-その5

結構、間があいてしまいましたが、別にフェードアウトしたわけではなく、あまりにも時間が取れなかっただけなので、引き続き、プロセスがどうのこうのというのを調べて行こうと思います。

が、プロセスの処理(http://goo.gl/1dglB)を見る前にプロセスってどうにかして見ることができるかを調べてみました。

結論からいうと、ActivityManagerという文字通りActivityを管理するためのクラスがあるのですが、こちらを使えば列挙はできるようになります。プログラム的には、こんな感じ。

ActivityManager mActivityManager = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);

List<ActivityManager.RunningAppProcessInfo> mProcList = mActivityManager.getRunningAppProcesses();

ソースを表示しようとしてもblogでは、毎度うまいこと表示されないので、改行無視で書いてますが、本当にこれだけで現状実行されているプロセスがListとして列挙されます。実に簡単。

プロセス管理的なソフトって、作るの難しいんだろうなと思ってたんだけど、実際はOSにこういう機能があるからそれ使えばどうにかなるのかもね。って思ったり。

 

これで取ってきた情報はこんな感じで表示できます。

SC20110427-004412

1行目は、そのアプリのプロセス名。これはパッケージ名なので、アプリの実際の名前を持ってくるにはPackageManagerのお世話になって、名前を問い合わせないといけないので、ここでは省略。

2行目は、Importanceとlru、Pidをそれぞれ表示しています。

Importanceというのは、IMPORTANCE_FOREGROUND, IMPORTANCE_VISIBLE, IMPORTANCE_SERVICE, IMPORTANCE_BACKGROUND, IMPORTANCE_EMPTYとそれぞれのプロセスの重要度を表す数値です。大体見るとわかると思いますが、最初の値から重要度が高く、EMPTYになるとメモリが少なくなったりして「何か消さないとなー」という状態では真っ先にプロセスを止められてしまうくらいのプロセスになります。

ここらへんは、Android Developersにもドキュメントがあるので、あとでリンク先調べて書きますが調べるのが面倒なわけじゃないです。(読んだことあるしーー)

で、lruっていうのはよくわかってませんが、BACKGROUNDのプロセスがこの値を調整していて、1だったらバックグラウンドで動いてるプロセスだとかなんとか、そんな推測をしています。(もう遅いから英文読むの面倒になってる)

最後のPIDは、文字通りプロセスのIDで、プロセスが起動した順に番号がついていきます。これは、UNIXを使ったことがある人ならなんとなくわかるかと思います。

 

そんなわけで、プロセスを取ってくることはできるんだというのがわかったので、またしばらく調査を続けようと思いますが、その前にいろいろとやることもあるので、また間が開いたらごめんなさい。

連載休止のお知らせ というより、音声認識の話。

いえ、ただ単に忘れられたら困るなーと思っただけですけど。

先日から、プロセスについてのドキュメントを読み返しておりまして、やる気はあるんですけど進んでないんですっていう意思表示をするためにこうして書いています。

そして、それだけじゃ色々アレなので1つプログラムを書きました。フヒヒ。

 

で、ソースはといえば、昨今使われずにひっそりと寂しい姿をさらすgooglecodeのコード置き場にありますよ。

本文に書こうと思ったんだけど、見づらいし長いのでこちらからsubversionで取り出してください。

 

これ、つぶやいたーで音声認識結果をダイアログから選択できるようにしようと思って作っている物なのですが、音声認識結果をみれるようにした方がいいのか判断着かないまま、ずるずる来てるのでその片鱗だけでも書いておくかという感じです。

 

もしも音声認識でなんかやろうって人がいたら、使ったらいいかもしれません。使えないかもしれません。

そんなわけで、もう少ししたらプロセス周りのソースを読んでどうこうっていう話を書こうと思います。その前に仕事が暇になればいいのに!

 

ちょっと見ないうちにダウンロードできるようになってた。というわけで、apkファイルはこちらからダウンロードできますね。

フォロー

Get every new post delivered to your Inbox.

現在590人フォロワーがいます。