Отладка в браузере эмулятора Windows Phone 7? - PullRequest
5 голосов
/ 12 мая 2011

Я пытаюсь протестировать мой самодельный JavaScript-фреймворк в максимально возможном количестве браузеров. Сегодня я понял, что на моем компьютере с Windows я могу установить инструменты разработчика Windows Phone 7 и протестировать его в эмуляторе.

Я сделал это, и, к сожалению, это не работает, но я понятия не имею, как сказать, что происходит не так. Я понятия не имею, как попытаться это исправить, потому что в платформе есть 1000 вещей, которые могут пойти не так, и все, что у меня есть, - это угадать.

Кто-нибудь знает, как отлаживать в браузере эмулятора, или я просто застрял?

Ответы [ 3 ]

4 голосов
/ 12 мая 2011

Для отладки моего Javascript из моего Javascript я звоню:

window.external.notify("Some debug message");

Я подписываюсь на событие WebBrowser ScriptNotify в моем XAML, а затем в C #:

private static void ScriptNotified(object sender, NotifyEventArgs e)
{
    Debug.WriteLine("Script notified: " + e.Value);
}
4 голосов
/ 19 декабря 2012

Это прекрасно ... Я добавил уведомитель Script в свой файл MainPage.xaml.cs в разделе

public partial class MainPage : PhoneApplicationPage
    {

, и он работает как шарм.

Я тогданашел этот фрагмент:

  // provide our own console if it does not exist, huge dev aid!
  if(typeof window.console == "undefined")
  {
  window.console = {log:function(str){window.external.Notify(str);}};
  }

      window.onerror=function(e, url, lineNumber)
      {
          console.log("ERROR! : " +url + "(" + lineNumber + ") : " + JSON.stringify(e));
      };

  console.log("Installed console ! ");

здесь: http://sim4all.com/blogging/?p=266.. ПОЖАЛУЙСТА, обратите внимание, что я изменил onerror для включения строки nr и ссылки на файл.

это реализует объект Console.logи сообщение об ошибке .. Это действительно очень полезно ..

Эта целая операция имеет смысл только для загрузки слоя Cordova. Тогда Cordova позаботится об этом лучше.

Надеюсьпомогает .. Ким

2 голосов
/ 12 мая 2011

Отладка JS в браузере эмулятора довольно сложна. Вы можете использовать Fiddler для мониторинга сетевого трафика. Однако на данный момент IE в WP7 в основном основан на Internet Explorer 7 (с некоторыми функциями, портированными из IE8). Если ваш фреймворк работает с IE7, он должен работать на WP7 (хотя в браузере WP7 есть некоторые изменения). Обновление Mango перенесет это в IE 9. Они используют ту же кодовую базу IE 9, что и на ПК.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...