Windows Phone の WebException のハンドリング

Windows Phone の WebRequest で リクエストを送った際にネットワークやサーバ由来のエラーがあると WebException 例外が発生するんですが、この例外のStatusプロパティやResponseプロパティにはクセがあって以下のような現象が発生します。 存在するサーバ…

Expression Blend 4 でカスタムコントロールとそのテンプレートを作ってみる

前回はWPFのスタイルやテンプレートについて書いたので、今回は実際に Expression Blend 4 でカスタムコントロールの作成とテンプレートの編集を行なってみます。

リソースとスタイルとテンプレート

WPF再入門状態なので忘れないように忘れてもいいようにメモ。(MSDN)スタイルとテンプレート に書いてあることの要約。具体的に組んでみる例は次回やります

Windows Phone アプリのUIレイアウトXAMLから文字列リソースを参照する

普通アプリを書く時は端末の言語設定によってテキストリソースを切り替えられるようにする訳ですが、Windows Phone 7.1 SDK でそれをやるのに多少苦労したのでメモしておきます。もっといい方法を御存知の方は是非教えて下さい。

SharedPreferences と MODE_MULTI_PROCESS がイマイチよろしくない件

運悪くAndroidで複数プロセスのアプリを作ったり、アプリ間で SharedPreferences を相互参照するハメになってしまった場合に役に立つ…いや、たぶん立たないメモ。 Context#MODE_MULTI_PROCESS フラグはどのように使われているか このフラグはContext#getShar…

Androidアプリからのファイルパーミッションの制御

アプリ間のファイルアクセスの許可/禁止には unix のファイルパーミッションの仕組みが使われています。 ファイルパーミッション - Wikipedia Androidではアプリごとにuidとgidが割り当てられていて、パーミッションのうち、otherのread,write,execute ビッ…

Windows Live ID が停止されてる件でたらいまわし続行中

SkyDrive Explorerで手持ちの画像を3GBくらいupしてみる 原因はわからないがアカウント停止される Webからサインインできない カスタマー サポートにお問い合わせください。 いくつかの質問をさせていただき、お客様のアカウントが安全であるかをご確認いた…

Bitmapのカドを丸くする

「アイコン画像を角丸にしてくれ」 とか、割とよくある話だと思うんです public static Bitmap clip_radius(Bitmap src,int out_w,int out_h,float radius_x,float radius_y){ // 入力と出力の矩形 Rect rect_in = new Rect(0,0,src.getWidth(),src.getHeigh…

cron-apt で自動アップデート

cron-aptを使うと毎日だいたい決まった時間にパッケージの自動更新を行える。 インストール apt-get install cron-apt /etc/cron-apt/config を編集 デフォルトでは全項目がコメントアウトされているので、変更したい部分だけ変更する。 APTCOMMAND=/usr/bin…

メールを受け取らないサーバでのexim4の設定

unixユーザアカウントが1つか2つ、メールを外部に送ることはあっても内部のローカルメールなんか見ないよという場合のexim4の設定。目新しくはないけど、よくやる設定なのでメモしておく。今回の例では myhostname が設定するサーバのホスト名で、 myhostnam…

node でIRCボットを書いてみた

書いてみた。フラッドプロテクションもちゃんと実装した。 http://dl.dropbox.com/u/10049046/node-ircclient.tgznode v0.7.4で動作確認。追加で node-iconv モジュールが必要。チャネル内のユーザがURLを書いたらそこにアクセスしてタイトルを読みに行くサ…

crontabを使えるユーザを制限する

目新しい話でもないけど、忘れがちなのでメモ/etc/cron.allow に許可するユーザ名を列挙するか、もしくは /etc/dron.deny に 禁止したいユーザ名を書いておく。なお、 /etc/cron.allow が存在する場合はたとえその内容が空でも /etc/dron.deny は参照されな…

privoxyとiptablesで透過型HTTPプロクシ

privoxyは正規表現ベースのアクセス制限や強力なフィルタ機能のあるHTTPプロクシだ。iptablesと組み合わせると透過型プロクシとして設定することもできる。今回は透過型プロクシを使って、特定ホストに対してのみHTTPリクエストが可能なように設定してみる。…

AIDEで改竄検知

改竄検知は頻繁に偽陽性(false positive)に煩わされることになるイヤな管理タスクだが、セキュリティ上避けて通れない。ファイルアクセスをフックしてリアルタイム保護してくれるようなサービスがあるともっといいのだが、Linuxではあまり発達していないよ…

Xenを使って Ubuntu 11.10 (oneiric) の上で Debian 6.0 (squeeze) を動かす

(ホスト側) 必要なパッケージ lvm2 2.02.66-4ubuntu3 libc6-xen 2.13-20ubuntu5 libxenstore3.0 4.1.1-2ubuntu4.1 xen-docs-4.1 4.1.1-2ubuntu4.1 xen-hypervisor-4.1-i386 4.1.1-2ubuntu4.1 xen-tools 4.2.1-1 xen-utils-4.1 4.1.1-2ubuntu4.1 xen-utils-co…

Ubuntuの遠隔アップグレード

そのサーバのOSに入れてもらったのは Ubuntu Linux 10.04 で、2年近く古いバージョンだった。でも大丈夫、Debianやその派生のディストリビューションはパッケージシステムがしっかりしているので、遠隔操作でも比較的容易にアップグレードが可能だ… とはいえ…

レンタルサーバのOSを再初期化

rootつきのレンタルサーバを借りてるんだけど、割と情けない理由でOSを再初期化することになった。 2012年2月16日22:24 業者さんのWebサイトに問い合わせを出した 2012年2月17日3:28 業者さんから返事が返ってきた 2012年2月17日6:09 書式をあわせてOS再イン…

Androidアプリから画面サイズを取得する方法

Androidアプリから画面サイズを取得する方法が、2.xと3.x以降で変わっていたのでメモしておきます。 実例 まずはテストアプリのスクリーンショットから。 表記の説明 layout root : View階層のルートのサイズ DisplayMetrics : Context#getResources().getDi…

Windowsから多段SSH

踏み台をいくつか超えてサーバに接続した時のメモ。 クライアント cygwin ck3 http://www.geocities.jp/meir000/ck/index.html ck3の使い方はzipファイル中のドキュメントで。 とりあえず色とフォントだけ変えれば普通にviやtopやlessが使えるみたい。cygwin…

イアホン買った

もう6年以上ER-4Sというイアホンを使ってて、これはこれで遮音性が良くて音が締まってて繊細なところが気に入っていたのだけど、音源によっては中低音が痩せるのが目立ってしまい不満があった。で今回、ortofonのe-Q7というイアホンを買ってみた。 http://ww…

Androidアプリがどうデータベースを取り扱うか

端末にデータを保存するアプリを4日くらい書いてたので、その時に調べたことのメモ。 あ、書いてたアプリはこれです。 https://market.android.com/details?id=jp.juggler.SubwayTweeter 基本的な構造 SQLiteOpenHelper ↓生成 SQLiteDatabase ↓生成 SQLiteCu…

Android 3.0の壁紙について

Android 3.0のHomeは壁紙の扱いがかなり変わった。 手元にある端末だと 画面サイズは1280x768なのに、壁紙マネージャの要望するサイズ1920x1408だ。 でかすぎるだろ… 実際に表示されるのはおおむね中央部分だけで、残りの一部はAppDrawrや追加ボタンを押した…

Androidのテキスト閲覧ソフトの比較

2chのVIP板で連載されてた小説を、Android端末で読みたくなったんですよ。 71667行、1059640文字。UTF-8のテキストで、2.77MBあります。2ch特有の記事ヘッダなどがあるのでサイズは小説一本分よりやや大きめですが、非現実的なサイズではありませんね。DropB…

Android の Application task の、 Activity stack に関する怪現象

開発中に起きた出来事。発生した端末はXperia。 再起動してアプリをインストールし直したら発症しなくなったので、原因は分からず。 アプリの構造 このアプリは起動したら画面Aが表示されて、暫く待つと自動的に画面Bに移る。 ここで Home keyを押すと、A->B…

Android の java.net.HttpURLConnection

Android SDKで使えるHTTPクライアントクラスについて、gitから取ってきたソースを見つつその挙動を調べてみる。賞味期限の短い記事だと思うので、利用には注意してほしい。Android SDKで使えるHTTPクライアントクラスは三つある。 java.net.HttpURLConnectio…

apkファイルに含まれたAndroidManifest.xmlのデコード

androidのアプリケーションパッケージであるapkファイルを適当なアプリでSDカードにバックアップした後、そのzipされてる中にある AndroidManifest.xml を読むことになったのでメモしておきます。xmlなんですがバイナリにエンコードされています。 文字列テ…

Androidアプリの間違った作り方

とある外注さんが書いてきたコードがひどかった。 バックグラウンドでのオーディオ再生を、Activityから作成したワーカースレッドで行う。キャンセル処理は全く考慮していない。 UIスレッド上でばんばんHTTPリクエストを投げる。応答を読み終わるまでループ…

libscl続き、Judy

libsclはイテレータ使用中にコンテナを操作できないという問題があって、私の用途だとこれが致命的だったので使うのをあきらめました…。で、かわりに使ってみたのが Judy http://judy.sourceforge.net/ 。 このライブラリではデータは疎な配列として扱われて…

libscl

libscl http://sourceforge.net/projects/libscl/ はC言語用のコンテナライブラリ。 ユーザガイドはよく書けているし、コードもおおむね読みやすい。Linux amd64 でビルドした時に出たエラーと、sf.net で指摘されているバグを直す。

PostgreSQLのサーバ側ユーザ関数

お客様のサーバに入ってるストアドプロシージャをシステムカタログから読んで、引数や戻り値の部分をごにょごにょと解釈してから改造版をでっち上げてきた。バッドノウハウにも程があるな…しかもPostgreSQLはこのあたりの仕様がまだ安定しておらず、8.0.xと…