why use Mr.Analytics?

Fast and lightweight

Handle every exception without missing any one of them.

Multiple DashBoard

Get a dashboard on Android based application and soon web based application will be released.

Built-in mobile to cloud sync

Get updates of each and every exception in less than a sec in the dashboard.

~ Documentation ~

Add below code in project level build.gradle

allprojects {
 repositories {
   google()
   mavenCentral()
   maven { url 'https://jitpack.io' }
  }
}

Initialization of Library in build.gradle

implementation 'com.github.krish11022002:Mr.Analytics:V3.0.0'

Initialization of Library using AAR file

Copy and Past MrAnalytics.aar into Libs folder in Project level
dependencies {
  implementation files('libs/MrAnalytics.aar');
}
Sync the Project

Initialization of the MrAnalytics class with email and key from dashboard. (in MainApplication)

class MainApplication : Application() {
 override fun onCreate() {
   super.onCreate()
    MrAnalytics.init(applicationContext, "testmail@gmail.com", "202212215");
   }
}

Use the InBuild function to Handle overall application exception. (in MainApplication)

class MainApplication : Application() {
 override fun onCreate() {
   super.onCreate()
    MrAnalytics.init(applicationContext, "testmail@gmail.com", "202212215");
    MrAnalytics.RunExceptionHandler();
   }
}

Use the InBuild function to Handle try catch exception. (in each file) 🤩

catch (e: Exception) {
 MrAnalytics.ReturnCatchError(e,this);
}

Use the InBuild Handler to get the Result. (in each file)

class MainActivity : AppCompatActivity(),MrAnalytics.Handler{
  override fun onSuccess(Message: String?) {
      TODO("Your Code here")
   }
  override fun onFailure(e: String?) {
      TODO("Not yet implemented ")
   }
}

Festival doodles for your Application 🤩

MrAnalytics.getFestival(new MrAnalytics.festivalHandler() {
 override public void onSuccess(Response response){
      TODO(" Your Code here")
   }
 override public void onFestivalDateOver(String s, int ResultCode) {
      TODO("Not yet implemented ")
   }
 override public void onFailure(String s, int ResultCode) {
      TODO("Not yet implemented ")
   }
}

Notification for your Application 🤩

MrAnalytics.showNotification(R.drawable.ic_launcher_background,new MrAnalytics.Handler() {
 override public void onSuccess(String Message){
      TODO("Your Code here")
   }
 override public void onFailure(String e) {
      TODO("Not yet implemented ")
   }
}
Pass the notification icon as first parameter-argument

Banner for your Application 🤩

MrAnalytics.getBannerData(new MrAnalytics.bannerHandler() {
 override public void onSuccess(Response response){
      TODO(" Your Code here")
   }
 override public void onDataNotFound(String s) {
      TODO("Not yet implemented ")
   }
 override public void onFailure(String s) {
      TODO("Not yet implemented ")
   }
}

Check Update for your Application 🤩

MrAnalytics.isUpdateAvailable(new MrAnalytics.updateHandler()
 override public void onSuccess(String version,boolean isUpdate){
      TODO("Your Code here")
   }
 override public void onFailure(String s) {
      TODO("Not yet implemented ")
   }
}

Respone Code's

ResultCode : 0 > Failure.
ResultCode : 1 > Succesfully.
ResultCode : 2 > Invalid credentials.
ResultCode : 3 > API limit over.