问题1:应用研发平台EMAS发布补丁后,用调试工具可以更新,卸载重新安装基线包,第一次调用queryAndLoadNewPatch返回的code还是6,这可能是什么原因呢?调用的位置都是按照SDK手册一步步来的。
问题2:日志里 Sophix.NetworkManager: query no update 就表示没发现有新补丁发布呗?
当使用EMAS发布补丁后,调用queryAndLoadNewPatch
接口返回的code
为6时,可能有以下几个原因:
... 补丁发布状态未生效:在发布补丁后,可能需要一定的时间才能使补丁生效。请确认补丁发布状态已经生效,可以等待一段时间后再次调用queryAndLoadNewPatch
接口进行查询。
... 基线包未正确安装:如果卸载并重新安装基线包后,仍然返回code
为6,可能是基线包未正确安装。请确保基线包已经正确安装,并且与发布的补丁版本相匹配。
... 网络连接问题:请确保设备的网络连接正常,能够正常访问EMAS服务。如果网络连接存在问题,可能会导致无法正确查询和加载新补丁。
... SDK版本兼容性问题:请确保您使用的EMAS SDK版本与发布的补丁版本兼容。如果SDK版本不兼容,可能会导致无法正确加载新补丁。
建议您按照以下步骤进行排查和解决问题:
... 确认补丁发布状态已经生效,等待一段时间后再次调用queryAndLoadNewPatch
接口进行查询。
... 确保基线包已经正确安装,并且与发布的补丁版本相匹配。
... 检查设备的网络连接,确保能够正常访问EMAS服务。
... 确认您使用的EMAS SDK版本与发布的补丁版本兼容。
对于第一个问题,可能是因为应用研发平台EMAS发布的补丁还未生效或者在生效过程中出现了异常,导致第一次调用queryAndLoadNewPatch返回的code仍然是6。建议等待一段时间后再次调用queryAndLoadNewPatch,或者联系EMAS技术支持团队进行进一步的排查和解决方案。
对于第二个问题,Sophix.NetworkManager: query no update 表示当前没有新的补丁需要更新。在应用研发平台EMAS中,queryAndLoadNewPatch会先查询是否有新的补丁发布,如果有则会进行下载和安装,如果没有则会返回code为6。因此,Sophix.NetworkManager: query no update并不一定表示出现了问题,而是当前没有需要更新的补丁
在应用研发平台EMAS中,当发布补丁后,可以使用调试工具进行更新操作,也可以选择卸载并重新安装基线包。第一次调用queryAnd
方法时,将会触发相应的行为。
具体而言,在EMAS中进行补丁发布后,有两种方式可以更新应用:
使用调试工具:您可以使用EMAS提供的调试工具来更新已发布的补丁。这些工具通常提供了一键更新的功能,通过连接到设备,可以快速检测并安装最新的补丁。
卸载和重新安装基线包:另一种方式是卸载当前安装的应用,并重新安装基线包。基线包是指应用的初始版本或主要更新版本,不包含任何补丁。通过此方式,您可以确保应用回到基线状态,并在安装后再进行必要的更新操作。
在首次调用queryAnd
方法时,EMAS将根据应用的配置和服务器端的状态来判断是否需要更新应用。如果有可用的补丁,则会下载和应用补丁,以更新应用程序。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。