SO 有一些相关问题 - 但还没有找到答案 -
我想生成一个“签名”/桶 ID 来向我们的问题跟踪系统报告小型转储/崩溃。由于 MS 已经使用“bucket ids”做到了这一点,我想我可以重复使用他们的bucket/签名生成。
我可以从顶级过滤器或过滤器内的 _EXCEPTION_POINTERS 对象或 _MINIDUMP_EXCEPTION_INFORMATION 结构或从小型转储本身获取该 ID 吗?
这是一个 C++ 应用程序。
在 iOS 6 之前,调用 callStackSymbols() (也是 -[NSException callStackSymbols] 使用的)将提供人类可读的堆栈帧。然而,在 iOS 6 中,情况不再如此,只为 Apple 库提供地址(例如 57 CoreFoundation 0x367ba5db + 118)。
在 iOS 6 中如何以编程方式获取完全符号化的回溯?
我最近有一个应用程序由于 被 Apple 拒绝crash,但我无法从我们的最终重现崩溃。我已经检查了所有兼容的设备:iPhone、iPad和iPod。但是,我仍然无法重现崩溃。
我的问题是:我如何了解 Apple 团队使用哪种设备来测试应用程序。在崩溃报告中,他们提到了Hardware Model: xxx. 请问,有谁知道如何找到Hardware ModelApple团队使用的?
事件标识符:71C3E97D-4DF2-A84F-5EB28058AA11 CrashReporter 密钥:025fa689e0eb7fe33eaf5858d306609d6fb 硬件型号:xxx 进程:-------[225] 路径:
/private/FAC/B900/04B02Emobile/FAB/9B/var/1B -92ACE9AD72C5/------.app/------ 标识符:------------ 版本:1.0 (1.0) 代码类型:ARM-64(本机)父进程:启动 [1]日期/时间:2014-12-02 10:32:31.758 -0800 发布时间:
2014-12-02 10:18:02.789 -0800 操作系统版本:iOS 8.1.1 (12B435) 报告版本:105异常类型:EXC_CRASH (SIGABRT) 异常代码:0x0000000000000000, 0x0000000000000000 由线程触发:0
上次异常回溯:(0x18510e59c 0x195c840e4 0x184ff91f8 0x100086e1c 0x1000ddca0 0x1898c0aa0 0x1898c07b0 0x18993d060 0x18993cf74 0x1899afa48 0x189bd7f18 0x189bd86c0 0x1899adcf0 0x1899e3058 0x1899e2024 0x1899b3e90 0x1899b27cc 0x1899b051c 0x189bda218 0x1899e78c4 0x18998fec4 0x18998fec4 0x18998fc60 0x1000a48c0 0x18fc4a148 0x18b4e4438 0x18b540c1c …
我正在尝试调试我不知道原因的崩溃。不幸的是,我所拥有的只是我从 Crashlytics 中检索到的堆栈跟踪,并且几乎找不到我的应用程序导致这种情况发生的证据,因此很遗憾我无法提供任何具体的代码示例,我在这里发布纯粹是希望之前有人遇到过这种情况。
我在通过 Crashlytics 收集的所有相关崩溃堆栈跟踪中看到,它在名为“com.apple.avkit.seekQueue”的线程上崩溃。输出如下所示:
Crashed: com.apple.avkit.seekQueue
0 libobjc.A.dylib 0x18c3e17f4 objc_object::release() + 8
1 libsystem_blocks.dylib 0x18c86fa68 _Block_release + 160
2 libdispatch.dylib 0x18c81a9a0 _dispatch_client_callout + 16
3 libdispatch.dylib 0x18c828ad4 _dispatch_queue_serial_drain + 928
4 libdispatch.dylib 0x18c81e2cc _dispatch_queue_invoke + 884
5 libdispatch.dylib 0x18c828fa8 _dispatch_queue_override_invoke + 344
6 libdispatch.dylib 0x18c82aa50 _dispatch_root_queue_drain + 540
7 libdispatch.dylib 0x18c82a7d0 _dispatch_worker_thread3 + 124
8 libsystem_pthread.dylib 0x18ca23100 _pthread_wqthread + 1096
9 libsystem_pthread.dylib 0x18ca22cac start_wqthread + 4
Run Code Online (Sandbox Code Playgroud)
由于 Crashlytics,我看到的例外是 EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x0000000000000020。由此我只能假设有一个 AVPlayer 对释放或受限的内存地址做了一些事情,但堆栈跟踪没有显示除主线程中的 main.m 之外的任何其他进入我的应用程序的入口点。
FWIW,Crashlytics 还建议以下内容:
堆栈跟踪表明堆损坏可能导致您的应用程序崩溃。释放悬空指针、线程竞争或错误的指针算法很容易导致内存损坏。要记住的重要一点是,最终的崩溃可能发生在初始损坏之后很久。因此,此崩溃的堆栈跟踪可能无法提供有关代码中错误位置的任何线索。 …
如何从 React 本机应用程序中获取意外的 JS 错误及其堆栈跟踪?
我之前使用过 Fabric,但它的报告实际上没有用,因为它们没有反映实际 JS 中发生的情况。
我无法从 Playstore 控制台内的崩溃日志中找出导致崩溃的原因,它显示的是 android.runtime.JavaProxyThrowable。有时也会显示该地点,但未显示引发的原始异常。它是一个跨平台的 xamarin 表单应用程序。在我的情况下,日志看起来像
android.runtime.JavaProxyThrowable: at StackCardView.Com.Wenchao.Cardstack.CardStack.ICardEventListener.Discarded (System.Int32 p0, System.Int32 p1) [0x00000] in <9395370f1a304c7290a7531b2c3dfd4d>:0
at Com.Wenchao.Cardstack.CardStack+ICardEventListenerInvoker.n_Discarded_II (System.IntPtr jnienv, System.IntPtr native__this, System.Int32 p0, System.Int32 p1) [0x00009] in <54ad445d01d649f18c501aeb89761ae6>:0
at (wrapper dynamic-method) System.Object:97ca24d4-0414-43c1-a8ee-a1e52f293935 (intptr,intptr,int,int)
at md5d9e2c345da228fe4f95e9f8464432261.StackCardView.n_discarded (Native Method)
at md5d9e2c345da228fe4f95e9f8464432261.StackCardView.discarded (StackCardView.java:50)
at com.wenchao.cardstack.CardStack$2$1.onAnimationEnd (CardStack.java:184)
at com.wenchao.cardstack.CardAnimator$3.onAnimationEnd (CardAnimator.java:178)
at android.animation.AnimatorSet$AnimatorSetListener.onAnimationEnd (AnimatorSet.java:855)
at android.animation.ValueAnimator.endAnimation (ValueAnimator.java:1239)
at android.animation.ValueAnimator$AnimationHandler.doAnimationFrame (ValueAnimator.java:766)
at android.animation.ValueAnimator$AnimationHandler$1.run (ValueAnimator.java:801)
at android.view.Choreographer$CallbackRecord.run (Choreographer.java:920)
at android.view.Choreographer.doCallbacks (Choreographer.java:695)
at android.view.Choreographer.doFrame (Choreographer.java:628)
at android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.java:906)
at android.os.Handler.handleCallback (Handler.java:739)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:158) …Run Code Online (Sandbox Code Playgroud) 我的 Xamarin 应用程序在调试模式下运行良好,但在发布模式下崩溃。我收到此错误:“不幸的是,应用程序已停止”。我通过 USB 连接了我的手机,当我在发布模式下运行应用程序时,出现此错误。
不幸的是,我无法在 release mod 中调试应用程序,因为我在输出窗口中收到此消息:“Android 应用程序正在运行(在 android 项目属性中禁用调试)”,尽管选中了“启用开发人员检测”框。我尝试了所有链接替代 None/SDK/SDK 和 User 但仍然不起作用。
有没有办法在日志文件或其他内容中查看导致崩溃的原因?
在分析崩溃报告时,我看到了一个Non UI我以前从未见过的角色。我试图了解它对应的应用程序的状态。
Hardware Model: iPhone7,2
Code Type: ARM-64 (Native)
Role: Non UI
Parent Process: launchd [1]
OS Version: iPhone OS 11.4 (15F79)
Report Version: 104
Run Code Online (Sandbox Code Playgroud)
在Role头文件中提到这里,它指向内核源代码。在源代码的最新可用版本(以及以前的版本)中,我看到了一个TASK_NONUI_APPLICATION枚举常量,但它没有记录。
已经有一个TASK_FOREGROUND_APPLICATION和一个TASK_BACKGROUND_APPLICATION常量,所以我不明白Non UI(或TASK_NONUI_APPLICATION)可以是什么。
我想知道是否有人对 App Store Connect 和 Google Play Developer Console 有经验,它显示的崩溃报告日志与您使用的崩溃报告日志有什么区别,例如 firebase 崩溃报告(crashlytics)?有什么大的区别吗?我问是因为我正在决定是否应该在我的应用程序中集成 Firebase 崩溃报告,或者它在开发者控制台(iOS 和 Android)上显示的崩溃日志是否可以完成这项工作?
在 React Native 应用程序的生产中,从 firebase 的 crashlytics 获取 Android 上的错误:
Fatal exception: com.facebook.react.uimanager.IllegalViewOperationException.
Trying to update non-existent view with tag 85273.
Run Code Online (Sandbox Code Playgroud)
并且没有崩溃的情况,因此无法检测到它。我在模拟器和真正的 Android 设备上检查了很多次。
我们从这次事故中发现了什么?
public void updateView(int tag, String className, ReadableMap props) {
ViewManager viewManager = mViewManagers.get(className);
if (viewManager == null) {
throw new IllegalViewOperationException("Got unknown view type: " + className);
}
ReactShadowNode cssNode = mShadowNodeRegistry.getNode(tag);
if (cssNode == null) {
throw new IllegalViewOperationException("Trying to update non-existent view with tag " + tag);
}
if …Run Code Online (Sandbox Code Playgroud) debugging crash-reports crashlytics react-native react-native-android