mPaaS-iOS小程序打不開問(wèn)題的解決方案是什么,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。
10年積累的網(wǎng)站設(shè)計(jì)、網(wǎng)站制作經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有代縣免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
在我們集成 mPaaS 插件并使用小程序的過(guò)程中,很多開發(fā)者遇到了打不開小程序的問(wèn)題。今天就舉例說(shuō)明,開發(fā)者在完成基本接入后,嘗試打開 H5 應(yīng)用,但容器頁(yè)面顯示錯(cuò)誤提示“設(shè)置標(biāo)簽”時(shí),應(yīng)該如何解決。
mPaaS 框架在打開一個(gè)H5應(yīng)用前,首先需要獲知該應(yīng)用離線包的基本信息。
因此客戶端會(huì)主動(dòng)通過(guò)RPC接口alipay.client.getUnionResource去拉取離線包信息。如果離線包信息獲取失敗,或沒(méi)有命中要打開的目標(biāo)應(yīng)用,容器會(huì)提示錯(cuò)誤 “系統(tǒng)繁忙,請(qǐng)稍后再試”。
針對(duì)這類問(wèn)題,排查方向包括:檢查 RPC 請(qǐng)求是否正常、檢查環(huán)境和離線包發(fā)布是否匹配等。
(一)檢查 RPC 請(qǐng)求是否正常
客戶端需要主動(dòng)拉取離線包信息,而拉取過(guò)程依賴 RPC 請(qǐng)求,如果RPC 鏈路存在問(wèn)題,則無(wú)法正常獲取離線包信息,導(dǎo)致加載失敗。要確認(rèn) RPC 請(qǐng)求是否存在問(wèn)題,需要在 Xcode 控制臺(tái)中搜索 alipay.client.getUnionResource 觀察 RPC 請(qǐng)求是否正常返回。如果存在錯(cuò)誤,一般的錯(cuò)誤代碼包括 7XXX 或 3XXX 系列等,例如:
正常返回樣例(result-status 為 1000):
Demo[83767:2555863] [mPaaSLog] APMobileNetwork alipay.client.getUnionResource resp:{ "Content-Encoding" = gzip; "Content-Type" = "text/plain;charset=UTF-8"; Date = "Tue, 11 Aug 2020 05:01:37 GMT"; Vary = "Accept-Encoding"; "mgw-traceid" = 0a1cfd401597122097726853822435; "result-status" = 1000; "server-time" = 1597122097739; }
錯(cuò)誤返回樣例(result-status 不為 1000):
Demo[83383:2546279] [mPaaSLog] APMobileNetwork alipay.client.getUnionResource resp:{ "Content-Length" = 0; "Content-Type" = "text/plain;charset=UTF-8"; Date = "Tue, 11 Aug 2020 04:50:08 GMT"; memo = "%E9%AA%8C%E7%AD%BERPC%E6%8E%A5%E5%8F%A3%20%E5%8A%A0%E7%AD%BE%E6%95%B0%E6%8D%AE%E4%B8%BA%E7%A9%BA"; "mgw-traceid" = 0a1d7667159712140890222728553; "result-status" = 7014; "server-time" = 1597121408902; tips = "%E9%AA%8C%E7%AD%BERPC%E6%8E%A5%E5%8F%A3%20%E5%8A%A0%E7%AD%BE%E6%95%B0%E6%8D%AE%E4%B8%BA%E7%A9%BA"; }
RPC 7XXX 系列錯(cuò)誤的處理方法
7XXX 類錯(cuò)誤均與 RPC 請(qǐng)求的簽名驗(yàn)證過(guò)程有關(guān),常見(jiàn)錯(cuò)誤代碼及原因如下:
錯(cuò)誤碼說(shuō)明示例7000沒(méi)有設(shè)置公鑰移動(dòng) APP 中無(wú)線保鏢中無(wú) appId 對(duì)應(yīng)的密鑰或者網(wǎng)關(guān)無(wú)法獲取 appId 對(duì)應(yīng)的簽名密鑰。7001驗(yàn)簽的參數(shù)不夠網(wǎng)關(guān)服務(wù)端驗(yàn)證簽名不通過(guò)。7002驗(yàn)簽失敗網(wǎng)關(guān)服務(wù)端驗(yàn)證簽名不通過(guò)。7003驗(yàn)簽-時(shí)效性失敗API 請(qǐng)求入?yún)?ts 時(shí)間戳超過(guò)系統(tǒng)設(shè)置的時(shí)間有效性。需要檢查客戶端時(shí)間是否為系統(tǒng)時(shí)間。7007驗(yàn)簽-缺少 ts 參數(shù)API 請(qǐng)求缺少驗(yàn)簽 ts 參數(shù)。7014驗(yàn)簽-缺少 sign 參數(shù)API 請(qǐng)求缺少驗(yàn)簽 sign 參數(shù)。一般情況下是客戶端簽名數(shù)據(jù)失敗,導(dǎo)致缺失 sign 參數(shù)。請(qǐng)檢查客戶端無(wú)線保鏢圖片是否正確。
(二)基本排查動(dòng)作
1. 檢查 mPaaS 控制臺(tái)設(shè)置的 Bundle ID 與 iOS 工程是否完全一致,包括:
mPaaS 控制臺(tái)(控制臺(tái) > 代碼配置 > iOS)上設(shè)置的 Bundle ID:
工程的 Bundle "Indentifier:
工程中 Info.plist 的 Bundle Indentifier:
2. 控制臺(tái)下載的 .config 文件內(nèi)容與項(xiàng)目中的 meta.config 是否完全一致:
mPaaS 控制臺(tái)下載的 .config 文件:
工程中的 meta.config 文件:
3. 客戶端設(shè)備的時(shí)間是否為當(dāng)前時(shí)間,時(shí)間誤差必須小于 8 小時(shí)。
4. 如果上述檢查存在信息不一致,則檢查不通過(guò),建議:
修改工程中的信息,確保與 mPaaS 控制臺(tái)一致。
如果手機(jī)時(shí)間信息不正確,請(qǐng)修正時(shí)間配置。
從控制臺(tái)下載最新 .config文件,通過(guò)mPaaS Extension 插件重新導(dǎo)入:
確認(rèn)所有信息正確后,卸載已安裝的 App,重新打包編譯后進(jìn)行調(diào)試,觀察 RPC 7XXX 類錯(cuò)誤是否得到解決。
(三)檢查 H5 App 信息和發(fā)布狀態(tài)是否正確
客戶端需要主動(dòng)拉取離線包信息,在 RPC 請(qǐng)求正常返回的前提下,如果服務(wù)端沒(méi)有返回目標(biāo)離線包的信息,也會(huì)導(dǎo)致加載失敗的錯(cuò)誤,錯(cuò)誤原因?yàn)殡x線包 AppNotExist 不存在。
基本檢查動(dòng)作:
1.根據(jù)檢查RPC請(qǐng)求是否正常的說(shuō)明,確認(rèn)alipay.client.getUnionResource
RPC請(qǐng)求是否可以正常返回。
2.在 Xcode 控制臺(tái)搜索錯(cuò)誤關(guān)鍵字 AppNotExist,確認(rèn)問(wèn)題根因是否為找不到目標(biāo) H5 App,例如:
3.在 mPaaS 控制臺(tái)和 iOS 工程中交叉確認(rèn)如下信息,包括:
worksapceId、appId、mpaasapi 等元數(shù)據(jù):控制臺(tái)和 meta.config 中的相關(guān)配置要完全一致,如果不一致,需要重新下載 .config 文件并導(dǎo)入。
目標(biāo)離線包 ID:離線包管理頁(yè)中的離線包 ID 要和工程代碼中要打開的離線包 ID 一致;
查看離線包發(fā)布狀態(tài),確認(rèn)離線包是否存在一個(gè)處于發(fā)布狀態(tài)的版本:
查看離線包發(fā)布狀態(tài),確認(rèn)離線包資源類型:必須為“普通資源包”;“全局資源包”不可直接打開;
查看離線包發(fā)布狀態(tài),確認(rèn)該發(fā)布的離線包版本:必須 大于 客戶端已安裝的離線包版本;
查看離線包發(fā)布狀態(tài),確認(rèn)該發(fā)布覆蓋的客戶端版本范圍:必須覆蓋測(cè)試 App 的當(dāng)前版本號(hào);注意:iOS 項(xiàng)目中,客戶端版本號(hào)依賴info.plist 中的 Produc Version 字段,而不是 Xcode 項(xiàng)目 version,這里需要開發(fā)者手動(dòng)同步。
工單協(xié)助
如果依然不能解決問(wèn)題,請(qǐng)準(zhǔn)備好相關(guān)問(wèn)題的復(fù)現(xiàn) Demo 工程,通過(guò)阿里云工單系統(tǒng)聯(lián)系 mPaaS 售后技術(shù)支持。
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。
名稱欄目:mPaaS-iOS小程序打不開問(wèn)題的解決方案是什么
文章網(wǎng)址:http://www.rwnh.cn/article8/jscoop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、、網(wǎng)頁(yè)設(shè)計(jì)公司、響應(yīng)式網(wǎng)站、建站公司、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)