Git Product home page Git Product logo

appcrashtracker's Introduction

AppCrashTracker

Its a kind of toolkit to track the exception arising in the application and it will generate a json and can upload in your server using your own post url.

No need to worry and think to add more line of code. Simple is better. So a single invoke is enough to make better app.

Offline tracker coming soon!!

API Android Arsenal

#Input

ACT.init(this,MainActivity.class);

#Output

{

"Package_Name" : com.example.act_sample,

"VM_Max_Heap_Size" : 9.3 MB,

"VM_free_Heap_Size" : 64 MB,

"VM_Heap_Size" : 9.8 MB,

"Internal_Memory_Size" : 503.4 MB,

"Internal_Free_Space" : 100.3 MB,

"Device_Orientation" : Portrait,

"Screen_Layout" : Normal Screen,

"SDCard_Status" : Mounted,

"External_Free_Space" : 1.8 GB,

"Battery_Percentage" : 100,

"Device_IsRooted" : false,

"Network_Mode" : Wifi,

"Battery_Charging_Via" : USB,

"Native_Allocated_Size" : 2 MB,

"External_Memory_Size" : 7.4 GB,

"Allocated_VM_Size" : 482.1 kB,

"Brand" : Google Nexus,

"Model" : Nexus 5,

"Product" : Nexus 5,

"Device" : 5x,

"Message" : Unable to start activity ComponentInfo{com.example.act_sample\/com.example.act_sample.MainActivity}: java.lang.NumberFormatException: Invalid int: \"asdf\",

"Incremental" : eng.terry.1365412624,

"Height" : 854,

"SDK" : 16,

"Release" : 4.1.1,

"Localized_Message" : Unable to start activity ComponentInfo{com.example.act_sample\/com.example.act_sample.MainActivity}: java.lang.NumberFormatException: Invalid int: \"asdf\",

"Tablet" : false,

"Class" : MainActivity,

"App_Version" : 1.0,

"Width" : 480,

"Stack_Trace" : java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.act_sample\/com.example.act_sample.MainActivity}: 
java.lang.NumberFormatException: Invalid int: \"asdf\"
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2184)
android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2211)
android.app.ActivityThread.access$600(ActivityThread.java:149)
android.app.ActivityThread$H.handleMessage(ActivityThread.java:1300)
android.os.Handler.dispatchMessage(Handler.java:99)
android.os.Looper.loop(Looper.java:153)
android.app.ActivityThread.main(ActivityThread.java:5086)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:511)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:821)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NumberFormatException: Invalid int: \"asdf\"
java.lang.Integer.invalidInt(Integer.java:138)
java.lang.Integer.parse(Integer.java:375)
java.lang.Integer.parseInt(Integer.java:366)
java.lang.Integer.parseInt(Integer.java:332)
com.example.act_sample.MainActivity.onCreate(MainActivity.java:17)
android.app.Activity.performCreate(Activity.java:5020)
android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2148)
... 11 more,

"Cause" : java.lang.NumberFormatException: Invalid int: \"asdf\"

"Country" : India
}

#Requirements

  • Init from onCreate Method with context and default class
  • Add Interent Permission
  • Add Access Network State Permission
  • Add Configuration in String.xml . Please refer Configuration link

#Configuration Its nothing but, you can customize the data come out from the result. For example, if you want to see the sdk version of the device means, you just add a bool in to string.xml to true. Enough! The bool must the same name. Those are following

   <string name="url">post_url</string>
   <bool name="class_name">ture</bool>
   <bool name="message">true</bool>
   <bool name="localized_message">true</bool>
   <bool name="causes">true</bool>
   <bool name="stack_trace">true</bool>
   <bool name="brand_name">false</bool>
   <bool name="device_name">false</bool>
   <bool name="model_number">false</bool>
   <bool name="product_name">false</bool>
   <bool name="sdk_version">false</bool>
   <bool name="release">false</bool>
   <bool name="incremental">false</bool>
   <bool name="height">false</bool>
   <bool name="width">false</bool>
   <bool name="app_version">false</bool>
   <bool name="tablet">false</bool>
   <bool name="package_name">false</bool>
   <bool name="device_orientation">false</bool>
	<bool name="screen_layout">false</bool>
	<bool name="vm_heap_size">false</bool>
	<bool name="allocated_vm_size">false</bool>
	<bool name="vm_max_heap_size">false</bool>
	<bool name="vm_free_heap_size">false</bool>
	<bool name="native_allocated_size">false</bool>
	<bool name="battery_percentage">false</bool>
	<bool name="battery_charging">false</bool>
	<bool name="battery_charging_via">false</bool>
	<bool name="sd_card_status">false</bool>
	<bool name="internal_memory_size">false</bool>
	<bool name="external_memory_size">false</bool>
	<bool name="internal_free_space">false</bool>
	<bool name="external_free_space">false</bool>
	<bool name="device_rooted">false</bool>
	<bool name="network_mode">false</bool>
	<bool name="country">false</bool>

#API Level 2.2 to Latest

#License

Copyright 2015-2016 Ganesh Krishnamoorthy

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Please give me feedback! Thanks!!

Bitdeli Badge

appcrashtracker's People

Contributors

bitdeli-chef avatar macroday avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

appcrashtracker's Issues

Crash in Keep Notes

Issue explanation (write below this line)

Exception

  • User Action: UI Error
  • Request: Application crash
  • Version: 3.5.95
  • OS: Linux Android 11 - 30
  • Device: OnePlus8TTMO
  • Model: KB2007
  • Product: OnePlus8TTMO
Crash log

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.filemanager.lnapp/com.amaze.filemanager.Eapp}: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.os.Bundle.getString(java.lang.String)' on a null object reference
	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3611)
	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3775)
	at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
	at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2246)
	at android.os.Handler.dispatchMessage(Handler.java:106)
	at android.os.Looper.loop(Looper.java:233)
	at android.app.ActivityThread.main(ActivityThread.java:8010)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:631)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:978)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.os.Bundle.getString(java.lang.String)' on a null object reference
	at com.amaze.filemanager.Eapp.onCreate(Eapp.java:136)
	at android.app.Activity.performCreate(Activity.java:8006)
	at android.app.Activity.performCreate(Activity.java:7990)
	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1329)
	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3584)
	... 11 more


Custom Report

Is there anyway to send a custom data? for example a user Id.

More useful Informations

Hi,
the project looks promising! I wonder if you want add some more useful information?

  • orientation the device being hold
  • ui orientation (not necessary the same as device orientation!)
  • battery state in percent
  • ram usage of this app
  • free ram left
  • diskspace (i know, its not easy because of multiple cards etc)
  • rooted (yes/no)
  • network state

Networkstate would be a nice feature cause there is sometimes no internet or a user is running my app in plane-mode and it crashes. The crash would be logged/queued on the device and sent when the app launches the next time with internetconnection. In this case its a good information whether there was a networkconnection during the crash or not.

What do you think?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.