2009-12-01から1ヶ月間の記事一覧

大晦日

今年はいろいろあった。延焼プロジェクトの火消しに行かされた当初は、まだなんとかなると思っていたが、その後一段落付く間もなく、他の、更に燃えているプロジェクト※に行けと言われた時には精神的にかなり厳しいものがあった。まあしかし、人生何があるか…

ちぐはぐ

JSDK1.6を使用して開発していると、当然ながらコンパイル時にはチェックできないんで、こりゃあデフォルトのJSDKは1.5に変えないと駄目かもしれん。 Eclipseからプロジェクト固有のJREとしてJSDK1.5を指定したが、するとインタフェースに付いている@Override…

JSDK1.5相当

今まで意識していなかったのだが(意識せずに済んでいただけだろう)、 boolean empty = "".isEmpty(); 上記を実行するとキャッチ不能な例外が発生することを確認した。(ログ上ではVarifyError) ERROR/dalvikvm(276): Could not find method java.lang.String.…

こてっちゃん

こてっちゃん - エスフーズ急に食べたくなったので探したんだが、季節柄、もつ鍋用は大量に見るものの、こてっちゃん自体中々置いていない。よくよく思い出してみるとBSEが問題になった頃に一度発売中止になっていたんだな。もつ鍋も相変わらず人気あるし、…

40nm

微細化と新しくなったATI-PowerPlay(アイドル時でGPUのクロックは157Mhzでしかない)の効果は絶大だな。 4870の頃とは違い、ファンも轟音を轟かせることが難しい位に静かになった。

RecognizerIntent

RecognizerIntent Android DevelopersVoiceRecognition.java Android Developersいわゆる「音声認識」のためのAPI。インテントとして公開されている。うーん、うーん。実機で動かしてみたいなぁ〜。Nexus oneまで待とうと思っていたけど、docomo HT-03A買っ…

未検査のキャスト

JSDK1.4互換で開発していた頃は気がつかなかったが、Java6で総称型にキャストするとこの警告が出る。 SoftReference soft_ref = (SoftReference)this.hash.get(key); 型の安全性VからSoftReferenceへの型キャスト Javaお得意のコンパイル時の安全な型チェッ…

テッセレーション

DirectX11で、やっとこさ標準化されたというその機能、是非みたいもんだ。MSI R5850-PM2D1G Radeon HD 5850 1GB 256-bit GDDR5 SAPPHIRE HD5850 1GB GDDR5 PCIE XFX Radeon HD5850 1GB DDR5 XXX EditionSapphireが無難だが、5850はどこ探しても無いからなぁ。

小包の包み方

createFromParcelメソッドからして、非直列化はこのインタフェースを介して行うらしいが、どうしてこんな作りになっているんだろう。 前にも書いたが、Androidではアプリケーション(ActivityやService)間が分離されており、オブジェクトやデータを共有するこ…

イベントと小包

JavaなのでついついJFC/Swingと比較してしまうのだが、Androidのイベントは基底クラスを持たない。 public final class MotionEvent implements Parcelable { 〜 } 代わりにParcelableという、一風変わった直列化/非直列化のためのインタフェースを実装する…

外部からViewの生成を知る

public GuidanceView(Context context, AttributeSet attrs) { super(context, attrs); //attr.xml経由で拡張されたプロパティを取得 TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.GuidanceView); this.guidance = a.getString(R.styl…

まさかのオチ(Games for Windows - LIVE Logon Failed )

解決した。別にWindows Liveにサインインすることは強制ではなく、アカウントを作る必要もSSDPもポートを開く必要も無かった。 Games for Windowsに接続する必要の無い、私のようなスタンドアロンなユーザはローカルプロファイルを作って、それを使えばプロ…

Games for Windows - LIVE Logon Failed

接続できなく難儀している。 3.1.0099.0 (WGX_XLIVE_V3.01_RTM.091106-1035) C:\Windows\system32\xlive.dll 0x80151911 XLive Logon Failed 192.168.0.2 0xfb0000000040e7c0 LogonHR == 0x80151911 Games for Windows - LIVE DLL 何が困るって、Games for W…

ネームスペースを使わずにビューのプロパティを読む

ということで、ADT Plugingで作成したプロジェクト、レイアウトからは外部プロジェクトのリソース(Rクラス)を参照できないのか、又は、プロジェクト中で管理できるリソース(R.java)は一つだけようである。このままではやはり、共通ライブラリィを皆で共有し…

Rの二乗

先日のエントリでは外部のライブラリィプロジェクトをアプリケーションプロジェクトに取り込む際の解決策を書いた。 Androidの場合は、ライブラリィをAndroidプロジェクトとして作成したならば、プロジェクトではなく、ソースコードとして参照する必要がある…

アプリケーションから独自のXMLを読む

以前から使用していたXMLをAndroidアプリケーションでも使いたい。 普通にJSDKのパーサを使って直接ファイルを読めばいいんだが、それでは面白くない。どうせならばAndroidの流儀で、Javaクラスに変換後バイナリ形式で保存されたリソースとしてハンドルで参…

JNAが欲しい

Androidアプリケーションが動いている下で、プラットホームは抽象度の高い順に アプリケーションフレームワーク 各種オープンソースライブラリ + Android ランタイム(Dalvik VM) Linux カーネル の3層で構成されており、アプリケーションフレームワークの層…

Androidプロジェクトの罠

皆で使う共通のライブラリィを参照してアプリケーションを開発するのは、Eclipseを使う場合に限らず極めて普通だが、Androidの場合、ことADTを使って開発をする場合、このやり方は注意が必要だ。ADTのAndroidプロジェクトは特定のディレクトリ(res)配下に、…

アプリケーション(apk)をアンインストールする

理由は不明だが、昨日まで動いていたApiDemosアプリケーションが何故かデバッグすらできなくなった。 Re-installation failed due to different application signatures. うーん、サインした覚えは無いんだけどな。エミュレータイメージには"DevTools"という…

ADT 0.9.5

TextView等に直接入力した日本語のエンコーディングが、正しく処理されていることに気がついた。完成度、着実に上がっているな。

gitからソースコードを引くには?

SDKのソースコードを読んでいて、まだ一度もCloneしていないソースコード(例えばcom.android.internal.policy.impl.PhoneWindow.java)がどこのプロジェクトのリポジトリにaddされているのかを調べる場合、 1. android Project layoutを基点に、それっぽい名…

変数ビューの"ID"というサフィクス

ふと気がついたらデバッグ時、変数ビューの表示に意味不明な"ID"というサフィクスがついてる。オブジェクトのID値を表示しようとして失敗しているのか? 昔ならば括弧で括って "(ID=XXXX)"と表示されていたはずなんだが、いつからこんな表示になってしまった…

Android + Mono

koush's androidmono at master - GitHub android-ruby - Project Hosting on Google CodeAndroidのようなコンパクトなプラットホームは正直に言うとJavaで書くよりC#(というよりC#3.0で)※、もっと言えばRubyで書きたいと思ってしまう。 ※だったらWindows CE…

you git

昨日の続きでAndroidのJNI周りのソースを見ようと、仕事場からTortoiseGitを起動したのだが、cloneを含めて一切のコマンドが届かない。Tortoiseだと状況が解りにくいので、コマンドで試してみよう。 >git clone git://android.git.kernel.org/platform/exter…

WebViewとEmulatorとProxy

Android Platform 1.6 (API Level4)では問題無いのだが、2.0(API Level 5)、2.0.1(API Level 6)では相変わらずプロキシを通してインターネットに繋がらない。SDKのせいなのかエミュレータのせいなのか、さっぱりわからない。ならばAndroidのViewであるWebVie…

Android SDK いろいろ更新

きてた。Android SDK Android DevelopersAndroid 2.0.1, Release 1 Android 1.6, Release 2 SDK Tools, Revision 4 ADT 0.9.5今回は軽微なFixなど大きな変更は無し。でも 2.0.1はAPI Level 6なんだな。

com.android.internal.policy.impl.PhoneWindow

Activityをデバッグしていると、内部でViewを扱う際に頻繁にWindowクラスを取得していることが解る。Activity.java public View findViewById(int id) { return getWindow().findViewById(id); } public void setContentView(int layoutResID) { getWindow()…

ntlmaps (NTLM Authorization Proxy Server)でNTLM認証を迂回する

肝心のNTLM認証は、SDK側でFixされるのを待つか、自分でプロキシの認証部分を書き換えないと駄目みたいだな。 自分で書くかなと思い、半ば諦めついででNTLM認証関係の資料を探ってみて、 The NTLM Authentication Protocol and Security Support Provider NT…

Fiddler2をHTTPデバッグプロキシとして利用する

Android SDKのエミュレータで実際にどのようにHTTP通信をしているかを詳しく覗きたかったのだが、以前に日記で紹介したFiddler2をフォワードプロキシとして利用することで、簡単にHTTPのデバッガとして利用できる。(別にFiddler2に限ったことではなく、フォ…

鬼門

Androidのエミュレータがプロキシを越せないと書いたが、よく考えたらうちのプロキシはNTLM認証なのだった。Proxy環境下でのRubyGems - Kazzzの日記エミュレータは直接プロキシに接続する訳ではなく、実際にはJava(又はC)からPCのネットワークインタフェース…