top of page
  • Writer's pictureDon Peter

Finotes Flutter plugin is now public with Android and iOS support

Finotes Flutter plugin version 6.1.1 is now public and is available for integration. This version has support for both Android and iOS platforms with its features aimed at improving the performance and stability of your applications.

Finotes plugin is capable of detecting and reporting issues like crashes, memory leaks, abnormal memory usages, AppHangs, ANRs, frozen frames and HTTP(s) issues.

Reporting Crashes

Crash reporting is activated by default. With this feature, you will be able to receive detailed reports about any crashes that occur in your application, including the stack trace, activity trail and device information. This will help you quickly identify the root cause of the crash and fix it.


Reporting ZonedGuarded Errors

Along with crash reporting, a single-line reportError() API to report errors in Dart code is provided by the plugin. These errors if gone unreported can make the application unstable and create feature breaks.


    runZonedGuarded<Future<void>>(() async {
        ....
    }, (dynamic error, StackTrace stackTrace) {
        Fn.reportError(error, stackTrace); //Single line API to report caught errors. 
    });
        


Tracking Memory leaks in Dart and platform code

This version comes with the capability to detect and report memory leaks in dart code. To activate the memory leak detection, extend your State classes with FnState. FnState is a custom state class provided by the plugin. Once extended, if any of the states in the codebase has a leak it will be reported immediately to the dashboard. This feature works in development, testing and production environments.


Memory leaks can cause your application to slow down over time, and can also lead to crashes. With this feature, you will receive detailed reports about any memory leaks that are detected, allowing you to quickly resolve the issue.


class _MyAppState extends FnState<MyApp> { //Replace State class with FnState class.
    ....
}

Apart from this, basic integration of the plugin will activate memory leak detection in platform code (Java, Kotlin, Objective-c, Swift) as well.


Tracking App Hangs and ANRs

AppHangs occur in iOS and iPadOS devices when the app is unresponsive for more than 250 ms.


ANR stands for App Not Responding and this issue occurs when the application is unresponsive for 5000 ms or more.


Finotes plugin is capable of detecting and reporting these issues. It is imperative to identify and fix these issues as it can greatly impact the smooth usage of the application.


Tracking HTTP(s) call issues

Finotes plugin supports tracking HTTP(s) calls made using both http and http_interceptor plugins. Support for Dio based calls will be made publicly available in a future version. If you are using Dio now, reach out to us and we can enable the support for you.


To activate HTTP(s) call tracking, add the following line depending on the HTTP plugin that is used in the project. The plugin detects are reports issues like status code errors, delayed calls and duplicate calls.


    import 'package:finotescore/fn_client.dart';
    ....
    var client = http.Client(); //Regular http client to make calls.

    var client = FnClient(); //Replace your http client with finotescore client.




    import 'package:finotescore/fn_interceptor.dart';

    ....
    http.Client client = InterceptedClient.build(interceptors: [
      CustomInterceptor, FnInterceptor(), //Add finotescore interceptor to track api calls.
    ]);


Detailed documentation can be found in pub.dev. Link to Flutter documentation.

Overall, the Finotes Flutter plugin with its suite of features is a valuable addition for developers looking to improve the performance and stability of their applications. By detecting and reporting on a range of issues, this plugin will help you ensure that your applications run smoothly and provide a great user experience.

Finotes is available with the full set of features for Java and Kotlin in Android and for Objective-C and Swift in iOS, iPadOS and watchOS platforms. Detailed documentation is available at docs.finotes.com.


Happy bug fixing.

Blog for Mobile App Developers, Testers and App Owners

 

This blog is from Finotes Team. Finotes is a lightweight mobile APM and bug detection tool for iOS and Android apps.

In this blog we talk about iOS and Android app development technologies, languages and frameworks like Java, Kotlin, Swift, Objective-C, Dart and Flutter that are used to build mobile apps. Read articles from Finotes team about good programming and software engineering practices, testing and QA practices, performance issues and bugs, concepts and techniques. 

bottom of page