我(在ITC中)下面提供了我的第一个Mac App Store应用程序的崩溃报告.使用基于Stackoverflow的知识我试图象征这个日志,但是(使用atos和otool)我只能读取最后(20)行(这意味着start (in My App) + 52.我真的不知道如何解释上面的行,以及如何查找崩溃的原因.
Process: My App [270]
Identifier: com.mycompany.myapp
Version: 1.0.0 (1.0.0)
App Item ID: 568750000
App External ID: 11410000
Code Type: X86-64 (Native)
Parent Process: launchd [143]
User ID: 501
Date/Time: 2012-11-07 19:21:11.365 -0200
OS Version: Mac OS X 10.8.2 (12C60)
Report Version: 10
Per-App Interval Since Last Report: 1232 sec
Per-App Crashes Since Last Report: 1
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: EXC_I386_GPFLT
Thread 0 …Run Code Online (Sandbox Code Playgroud) 这个错误让我发疯.从Google Play商店下载时,我的应用在启动时崩溃并出现以下错误:
java.lang.ClassNotFoundException
in dalvik.system.BaseDexClassLoader.findClass
Run Code Online (Sandbox Code Playgroud)
在我们的两个设备上使用eclipse构建时,我的应用程序不会崩溃.然而一个月前,一个客户使用他的手机构建我们的应用程序,然后它也在启动时崩溃.我忽略了这个问题,因为它正在我们的设备上工作,并认为它与谷歌地图键或密钥库有关.
现在,当从Play商店下载时,我们的应用程序崩溃了.我知道没有一种简单的方法可以解决这个问题,但是我们会理解正确的方向.
我也发现很难调试这个问题,因为在我们的设备上使用eclipse构建应用程序时效果很好!
这是我报告的完整错误日志:
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.denederlandsewateren.winkeloord/com.denederlandsewateren.views.StartScreenActivity}: java.lang.ClassNotFoundException: com.denederlandsewateren.views.StartScreenActivity
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2099)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2210)
at android.app.ActivityThread.access$600(ActivityThread.java:142)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1208)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4931)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:558)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: com.denederlandsewateren.views.StartScreenActivity
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61)
at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
at android.app.Instrumentation.newActivity(Instrumentation.java:1053)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2090)
... 11 more
Run Code Online (Sandbox Code Playgroud)
再说一遍,除了对这个问题的直接回答,但也许有人可以对这个错误日志提供的问题有所了解.
编辑
如果有帮助,这是清单文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.xxxx.xxxxx"
android:versionCode="1"
android:versionName="1.0" >
<permission
android:name="com.xxxxx.xxxxx.MAPS_RECEIVE"
android:protectionLevel="signature" />
<permission
android:name="com.xxxxx.xxxxx.permission.C2D_MESSAGE"
android:protectionLevel="signature" /> …Run Code Online (Sandbox Code Playgroud) 我一直在通过Google Play的alpha测试功能分发我的亲戚来测试我的应用程序.崩溃已经在"Crashes&ANRS"下显示了一段时间.但是,过去几天发生了很多崩溃,但根本没有出现在这个页面上.我已与他们交谈,他们向我保证已发生崩溃,并且他们一直在报告并将其发送给Google.
有谁知道为什么Google Play开发者控制台上的Crashes&ANRS页面不再提供这些崩溃报告?我还没有联系谷歌这个,但我现在也会这样做.
编辑:
好的,所以我今天刚刚检查了所有的崩溃报告.我想报告显示可能需要一天左右的时间.
这只是一个不够耐心的案例.
我正在尝试使用本指南在iOS上设置Parse崩溃报告,但不幸的是,即使在几次崩溃后,我的仪表板上也没有任何内容.
这是我的代码(我正在使用sdk 1.6.3):
- (void)crash {
[NSException raise:NSGenericException format:@"Everything is ok. This is just a test crash."];
}
...
[ParseCrashReporting enable];
[Parse setApplicationId:@"********"
clientKey:@"********"];
[self performSelector:@selector(crash) withObject:nil afterDelay:10.0];
Run Code Online (Sandbox Code Playgroud)
我按照故障排除指南:
我按照这里的推荐尝试了模拟器和设备.
最后,我在我的控制台中发出此消息:
+ [PFAnalytics trackEventually:params:]:无法识别的选择器发送到类0x10f08ac20
任何帮助都非常感谢.
我需要一些帮助来弄清楚崩溃报告中可能发生的事情.这对我来说是一个不可重现的问题,但有些用户在发布时会反复遇到这种情况.
当应用程序启动时,我将一个包含NSObjectController的nib加载到一个ContactsListDisplaySource对象,以及一个NSArrayController peopleArrayController(它是ContactsListDisplaySource对象内部的一个插座).peopleArrayController是从数据库中获取联系人列表的内容ContactsListDisplaySource refetchArrayController]:
- (void) refetchArrayController {
NSError *error = nil;
[_peopleArrayController fetchWithRequest:nil merge:NO error:&error];
if (error) {
NSLog(@"error in peopleArrayController fetch = %@", error);
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:请注意,这是从awakeFromNib,并使用fetch:而不是fetchWithRequest:merge:error返回0行
这有99%的时间可以工作,但我想弄清楚这个崩溃报告中发生了什么.崩溃报告中是否有任何可以解释问题的线索?
Date/Time: 2015-04-22 12:17:17 +0000
OS Version: Mac OS X 10.10.3 (14D136)
Report Version: 104
Exception Type: SIGSEGV
Exception Codes: SEGV_NOOP at 0x0
Crashed Thread: 0
Thread 0 Crashed:
0 libsqlite3.dylib 0x00007fff8e3770ad sqlite3VdbeHalt + 7741
1 libsqlite3.dylib 0x00007fff8e3bd9c7 …Run Code Online (Sandbox Code Playgroud) 我有一个音乐服务,在后台处理音乐播放,还有一些其他的事情,如通知需要进行的UI更改活动,存储和恢复队列,通过光标获取歌曲记录,以及每个歌曲改变的时间,它负责更新正在进行的通知的位图.
问题是什么?该服务几乎在用户试图完成的任何时候崩溃.几乎任何其他事情.例如,播放一首歌,然后打开游戏会使服务崩溃,有时像浏览网页上的光线也会让它崩溃.
一些细节:
1 -服务是通过startService(new Intent(this, MyMusicService.class)); 但是当用户离开活动时启动的,我打电话startForeground(mId, mNotification);来显示提供简单控制的持续通知,并且还因为startForeground()服务应该优先考虑因为activityManager杀死这些服务会破坏用户体验(如果服务被杀,音乐就会停止)
2 -我试图重现崩溃,当你做不那么繁重的工作时,肯定会发生这种情况,例如浏览chrome(这会在几乎50%的时间内重现崩溃),并且总是在做启动运行2时.仅供参考,如果没有做任何事情 - 只是在背景上播放音乐并且空闲,播放将根本不会停止,并且它的工作方式正如它所预期的那样.
3 -我用作测试设备的手机绝不是慢速或低内存设备,它是Galaxy Nexus.
4 -我试过捕捉一些长的,有时简单地说:
02-24 06:53:32.586: I/ActivityManager(387): Process com.deadpixels.light.player (pid 27720) has died.
Run Code Online (Sandbox Code Playgroud)
没有任何其他消息,有时相同的消息伴随着WINDEATH:
02-24 06:53:32.586: W/ActivityManager(387): Scheduling restart of crashed service com.deadpixels.light.player/.service.MyMusicService in 5000ms
02-24 06:53:32.602: W/InputDispatcher(387): channel '418d09c8 com.deadpixels.light.player/com.deadpixels.light.player.HomeActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x9
02-24 06:53:32.602: E/InputDispatcher(387): channel '418d09c8 com.deadpixels.light.player/com.deadpixels.light.player.HomeActivity (server)' ~ …Run Code Online (Sandbox Code Playgroud) 我通常能够解决崩溃,但在这里我不知道它来自哪里.
我使用解析,我只是在后台用完成块做一个请求.应用程序在简单的if条件下崩溃,我几乎无法识别任何内容,无法打印描述,...你有什么想法吗?一个起点?什么?Xcode 6.1真的很奇怪,似乎调试器有问题.
这是崩溃的日志:
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x000000019657a964 __kill + 8
1 MyAPP 0x00000001001f2b70 0x10009c000 + 1403760
2 libsystem_platform.dylib 0x0000000196610958 _sigtramp + 64
3 MyAPP 0x00000001001318cc 0x10009c000 + 612556
4 MyAPP 0x000000010013797c 0x10009c000 + 637308
5 MyAPP 0x0000000100135fc4 0x10009c000 + 630724
6 MyAPP 0x00000001002e408c 0x10009c000 + 2392204
7 MyAPP 0x00000001001dbf78 0x10009c000 + 1310584
8 libdispatch.dylib 0x00000001964393a8 _dispatch_call_block_and_release + 20
9 libdispatch.dylib 0x0000000196439368 _dispatch_client_callout + 12
10 libdispatch.dylib 0x000000019643d97c _dispatch_main_queue_callback_4CF + 928
11 …Run Code Online (Sandbox Code Playgroud) 我正在尝试将用户信息设置为在Android应用程序中的崩溃报告中崩溃报告,以便它可以帮助我找出哪些用户遇到了特定的崩溃.我已经探索并发现有3个API可以在崩溃报告中设置用户信息.
那些是,
void Crashlytics.setUserIdentifier(String identifier);
void Crashlytics.setUserName(String name);
void Crashlytics.setUserEmail(String email);
Run Code Online (Sandbox Code Playgroud)
建议使用所有API.所有文档均记录在http://support.crashlytics.com/knowledgebase/articles/120548-how-do-i-set-user-information-
但我不知道,1.如何获取输入这些API的用户标识符,名称和电子邮件详细信息?2.程序中哪个地方可以调用这些碰撞API?
请分享一些想法,如何实现这一点.
问候
安纳达
保存你自己的几个小时的调试,因为我已经浪费了2个星期后寻找神秘的应用程序崩溃的bug.事实证明,如果你向它添加了很多o(请参阅答案以获取更多详细信息)通知请求UNUserNotificationCenter,它将突然崩溃Springboard.我还没有找到解决方法,因为相同的代码适用于iOS 9及更低版本.您似乎无法批量添加之前的通知请求.以下是我每次收到的崩溃(数百名应用用户也是如此).知道我能做什么而不是回到使用UILocalNotifications?
Incident Identifier: 17BC9D5B-AF74-4592-8427-038375C27AE7
CrashReporter Key: a819553d1e72ee25a5ced9ddc79dbf00a7d3851f
Hardware Model: iPad5,3
Process: SpringBoard [2371]
Path: /System/Library/CoreServices/SpringBoard.app/SpringBoard
Identifier: com.apple.springboard
Version: 50 (1.0)
Code Type: ARM-64 (Native)
Role: Foreground
Parent Process: launchd [1]
Coalition: com.apple.springboard [71]
Date/Time: 2016-11-16 14:57:04.9159 +0400
Launch Time: 2016-11-16 14:49:20.9981 +0400
OS Version: iPhone OS 10.0 (14A5309d)
Report Version: 104
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Triggered by Thread: 13
Filtered syslog:
None found
Thread 0 name: Dispatch queue: …Run Code Online (Sandbox Code Playgroud) 但我有一些问题,起初我在应用程序包名称右侧有一个橙色检查图像

我在Application类中有这个错误
Caused by: io.fabric.sdk.android.services.concurrency.UnmetDependencyException: This app relies on Crashlytics. Please sign up for access at https://fabric.io/sign_up,
install an Android build tool and ask a team member to invite you to this app's organization.
at com.crashlytics.android.core.CrashlyticsCore.onPreExecute(CrashlyticsCore.java:233)
at com.crashlytics.android.core.CrashlyticsCore.onPreExecute(CrashlyticsCore.java:207)
at io.fabric.sdk.android.InitializationTask.onPreExecute(InitializationTask.java:44)
at io.fabric.sdk.android.services.concurrency.AsyncTask.executeOnExecutor(AsyncTask.java:611)
at io.fabric.sdk.android.services.concurrency.PriorityAsyncTask.executeOnExecutor(PriorityAsyncTask.java:43)
at io.fabric.sdk.android.Kit.initialize(Kit.java:69)
at io.fabric.sdk.android.Fabric.initializeKits(Fabric.java:440)
at io.fabric.sdk.android.Fabric.init(Fabric.java:384)
at io.fabric.sdk.android.Fabric.setFabric(Fabric.java:342)
at io.fabric.sdk.android.Fabric.with(Fabric.java:333)
at com.atyno.app.VolleyApplication.onCreate(VolleyApplication.java:78)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1036)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6317)
Run Code Online (Sandbox Code Playgroud)