- PR -

VS2003で携帯WEB開発

投稿者投稿内容
だいご
会議室デビュー日: 2007/09/24
投稿数: 17
投稿日時: 2009-03-28 16:43
自己レスです。

すみません。
マルポになってしまいますが、
AU携帯に関するQAのサイトがあるので
そちれでも質問してみようと思います。

http://www.naruhodo-au.kddi.com/

この場に集まる人を決して『自分の質問に答えるための道具』
と思う様な事はしません。

結果が判ればご報告いたしますし、
私も他の方の質問に答えていきたいと
思っています。
甕星
ぬし
会議室デビュー日: 2003/03/07
投稿数: 1185
お住まい・勤務地: 湖の見える丘の上
投稿日時: 2009-03-28 19:52
一応基本的な事項をフォローしておきます。

まず.NETを使った携帯電話用のWEB開発は十中八九うまくいきません。FrameworkがASPXからHTMLに変換しますが、その変換処理は携帯電話を考慮していません。Compact Frameworkもありますが、PDAを対象としたもので、日本国内の携帯電話についてはまともにフォローされていません。突き放すようですが「.NETを使うのをやめる」というのが一番お勧めの解決方法です。

ソースを転載する場合は、ちゃんと問題のおこるソースを転載してください。「こんな感じ」といわれても、場合によっては問題箇所が削除されてたりして空しいのです。

携帯電話はバージョンによって仕様が異なるので、機種名まで明記したほうが良いでしょう。

ボタンを押しても無反応って事は、JavaScriptが実行されていないか、途中でエラーになってるんじゃないですかね?
デューン
大ベテラン
会議室デビュー日: 2004/04/21
投稿数: 174
お住まい・勤務地: Tokyo
投稿日時: 2009-03-29 20:32
引用:

私の方でも同じ様にHTMLファイルを作りやってみたのですが
『このページは表示できません(ヘッダー異常)』
になりました。何か環境の設定とか必要なのでしょうか?


どのタイミングでこれが出たのかによりますので何とも言えません。
(初回アクセス?ボタン押下時?)

私の方はだいごさんが提示されたHTMLを 1バイトも変更せずに
shift jisのhtmlファイルにして、IIS5.1(Apache2.2だったかも)で表示させただけです。
(ファイル名はsample2.htmだったかな)
localhostのhtmlファイルなので、サーバー設定がどうのこうのとかは気にしてません。


URLが変化するのは不明ですが、セッションIDとか、VIEWSTATEとかを疑いますね。私の場合。


# 余談ですが私も携帯電話だとphpとか選択します。
# どの機種までフォローするかによってはVIEWSTATEのサイズも気にしないといけないですし。


引用:

(甕星さんの 2009-03-28 19:52の書き込み)
ボタンを押しても無反応って事は、JavaScriptが実行されていないか、途中でエラーになってるんじゃないですかね?


最初そう思ったんですが、提示されてるHTMLに限ってはdopostbackも走らないので動くような気がするんですよね・・。
imageボタンとか使い始めたらそんな現象になりそうな気がします。

だいご
会議室デビュー日: 2007/09/24
投稿数: 17
投稿日時: 2009-03-30 16:44

甕星 さん

ありがとうございます。

>まず.NETを使った携帯電話用のWEB開発は十中八九うまくいきません。
>FrameworkがASPXからHTMLに変換しますが、
>その変換処理は携帯電話を考慮していません。
>Compact Frameworkもありますが、PDAを対象としたもので、
>日本国内の携帯電話についてはまともにフォローされていません。
>突き放すようですが「.NETを使うのをやめる」というのが一番お勧めの解決方法です。

はい、私も今回でそう思いました。


>ソースを転載する場合は、ちゃんと問題のおこるソースを転載してください。
>「こんな感じ」といわれても、場合によっては問題箇所が削除されてたりして空しいのです。

ソースに関しては「こんな感じ」ではなく、この通りのデータが携帯端末に向けて送られている
はずです。(AUの場合途中自サーバで変換しているかもしれませんが・・)
また、実際の開発コード(.aspxと.axpx.c)はVS2003のMobileWebApplicationでXHTMLを出力
する様に、各オブジェクト(例えばSystem.Web.UI.MobileControls.TextBoxなど)の
サブクラスを作成したりしているので、簡単なソースを提示するのは難しいです。


>携帯電話はバージョンによって仕様が異なるので、機種名まで明記したほうが良いでしょう。

これは、前回のヴァン さん の返事に書きましたとおり『W53CA』です。


>ボタンを押しても無反応って事は、JavaScriptが実行されていないか、
>途中でエラーになってるんじゃないですかね?

今回出力されているHTMLでは、do_PostBack()が起動される事はないと思います。
テストで使用した携帯では JavaScriptはサポートされていないようです。
だいご
会議室デビュー日: 2007/09/24
投稿数: 17
投稿日時: 2009-03-30 16:45

デューン さん

ありがとうございます。


>どのタイミングでこれが出たのかによりますので何とも言えません。
>(初回アクセス?ボタン押下時?)

初回アクセスは綺麗に表示され、ボタン押下時に発生しました。


あと自己レスになりますが、IISから送り出すHTMLで自動的に作成されてしまう下記の部分

<input type="hidden" name="__EVENTTARGET" value="">
<input type="hidden" name="__EVENTARGUMENT" value="">



<input type="hidden" name="__EVENTTARGET" value=""></input>
<input type="hidden" name="__EVENTARGUMENT" value=""></input>

などとして、デューンさんがされた様にHTMLファイルとして保存し実行したところ
旨く動作しました。

もしこれが原因だとしたら、どうしようも無い様です。

デューン
大ベテラン
会議室デビュー日: 2004/04/21
投稿数: 174
お住まい・勤務地: Tokyo
投稿日時: 2009-03-30 17:10
submitできていたのであれば、最初の
引用:

Submit用のボタンを押下しても無反応になってしまいます。


はひとまず解決ですか?
(ちなみにタグを修正したらsubmitボタンを押して反応するようになりました?)


ヘッダエラーに関してはXHTML構文エラーだったのですかね。

ASP.NET 2.0だと大丈夫かもしれませんが・・・。
xhtmlConformance 要素は1.14にはなさそうですし。

だいご
会議室デビュー日: 2007/09/24
投稿数: 17
投稿日時: 2009-03-30 21:02

みなさんへ

色々なご指導ご鞭撻ありがとうございました。

やはり前回の自己レスのとおり、
自動的に出力されてしまう

<input type="hidden" name="__EVENTTARGET" value="">
<input type="hidden" name="__EVENTARGUMENT" value="">

の部分が原因のようで、.NET1.1ではコントロールできない
ようです。

.NET2.0以降で制御出来るのか、また、MobileWebApplicationではなく
通常のWebApplicationクラスでは出来るのか
だいご
会議室デビュー日: 2007/09/24
投稿数: 17
投稿日時: 2009-03-30 21:03

みなさんへ

色々なご指導ご鞭撻ありがとうございました。

やはり前回の自己レスのとおり、
自動的に出力されてしまう

<input type="hidden" name="__EVENTTARGET" value="">
<input type="hidden" name="__EVENTARGUMENT" value="">

の部分が原因のようで、.NET1.1ではコントロールできない
ようです。

.NET2.0以降で制御出来るのか、また、MobileWebApplicationではなく
通常のWebApplicationクラスでは出来るのか
調べて見ます。

ありがとうございました。

スキルアップ/キャリアアップ(JOB@IT)