一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - IOS - iOS 真機調試微信小程序

iOS 真機調試微信小程序

2021-05-10 13:33三水清 IOS

下面介紹下如何使用 Xcode、Reveal 和 Safari 來真機調試 iOS 上的小程序。感興趣的朋友跟隨腳本之家小編一起看看吧

平時開發小程序可以在開發者工具中進行調試,開發者工具提供了類似 chrome devtools 的調試面板,對于前端開發者來說入門門檻比較低。

小程序開發完成之后,我們需要在真機上進行測試,真機調試方面小程序開發者工具有預覽、遠程調試和設置體驗版本三大部分功能。除了這三種方式之外,我們還可以使用真機遠程調試,在 ios 上可以通過實現 safari 調試代碼,安卓中可以安裝 x5 內核的 inspect 版本,開啟 chrome remote debug 模式。使用真機調試不僅可以發現開發者工具中不能發現的 bug,還能幫助我們理解小程序的運行原理。

下面介紹下如何使用 xcode、reveal 和 safari 來真機調試 ios 上的小程序。

先大概說下原理,首先下載砸過殼版本的微信 ipa 文件(ios app 程序的后綴),然后使用 ipapatch 對 ipa 進行重新簽名,簽名賬號可以使用自己的 apple 賬號,最后將項目編譯到真機(也可以模擬器),就可以使用 safari 進行調試了。

  1. 下載 ipapatch 項目
  2. 使用 pp 助手下載砸過殼版本的微信 ipa(使用最新版本的微信,否則登錄會提示需要升級),這個需要安裝 pp 助手,下載后在下載目錄找到其 ipa
  3. 將微信的 ipa 文件命名為 app.ipa,替換掉 ipapatch 目錄的 assets/app.ipa 文件
  4. 使用 xcode 打開 ipapatch 項目
  5. 修改簽名到自己的開發者賬號,沒有開發者賬號可以用自己的 apple 賬號登錄

iOS 真機調試微信小程序

按照上面的提示,首先修改 bundleid(這里的填寫可以比較隨意),然后使用自己的 apple id 登錄賬號,再選擇自己的真機(數據線連接后可以選擇),選擇后點擊開始編譯,編譯結束會安裝到自己的 iphone 手機,安裝成功后就會發現自己的手機有兩個微信了。

接著再完成下面的步驟,就可以調試小程序了。

  1. 在 iphone 上信任自己的開發者描述文件:「設置 -> 通用 -> 描述文件 -> 信任你的證書」
  2. 在 iphone 上打開 safari 調試功能:「設置 -> safari -> 高級 -> web 檢查器打開」

首先登錄微信賬號,打開需要調試的小程序,打開后在 mac 電腦上打開「safari -> 開發」找到自己的 iphone 手機,選擇對應的頁面就可以進行調試了。

iOS 真機調試微信小程序

這里說明下:

  • jscontext:是小程序的邏輯層代碼,執行在 javascriptcore 環境中
  • page-frame.html:是小程序的視圖層代碼,執行在普通的 wkwebview 中
  • 上圖只開了一個小程序頁面卻顯示了兩個 page-frame.html,說明始終有一個頁面在后臺加載,準備打開小程序的其他頁面

調試 jscontext

打開 jscontext 之后,找到的第一個 js 文件實際就是微信的邏輯層代碼執行 waservice.js 了:

另外看到一些 jsbridge.subscribehandle 的代碼實際是 native 實現的一些方法或事件,然后調用 jscontext 中的方法回傳數據的。下面是點擊事件的一個截圖,會看到點擊事件傳遞的數據。

iOS 真機調試微信小程序

調試 page-frame.html

page-frame 的頁面是普通的 webview 容器,可以在 safari 中直接 debug,下面我打開了自己正在開發的項目,通過 console 面板修改 #canvas-wrapper 節點的內容:

iOS 真機調試微信小程序

修改后,在手機上看到效果:

iOS 真機調試微信小程序

這說明實際 webview 內是可以進行 dom 操作的,而且也可以使用普通的 bom 對象,如 alert、location等。

iOS 真機調試微信小程序

使用 reveal 查看 ui 布局

如果要研究微信小程序的布局,可以使用 reveal 軟件來查看 ui 布局。如下圖所示,在今日頭條的小程序布局中,可以看到播放器組件是 native 實現的組件,而我們做的新鮮天氣小程序的雨雪效果 canvas 也是 native 實現的。

iOS 真機調試微信小程序

iOS 真機調試微信小程序

要開啟 reveal,需要經過下面的步驟:

  1. 安裝 reveal,然后通過菜單「help -> show reveal library in finder -> ios library」,打開 revealserver.framework 所在目錄
  2. 將 revealserver.framework 復制到 ipapatch 的 assets/frameworks/ 內

上面兩個步驟如果都正確,再次用 xcode 打開 ipapatch 編譯運行,打開小程序后,會在 reveal 中看到可以操作了。

iOS 真機調試微信小程序

這時候點擊 icon 就可以隨意查看 ui 布局了。

廣告時間

最近由于小程序·云開發的推出,我發現使用云開發,可以大大降低小程序的開發門檻,以前很多靈光乍現的點子,往往因為缺乏后端知識或者缺少后端服務器沒有得到實現,現在使用小程序云開發提供的接口完全可以實現。

于是我自己用云開發的 api 實現了一個「新鮮天氣」的小程序,并將我在開發中的過程以及比較好的經驗,整理成了一本電子書,放在了騰訊云學院上《從0到1實現天氣查詢小程序》。

這份實戰課程以打造一款擁有天氣預報和簽到功能的小程序為主線,從基礎知識到小程序運行機制,從開發環境搭建到小程序開發、調試、上線,打通微信小程序開發全流程,讓新手可以從零開始完成并上線一個小程序。主要有以下三部分組成:

  • 小程序開發基礎知識:微信小程序、小程序云的開發基礎知識,最小程序的運行機制
  • 實戰開發「新鮮天氣」小程序:小程序開發壞境搭建、新鮮天氣小程序簡介、天氣預報頁面布局開發,頁面數據交互
  • 優化到上線:從多個方面介紹小程序優化的知識點,并且完成小程序的上線

iOS 真機調試微信小程序

當然,這份實戰課程收取一部分費用,不過價格比較便宜,希望能夠對想學習或者正在進行小程序開發的你有所幫助。

原文鏈接:https://cloud.tencent.com/developer/article/1197201

延伸 · 閱讀

精彩推薦
  • IOSiOS中MD5加密算法的介紹和使用

    iOS中MD5加密算法的介紹和使用

    MD5加密是最常用的加密方法之一,是從一段字符串中通過相應特征生成一段32位的數字字母混合碼。對輸入信息生成唯一的128位散列值(32個字符)。這篇文...

    LYSNote5432021-02-04
  • IOSiOS實現控制屏幕常亮不變暗的方法示例

    iOS實現控制屏幕常亮不變暗的方法示例

    最近在工作中遇到了要將iOS屏幕保持常亮的需求,所以下面這篇文章主要給大家介紹了關于利用iOS如何實現控制屏幕常亮不變暗的方法,文中給出了詳細的...

    隨風13332021-04-02
  • IOSiOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和Masonry簡單使用)

    iOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和

    這篇文章主要介紹了iOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和Masonry簡單使用)的相關資料,需要的朋友可以參考下...

    CodingFire13652021-02-26
  • IOSiOS自定義UICollectionViewFlowLayout實現圖片瀏覽效果

    iOS自定義UICollectionViewFlowLayout實現圖片瀏覽效果

    這篇文章主要介紹了iOS自定義UICollectionViewFlowLayout實現圖片瀏覽效果的相關資料,需要的朋友可以參考下...

    jiangamh8882021-01-11
  • IOSiOS中UILabel實現長按復制功能實例代碼

    iOS中UILabel實現長按復制功能實例代碼

    在iOS開發過程中,有時候會用到UILabel展示的內容,那么就設計到點擊UILabel復制它上面展示的內容的功能,也就是Label長按復制功能,下面這篇文章主要給大...

    devilx12792021-04-02
  • IOSiOS開發技巧之狀態欄字體顏色的設置方法

    iOS開發技巧之狀態欄字體顏色的設置方法

    有時候我們需要根據不同的背景修改狀態欄字體的顏色,下面這篇文章主要給大家介紹了關于iOS開發技巧之狀態欄字體顏色的設置方法,文中通過示例代碼...

    夢想家-mxj8922021-05-10
  • IOS詳解iOS中多個網絡請求的同步問題總結

    詳解iOS中多個網絡請求的同步問題總結

    這篇文章主要介紹了詳解iOS中多個網絡請求的同步問題總結,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧...

    liang199111312021-03-15
  • IOSiOS開發之視圖切換

    iOS開發之視圖切換

    在iOS開發中視圖的切換是很頻繁的,獨立的視圖應用在實際開發過程中并不常見,除非你的應用足夠簡單。在iOS開發中常用的視圖切換有三種,今天我們將...

    執著丶執念5282021-01-16
主站蜘蛛池模板: 好妈妈7在线观看高清 | 国产手机在线观看 | 妹妹骑上来蹭着蹭着就射了 | 娇小XXXXX第一次出血 | 无遮挡h肉动漫高清在线 | 香蕉国产成版人视频在线观看 | 草莓丝瓜芭乐樱桃榴莲色多黄 | 北条麻妃黑人 | 大肥婆丰满大肥奶bbw肥 | 日本一片免费观看高清完整 | 日韩a级片视频 | 青青99 | 午夜视频一区二区 | 亚洲精品第二页 | 3d美女触手怪爆羞羞漫画 | 三级伦理在线播放 | 我的好妈妈7中字在线观看韩国 | 九九99香蕉在线视频美国毛片 | 精品亚洲一区二区三区在线播放 | yellow字幕网在线zmzz91 | 国产真实偷乱视频在线观看 | 美女的隐私无遮挡撒尿 | 亚洲第一页综合 | 久久精品视频在线看 | 99精品久久精品一区二区小说 | 青青青青青国产免费手机看视频 | 无套白浆 | 荡女淫春2未删减版 | 久久黄色精品视频 | 久久久无码精品亚洲A片猫咪 | 午夜精品久久久久久久99蜜桃 | 日韩 国产 欧美 精品 在线 | 小嫩videos | 欧美整片在线 | 情侣奴伺候女王第2部分小说 | 欧美黑人性 | 美女被灌浣肠失禁视频 | 国产成人精品免费2021 | 成人福利在线视频免费观看 | 3d欧美人禽交 | 含羞草传媒网站免费进入欢迎 |