ローカルというかアプリ内のHTMLファイルを置いて、createWebview する事あるじゃないですか。

Titanium SDK 3.2.0に上げたら、AndroidのローカルWebViewが動かなくなって焦った、と言う話です。

動かないというか、jQueryが見つからないのです。

Uncaught ReferenceError $ is not defined とか言われます。

環境は Alloy 1.3.0 + Titanium SDK 3.2.0、Mac OS X (Marvericks) です。

Alloyの場合、app/assets の下にHTML置きますよね。

例えば

app/assets/html/hoge.html

があって、その中からjQuery読んだりしますよね。

<script src="./js/jquery.js" />

3.1.3の頃までは、HTMLもjsも

build/android/bin/assets/Resources/ の下にコピーされてた様に思うんですけど(未確認)、

3.2.0 の今は、assets の下のファイルでも拡張子jsは ビルド時に build/android/assets の下にコピーされる様になったみたいで、そのせいでHTMLファイルからリソースが見えないのです。

ローカルWebViewから読み込むjsの拡張子を変える(jslとか)事で回避できます。

知ってたらどうって事ないけど知らないとドハマりしました。