2

モバイル デバイス (任意の電話) 用の Web アプリケーションの構築を開始します。
ASP.NET 3.5/ASP.NET 4.0 と C# を使用する最善の方法は何でしょうか?

更新 (2010 年 2 月)
windows mobile 7 を使用したニュースはありますか?

4

3 に答える 3

12

本当にすべての携帯電話をサポートしたいのか、Web ページのレンダリングに多くの制限がない iPhone のようなハイエンドまたは新しい携帯電話のみをサポートしたいのかによって異なります。要件として電話で実際の HTML レンダリング、Javascript、および Cookie のサポートを求めることができる場合、実際の制約は画面のサイズの制限です。ページのサイズに注意しながら、ASP.NET での「通常の」Web 開発をうまく行う必要があります。

その場合は、ここで読むのをやめてください。

すべての携帯電話、特に古い携帯電話を本当にサポートしたい場合は、さまざまな種類の電話があることに注意する必要があります。それらの多くには、Web ページを表示するための制限と制約があります。JavaScript を使用できるものもありますが、多くは使用できません。HTML コンテンツを表示できるものもあれば、できないものもあります。Web にアクセスするには、「Wireless Markup Language」標準に依存する必要があります。そのため、これらのさまざまなデバイスをすべてサポートする Web サイトを構築することは容易ではありません。

全体像を把握するのに役立つ一般的なコンテンツ (ASP.NET 固有ではない) へのリンクを次に示します。

ただし、主な制限は、既に述べたように、通常の PC よりも画面が小さいことです。また、多くの携帯電話は JavaScript や Cookie をサポートしておらず、画像を表示しないものさえあります。

携帯電話には特別なマークアップ標準があります。たとえば、WML ページは、携帯電話で広く採用されている標準です。WML は、XML に基づく「Wireless Markup Language」の略です。WML の説明とリファレンスは、w3schools.com にあります。

以下のコードは、サンプル WML ページを示しています。

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
   "http://www.wapforum.org/DTD/wml_1.1.xml">

<wml>
   <card id="card1" title="Stackoverflow">
      <do type="accept" label="Menu">
         <go href="#card2"/>
      </do>
      <p>
         <select name="name"> 
            <option value="Questions">Questions</option>
            <option value="MyAccount">My account</option>
            <option value="FAQ">FAQ</option>
         </select>
      </p>
   </card>
   <card id="card2" title="Menu">
      <p>
           You selected: $(name)
      </p>
   </card>
</wml>

幸いなことに、ASP.NET は WML (およびその他のモバイル マークアップ標準) コンテンツを自動的にレンダリングします。自分で WML ファイルを作成する必要はありません。組み込みメカニズムは、Web 要求のデバイス (携帯電話) のタイプを検出します。ただし、ASP.NET でのモバイル デバイスの検出は、一部の (新しい) デバイスでは正しく機能しません。多くのモバイル デバイスの機能に関する情報を含む XML 構成ファイルであるWURFLを見てください。

ASP.NET で開発したページを標準の Web ブラウザーでテストすることはできますが、開発した内容を正確に把握することはできません。デスクトップ コンピューターで携帯電話をシミュレートする、この問題に使用できるエミュレーターがいくつかあります。それらをダウンロードできる場所を説明するMicrosoft サポート記事があります。

ASP.NET モバイル コントロール

以前は "Microsoft Mobile Internet Toolkit" と呼ばれていた ASP.NET Mobile Controls は、.NET Framework と Visual Studio を拡張して、ASP.NET がさまざまなモバイル デバイスにマークアップを配信できるようにすることで、モバイル Web アプリケーションを構築します。

ASP.NET モバイル コントロールは、さまざまな画面サイズ、向き、およびデバイス機能を処理しながら、適切なマークアップ (HTML 3.2、WML 1.1、cHTML、XHTML) をレンダリングします。

詳細については、こちらの公式 Web サイトをご覧ください。

于 2008-12-28T16:36:26.700 に答える
3

私はカナダで無線ネットワークを扱っているので、言及しておくべきことがいくつかあります。読み込み時間を増やし、データ料金を削減するために、画像を小さく (または存在しないこともある) 維持するようにしてください。私たちのネットワークでは、ユーザーがプランに加入していない場合、ネットワークは 15 ドル/MB を請求します。携帯電話がダウンロードしようとする最適化されていない画像の一部は、ユーザーに簡単にコストをかける可能性があり、それらの大きな画像はとにかく見栄えがよくありません.

影響がないことはわかっていますが、ストリーミングなどの他のプロトコルや UDP ベースのプロトコルを使用している場合は、最大パケット サイズを少なくとも 1300 バイト以下に設定してください。ネットワーク上を移動する際のモバイルの動作方法のために、追加のヘッダー情報が追加されます。TCP/IP では、大きなパケットの問題から保護するために MSS クランプを使用しますが、これは UDP 送信や、認証ヘッダーを使用する安全なプロトコルには適用できません。対象のモバイルが RIM によって提供されている場合、この点は完全に無視できます。

一部のモバイルは、サーバーと通信するときに WAP プロキシを使用する場合があります。この場合は、キープアライブ TCP/IP を必要とする接続を使用しないようにしてください。一部のプロキシは、キープアライブ セッションの通過を許可しないように設定されていますが、新しいプロキシのほとんどは問題ないと思います。

他にもあると思いますが、覚えておくべき最も重要なことは、モバイルへの IP 接続は、誰かが Web ブラウザーを開くよりもはるかに複雑であるということです。このトランスポートは非​​常にトリッキーな場合があるため、非常に凝ったことをしようとすると、現在は機能していても、常に機能するとは限りません。また、最後の簡単なポイントとして、遅延とパケット損失は大きく変動する可能性があるため、リアルタイムで何かを行っている場合、遅延は 200 ミリ秒以上に達する可能性があり、パケット損失が 20 ~ 30% のレベルに急上昇するのを見てきました。回。

頑張ってください。特定の質問がある場合は、必ず質問してください。

于 2009-01-02T05:44:15.343 に答える
1

詳細はこちら: windows-mobile-development-where-to-begin

于 2008-12-30T11:59:08.927 に答える