2006/07/05(水) [n年前の日記]
#3 [iappli] サウンドデータ読み込みエラー
SO902i で、サウンドデータの読み込みがエラーになる件。もう1本のバグ報告にも SO902i のサウンド絡みがあって、ようやくピーンときた。たぶん、サウンドデータを読み込んでるフォルダが違うのだと思う。
今回は、端末によってアクセスするフォルダが変わる環境での配信らしく。その中でも SO902i だけは、置かれるフォルダが複数あって。どこに置くかはアプリによって異なる。一応そのあたりについては、以前打診してあって。「○○フォルダに置くように」という指示が来てるのでそれに従ってる。…でも、実際はそうなってないのだろう。指示のあったフォルダと異なる、別端末のフォルダにアクセスするような、サーバ側の設定になってるのではないかと推測。
別端末フォルダに置かれたサウンドデータファイル数と、SO902i 用サウンドデータファイル数は、数が異なる。SO902i のほうが1つ少ない。アプリは、「SO902i で動いてるから、n個ファイルを読めばいいのだな」と、n個だけファイルを読み込む。ところが、実際に読み込んでるデータは、別端末のデータ = n+1個が必要なデータ。全部のサウンドデータをhttpで読み込んでない・スクラッチパッドに保存してない状態なのに、展開(?)を始めちゃうものだから、途中でデータが足りなくなってエラーが発生するんじゃないかと。
もう1本のほうは、アプリを起動するたびにサウンドデータだけを毎回読み込み直してしまうらしい。…各端末用サウンドデータの先頭には簡易チェックサム値が入ってる。アプリ側で保持してる簡易チェックサム値と比較して、値が違っていたらロードに失敗してると判断して、再度読み込むような作りにしてある。SO902i は、別端末のサウンドデータを読み込んでしまってるから、チェックサムが合うわけもなく。何度もサウンドデータを読み込んでしまうのではないかと。たぶん。おそらく。
対策として思いつくのは以下の2つ。
や、本当にそうなのかという不安もあるわけだけど。でも、こういう流れになっちゃってると想定すれば、しっくりくる不具合なんだよな…。とりあえずこの件に関しては、どの対策を選ぶのか検討してほしいとメールで向こうに伝えておいたので、返事 or 差し替えデータ待ちということで。
今回は、端末によってアクセスするフォルダが変わる環境での配信らしく。その中でも SO902i だけは、置かれるフォルダが複数あって。どこに置くかはアプリによって異なる。一応そのあたりについては、以前打診してあって。「○○フォルダに置くように」という指示が来てるのでそれに従ってる。…でも、実際はそうなってないのだろう。指示のあったフォルダと異なる、別端末のフォルダにアクセスするような、サーバ側の設定になってるのではないかと推測。
別端末フォルダに置かれたサウンドデータファイル数と、SO902i 用サウンドデータファイル数は、数が異なる。SO902i のほうが1つ少ない。アプリは、「SO902i で動いてるから、n個ファイルを読めばいいのだな」と、n個だけファイルを読み込む。ところが、実際に読み込んでるデータは、別端末のデータ = n+1個が必要なデータ。全部のサウンドデータをhttpで読み込んでない・スクラッチパッドに保存してない状態なのに、展開(?)を始めちゃうものだから、途中でデータが足りなくなってエラーが発生するんじゃないかと。
もう1本のほうは、アプリを起動するたびにサウンドデータだけを毎回読み込み直してしまうらしい。…各端末用サウンドデータの先頭には簡易チェックサム値が入ってる。アプリ側で保持してる簡易チェックサム値と比較して、値が違っていたらロードに失敗してると判断して、再度読み込むような作りにしてある。SO902i は、別端末のサウンドデータを読み込んでしまってるから、チェックサムが合うわけもなく。何度もサウンドデータを読み込んでしまうのではないかと。たぶん。おそらく。
対策として思いつくのは以下の2つ。
- サーバ側の設定を変えてもらう。(本来のフォルダにアクセスするようにしてもらう)
- SO902iでも別端末でもどっちでも鳴るサウンドデータを用意してもらって、別端末のサウンドデータを差し替えつつ、SO902i は、その別端末用のサウンドデータを使うもの・流用するものとする。
や、本当にそうなのかという不安もあるわけだけど。でも、こういう流れになっちゃってると想定すれば、しっくりくる不具合なんだよな…。とりあえずこの件に関しては、どの対策を選ぶのか検討してほしいとメールで向こうに伝えておいたので、返事 or 差し替えデータ待ちということで。
◎ ハイスコア登録。 :
0点も送信できてしまうというバグが。ヤバイ。修正。…してたんだけど。ふと、同点のハイスコアがある場合、それも送信できてしまうことに気づいた。いいのかしら。
そもそも、ハイスコア記録が1つだけならそういうことは起きないのに。複数にするのが必須と言われたので入れたことは入れたけど。本当に必要なのかしら。
アーケードゲームっぽい雰囲気でも出したいのかしら。…だったらさ。起動時にメンテナンス画面でも出しませうか。グリッドを出してみたりとか。「ROM OK」「RAM OK」「VRAM CHECK OK」と(意味は無いけど)表示してみたりとか。…上が求めてるのは、そういう「○○っぽさ」ではないのだろうな。
そもそも、ハイスコア記録が1つだけならそういうことは起きないのに。複数にするのが必須と言われたので入れたことは入れたけど。本当に必要なのかしら。
アーケードゲームっぽい雰囲気でも出したいのかしら。…だったらさ。起動時にメンテナンス画面でも出しませうか。グリッドを出してみたりとか。「ROM OK」「RAM OK」「VRAM CHECK OK」と(意味は無いけど)表示してみたりとか。…上が求めてるのは、そういう「○○っぽさ」ではないのだろうな。
[ ツッコむ ]
以上です。