我在 Play Store 上发布了一个 Flutter 应用程序,该应用程序时不时地报告崩溃。为了构建它以供发布,我使用了如下命令进行混淆:
flutter build apk --obfuscate --split-debug-info=build/app/outputs/symbols
Run Code Online (Sandbox Code Playgroud)
现在,在 Play Console 中,我从发生的崩溃中获取堆栈跟踪,例如:
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 0 >>> com.package.name <<<
backtrace:
#00 pc 00000000000744b0 /apex/com.android.runtime/lib64/bionic/libc.so (abort+160)
#00 pc 00000000002bc350 /data/app/com.package.name-CelqfOPR1qgCAOmLM1XLVg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x5cc000)
#00 pc 00000000002b29c0 /data/app/com.package.name-CelqfOPR1qgCAOmLM1XLVg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libflutter.so (offset 0x5cc000)
#00 pc 0000000000000001 <unknown>
Run Code Online (Sandbox Code Playgroud)
其中“package.name”是我的应用程序的包名称。
如何反混淆/符号化该堆栈跟踪?
我已经尝试按照建议使用 flutter symbolize 命令来实现适当的架构:
flutter symbolize -i err.txt -d app.android-arm64.symbols
Run Code Online (Sandbox Code Playgroud)
但它只是再次打印 err.txt 文件(堆栈跟踪)。
在Android上调试Flutter崩溃报告的整个过程中我是否遗漏了一些东西?
我已成功使用此技术,从画布上的DOM元素(如输入和选择字段)中绘制用户输入,并使其可用作图像.
这在Chrome,Safari和Firefox中运行良好,但在Internet Explorer 11上,我收到以下错误:
ctx.drawImage()调用时会发生错误 .基本上,我试图在这个小提琴中做的是在画布上绘制SVG黄色圆圈图像和由我提供的任意SVG.这似乎适用于除IE11之外的所有主流浏览器.还有其他人遇到过同样的问题,并且知道一些解决方法吗?