【 mPaaS小程序发布成功后,iOS原生app无法调起小程序,该怎么解决?
】
排查方向包括:检查 RPC 请求是否正常、检查环境和离线包发布是否匹配等。
1、检查 RPC 请求是否正常
客户端需要主动拉取离线包信息,而拉取过程依赖 RPC 请求,如果RPC 链路存在问题,则无法正常获取离线包信息,导致加载失败。要确认 RPC 请求是否存在问题,需要在 Xcode 控制台中搜索 alipay.client.getUnionResource 观察 RPC 请求是否正常返回。
2、检查 mPaaS 控制台设置的 Bundle ID 与 iOS 工程是否完全一致,包括:
mPaaS 控制台(控制台 > 代码配置 > iOS)上设置的 Bundle ID:
工程的 Bundle "Indentifier:
工程中 Info.plist 的 Bundle Indentifier:
3、检查 H5 App 信息和发布状态是否正确
客户端需要主动拉取离线包信息,在 RPC 请求正常返回的前提下,如果服务端没有返回目标离线包的信息,也会导致加载失败的错误,错误原因为离线包 AppNotExist 不存在。
如果您的mPaaS小程序已经成功发布,但是在iOS原生app中无法调起小程序,可能是因为以下几个原因:
未在iOS原生app中添加小程序的引用。为了在iOS原生app中调起小程序,您需要在app的Info.plist文件中添加小程序的引用,具体来说是在标签中添加以下两个键值对:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>yourappScheme</string>
</array>
</dict>
</array>
其中,yourappScheme是您的iOS原生app的Scheme,需要替换成您的实际值。
小程序的Scheme未在小程序的Info.plist文件中注册。为了在iOS原生app中调起小程序,小程序也需要在Info.plist文件中注册自己的Scheme。具体来说,您需要在小程序的Info.plist文件中添加以下键值对:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>yourappScheme</string>
</array>
</dict>
</array>
其中,yourappScheme是您的小程序的Scheme,需要替换成您的实际值。
iOS原生app和小程序的版本不兼容。如果您的iOS原生app和小程序的版本不兼容,可能会导致无法调起小程序。您需要确保两者的版本兼容,否则可能需要更新其中一个版本。
如果您遇到了以上问题,可以尝试以上方法来解决。如果问题仍然存在,可以联系mPaaS官方客服寻求帮助。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。