2016-07-27 93 views
5

使用iOS,Action App Extension,可以針對HTML運行JavaScript代碼。但是,經過Google的一些搜索之後,我還沒有找到任何解釋如何在這種情況下進行調試的文檔(插入斷點或簡單地添加/查看控制檯輸出語句)。請幫忙。謝謝!如何在iOS動作應用程序擴展中調試Javascript

+0

我想如果我不能這樣做,有沒有辦法在移動Safari瀏覽器中模擬/運行/調試我的JavaScript文件?謝謝。 –

+0

在stackoverflow上創建一個相關的問題[調試外部Javascript對移動Safari中的文檔](http://stackoverflow.com/questions/38624571/debug-an-external-javascript-against-documents-inside-mobile-safari) –

+0

我正在尋找同樣的事情。還沒有發現任何東西:/ –

回答

1

這並不難,儘管最近我遇到了連接到模擬器時出現的頁面問題。在那種情況下,我最終直接使用手機。 (顯然,你需要啓動桌面Safari中的iPhone模擬器已經開始檢查「遠程」模擬器課程後)

  • 確保設備Settings->Safari->Advanced->Web Inspector
  • (請確保您已經從受信任的計算機上設備)
  • 通過從Xcode運行並選擇Safari 在設備上啓動MobileSafari - 這不是必需的,但您也可以解碼iOS Objective-C/Swift代碼。您可以手動啓動MobileSafari,並且在桌面Safari中可以看到它。

  • 在桌面上啓動Safari,確保Show Develop menu in menu barPreferences中打開。

  • Develop菜單,你會看到你的設備名稱,說「BSharer的iPhone」
  • 選擇您的設備名稱下的頁面名稱,說「en.m.wikipedia.org - 維基百科」。

您現在正在桌面上調試該設備頁面。

有'自動啓動調試器等'的選項,但我發現,當我嘗試這些我的代碼不會執行。

您不能在應用程序擴展名爲JavaScript中放置調試器語句,因爲它只有在您的應用程序擴展啓動之前纔會被注入。相反,我會將debugger;聲明添加到我的應用擴展程序JavaScript代碼中,該代碼將在debugger;語句中暫停應用程序擴展JavaScript代碼中的調試程序。

通過在Share菜單中選擇它來啓動您的應用程序擴展,設置您感興趣的任何其他斷點,然後點擊調試器上的繼續按鈕。

你當然也會捕獲未捕獲的異常。

這個官方文檔是here

確保您從生產代碼中刪除debugger;行。

+0

這與您在iOS上調試任何JavaScript代碼的方式相同。我用Meteor/Cordova應用程序完成了類似的事情。在這種情況下,你不需要從Xcode開始。 –

+0

爲什麼你只有一個upvote?:| –

+1

可能是因爲我在發佈後幾個月回覆。這很好,謝謝。 –

相關問題