الويب للأجهزة المحمولة - أفضل الممارسات ل ASP.NET [مغلقة

StackOverflow https://stackoverflow.com/questions/396280

سؤال

البدء في بناء تطبيقات الويب للأجهزة المحمولة (أي هاتف).
ما هو أفضل نهج باستخدام ASP.NET 3.5 / ASP.NET 4.0 و C #؟

تحديث (Feb2010)
أي أخبار باستخدام Windows Mobile 7؟

هل كانت مفيدة؟

المحلول

ذلك يعتمد إذا كنت تريد حقا دعم كل الهاتف الخليوي أو هاتف جديد للغاية أو جديد مثل iPhone الذي ليس لديه العديد من القيود التي تقدم صفحات الويب. إذا كنت تستطيع أن تسأل الحقيقي تقديم HTML، جافا سكريبت وملفات تعريف الارتباط الدعم على الهاتف كشرط, ، ثم القيد الحقيقي هو حجم محدود من الشاشة. وبعد يجب أن تفعل غرامة مع تطوير الويب "العادي" في ASP.NET الرعاية لحجم الصفحات.

إذا كان هذا هو الحال، يمكنك التوقف عن القراءة هنا.

اذا أنت تريد حقا دعم كل الهاتف الخليوي, ، وخاصة القديمة، يجب أن تدرك أن هناك أنواع مختلفة من الهواتف. كثير منهم لديهم القيود والقيود عرض صفحات الويب. يمكن لبعضها استخدام جافا سكريبت، ولكن الكثير منهم لا يفعلون ذلك. يمكن لبعضها عرض محتوى HTML، ولكن العديد من الآخرين لا يستطيعون. يجب عليهم الاعتماد على معيار "لغة الترميز اللاسلكية" للوصول إلى الويب. لذلك، ليس من السهل إنشاء موقع على شبكة الإنترنت يدعم كل هذه الأجهزة المختلفة.

فيما يلي بعض الروابط بمحتوى عام (غير محدد ASP.NET)، والتي يمكن أن تساعد في الحصول على الصورة بأكملها:

لكن قيودهم الرئيسية هي، كما ذكرت بالفعل، شاشة أصغر من الكمبيوتر الشخصي العادي. والعديد من الهواتف المحمولة لا تدعم جافا سكريبت وملفات تعريف الارتباط وبعضها حتى لا تظهر الصور.

هناك معايير علامات خاصة للهواتف المحمولة. صفحات WML هو على سبيل المثال معيار اعتمد على نطاق واسع للهواتف المحمولة. ينظر WML إلى "لغة الترميز اللاسلكية" والتي تعتمد على XML. يمكنك العثور على وصف ومرجع 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 (وغيرها من معايير Mobile Markup) محتوى تلقائيا. ليس لديك لكتابة ملفات WML بنفسك. تكتشف آلية مدمجة نوع الجهاز (الهاتف الخليوي) لطلبات الويب. ومع ذلك، لا يعمل الكشف عن الجهاز المحمول على ASP.NET بشكل صحيح بالنسبة لبعض الأجهزة (الأحدث). إلقاء نظرة على Wurfl., ، ملف تكوين XML الذي يحتوي على معلومات حول إمكانيات وميزات العديد من الأجهزة المحمولة.

يمكنك اختبار الصفحات التي تتطورها في ASP.NET في متصفح الويب القياسي، لكنها لن تعطي الصورة الصحيحة لما قمت بتطويره. هناك بعض المحاكاة المتاحة لهذه المشكلة، التي تحاكي الهاتف الخلوي على كمبيوتر سطح المكتب الخاص بك. هناك مايكروسوفت دعم المادة الذي يفسر حيث يمكنك تنزيلها.

ASP.NET التحكم المحمول

تعمل عناصر التحكم في ASP.NET Mobile، والتي كانت تعرف سابقا باسم "مجموعة أدوات Microsoft Mobile Internet" .NET Framework و Visual Studio لإنشاء تطبيقات الويب المحمولة من خلال تمكين ASP.NET لتسليم العلامات إلى مجموعة واسعة من الأجهزة المحمولة.

تعقد عناصر التحكم Mobile ASP.NET العلامة المناسبة (HTML 3.2، WML 1.1، ChTML، XHTML) أثناء التعامل مع أحجام الشاشة المختلفة والتوجهات وإمكانيات الأجهزة.

يتعلم أكثر هنا على موقع الويب الرسمي.

نصائح أخرى

بعض الأشياء التي يجب أن أذكرها منذ أن أعمل على شبكة لاسلكية في كندا. حاول الاحتفاظ بأي صور صغيرة (أو حتى غير موجودة) لزيادة أوقات الحمل وتقليل رسوم البيانات. على شبكتنا، إذا لم يكن المستخدم غير مشترك في خطة، فإن شبكتنا تتقاضى 15 دولارا / ميغابايت. يمكن أن يكلف بعض الصور غير المشفاة التي يحاول الهاتف تنزيلها بسهولة المستخدم، ولن تبدو هذه الصور الكبيرة جيدة على أي حال.

أعلم أنه لا يؤثر عليك، ولكن إذا كنت تستخدم أي بروتوكولات أخرى، مثل البث، أو أي بروتوكولات تستند إلى UDP، قم بتعيين الحد الأقصى لحجم الحزمة على الأقل 1300 بايت أو أقل. فقط بسبب الطريقة التي يعمل فيها الأجهزة المحمولة حيث إنها تحركات حول الشبكة. باستخدام TCP / IP، نستخدم MSS-LICMING للحماية من مشكلات الحزمة الكبيرة، ولكن لا يمكن تطبيق هذا على أي نقل UDP أو أي شيء آمن بروتوكول يستخدم رأس مصادقة. إذا تم تقديم الهواتف النقالة التي تستهدفها RIM، فيمكن تجاهل هذه النقطة بالكامل.

قد تستخدم بعض الهواتف النقالة وكيل WAP عند التحدث إلى خادمك، إذا كانت هذه الحالة، فحاول تجنب استخدام أي اتصالات تتطلب TCP / IP حيا. يتم تعيين بعض الوكلاء لعدم السماح بأي جلسات للحفاظ على حيا من خلالها، على الرغم من أنني أؤمن أن معظم الأجهزة الجديدة جيدة.

أنا متأكد من أن هناك أكثر من ذلك، أهم شيء يجب أن تحتفظ به في مانع من أن اتصال IP بالهاتف المحمول هو الكثير أكثر تعقيدا ثم فتح شخص متصفح ويب. يمكن أن يكون هذا النقل صعبا للغاية، لذلك إذا حاولت أن تفعل شيئا يتوهم حقا، حتى لو كان يعمل الآن، فقد لا يعمل دائما. أيضا نقطة سريعة أخيرة، يمكن أن تتقلب زمن البيانات وفقدان الحزمة بعنف، لذلك إذا كنت تفعل أي شيء في الوقت الفعلي، فقد تصل الزمن إلى 200 + MS، ورأيت فقدان الحزمة ارتفاعا إلى مستويات 20-30٪ لفترة قصيرة مرات.

حظا سعيدا، وإذا كان لديك أي أسئلة محددة، فتأكد من أن تسألهم.

مزيد من المعلومات هنا:ويندوز-موبايل تطوير - حيث للبدء

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top