开发者社区 问答 正文

你好 麻烦帮我看下这个问题,我在本地真机运行没问题,在emas上应该是遇到了这个问题?

你好 麻烦帮我看下这个问题,我在本地真机运行没问题,在emas上应该是遇到了这个问题? 425abb0d43baf64ba0747f7c053f2580.png

展开
收起
真的很搞笑 2023-05-25 11:06:31 73 分享 版权
2 条回答
写回答
取消 提交回答
  • https://help.aliyun.com/document_detail/616785.html?spm=a2c9r.12641779.0.0.290f3Npm3Npmah 参考这个文档看下,此回答整理自钉群“应用研发平台EMAS开发者交流群”

    2023-05-25 16:51:09
    赞同 展开评论
  • 值得去的地方都没有捷径

    根据您提供的截图,可以看出问题是由于应用的签名不匹配导致的。EMAS SDK 在应用初始化时会校验应用的签名信息,如果签名不匹配,就会出现类似的错误。

    解决问题的方法是在 EMAS 控制台中添加应用的签名信息。具体步骤如下:

    在 EMAS 控制台中找到您的应用,并进入应用详情页面。

    在应用详情页面中,找到“应用签名”选项,并点击“添加签名”按钮。

    在弹出的对话框中,填写应用的签名信息。您可以通过以下命令获取应用的签名信息:

    keytool -list -v -keystore <keystore文件路径> 其中,<keystore文件路径>是您应用的 keystore 文件路径。执行命令后,会输出应用的签名信息,包括 MD5、SHA1 和 SHA256 等。

    填写完签名信息后,点击“确定”按钮保存。

    在应用代码中,使用 EMAS SDK 提供的初始化方法,并传入应用的包名和签名信息。具体方法如下:

    java import com.taobao.idlefish.flutterboost.EMASManager;

    ...

    String appKey = "your_app_key"; String appSecret = "your_app_secret"; String packageName = getPackageName(); String signature = EMASManager.getAppSignature(this); EMASManager.init(this, appKey, appSecret, packageName, signature); 其中,packageName 是应用的包名,signature 是应用的签名信息。EMASManager.getAppSignature() 方法可以获取应用的签名信息。

    完成以上步骤后,重新打包应用,并上传到 EMAS 控制台,然后重新运行应用即可。

    2023-05-25 16:17:27
    赞同 展开评论