Contents
Crashlytics: Efficient Tools For Crash Reporting
Pham Van Hoang, hoangk55cd@gmail.com, is the author of this article and he contributes to RobustTechHouse Blog
What is Crashlytics?
Crashlytics is a free tool for crash reporting for mobile apps offered by Twitter that capture crashes and various other information.
- It is the best option for all your beta testing and crash reporting needs.
- It covers crash reports, delivery, feedback, emails notification and much more.
- It’s very easy to setup and install. Once installed, it instantly starts logging data (note that ‘Testflight’ needs a review period for beta builds – sometimes it could take a day for beta reviewing).
- It’s completely free and can be used on an unlimited number of apps with unlimited users examining unlimited crashes etc.
- It presents all data with amazing visuals, making it very easy to interpret and debug accordingly.
- It supports both Android and iOS.
Integrating Crashlytics
Step 1: Register Fabric accounts, Fabric includes Crashlytics and several other tools such as Answer, Digits, MoPub (some other useful tools). You may want to check out our last article about Digits – Free Login And Authentication For IOS Apps Using Phone Number.
Step 2: Download and install Fabric for Xcode
Step 3: Select the project that you want to integrate Crashlytics and install Crashlytics to the relevant project
The steps to install are pretty easy. Follow each step in the instructions until you get to this screen:
Once you’re done, you can archive your project and distribute to your testers
Check your email box, you will see the email from Crashlytics.
When you click view details, it will show the crash report screen of the project:
Let’s See How Crashlytics Works
Now, we just need to add some codes to force our app to crash to check out the report. Go to ViewController.m class and add the codes below.
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. UIButton* button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; button.frame = CGRectMake(20, 50, 100, 30); [button setTitle:@"Check crash" forState:UIControlStateNormal]; [button addTarget:self action:@selector(crashButtonTapped:) forControlEvents:UIControlEventTouchUpInside]; [self.view addSubview:button]; } - (IBAction)crashButtonTapped:(id)sender { NSArray *array = @[@"check"]; id accessOutOfArrayBounds= [array objectAtIndex:3]; }
You can see when we tap button “Check crash”, the function access the object at index 3, which is out of the array bounds. So it will cause our app to crash, run the app and click the “Check crash” button few times and refresh the report page.
Note: if you got the message “1 unsymbolicated crash from missing dSYMs in 1 version in the last 24 hours ” like above. You may need to check: how to upload missing dSYMs here?.
We just got the reports send from users telling about the crash occurs from line 31 , which is the exact function that we deliberately forced our app to crash. Note that it occurred 3 times and affected 1 user.
One of the great things about Crashlytics is the level of detail you’re given when a crash occurs. As a product owner, product manager, developer, you are able to quickly assess the risk the crash poses to your overall install base. You can see the issues and the number of crashes in each issue to determine which one need to be fix first. Also with the device and operation breakdown shown in the dashboard, you can determine if a particular crash is only occurring on iOS8 (or another version) or on a particular device. This is in my opinion is an enormous help to developers.
In our case, the problem is about accessing data out of array bounds, so you just need to check the index of object and fix it.
Pretty awesome huh! You can learn more about here Crashlytics for iOS.
Thank you for reading, if you have any questions, please leaves the comments below.
Brought to you by the RobustTechHouse team (A top app development company in Singapore). If you like our articles, please also check out our Facebook page.
Je ne suis pas vraiment un lecteur Internet pour être honnête mais vos blogs vraiment sympa, continue comme ça ! 에볼루션카지노 Je vais aller de l’avant et ajouter votre site à vos favoris pour revenir à l’avenir. advgamble.com
I came to this site with the introduction of a friend around me and I was very impressed when I found your writing. I’ll come back often after bookmarking! baccarat online
Crashlytics monitors your app in real-time and captures data about crashes, errors, and exceptions that occur on users’ devices. This fnf online data is collected and presented in a dashboard for analysis.
Awesome and interesting article. Great things you’ve always shared with us. Thanks. Just continue composing this kind of post cookie clicker
I arrived at this website accompanied by a friend, and I was much impressed upon discovering your written work. I intend to frequently revisit this webpage by bookmarking it.
Sentry is a popular open-source error tracking platform that provides real-time crash reporting. It supports various programming languages and platforms Uno game and offers features like error aggregation, alerting, and detailed crash reports.
I arrived at this website accompanied by a friend, and I was much impressed upon discovering your written work. I intend to frequently revisit this webpage by bookmarking it.
doodle jump
I want to share your weblink with all my platforms because I want people to follow your page. Christmas Outfits