loadUrl で "file:///...?" は使えない

マーケットに流している某古い地図なアプリ、Dalvik側は WebView#loadUrl で HTML ファイルをロードしているだけです。
で Not Found なエラーが出てました。レポートして下さった方、ありがとうございます。
症状は次の通り。

  • 1月のアップデード後に発症
  • 具体的には Not Found が出る
  • 少なくとも IS03 では出なかった
  • 少なくとも Iconia では出た

問題のアップデートでは、Dalvik側からJavaScript側に情報を渡すのに file:///androi_asset/index.html?... と URL にクエリパラメータを織り込むようにしました。なぜこういうことをしたか? 楽だから。
これがまた IS03 でセーフだったのがいけなかった。デスクトップのブラウザに対してもこの「ワザ」を使うので、レポートを頂くまで全くノーマークでした。
問題は "?" を付けていたこと。クエリパラメータを使わずに、直接 Dalvik にアクセスしてパラメータに相当するものを取得することで解決しました。
ただ、どの Androidバージョンからダメなのかが、分かりませんでした。
iconia なのでたぶん Android 3.2.1 はアウトなんだろう、あとエミュレータですが 4.0 でもアウトなのは確認しました。ただ、エミュレータの 3.0-3.2 はセーフでした。
まあ "file:///...?..." はやらない、ということにしておけば良い、と。