-
- All Implemented Interfaces:
-
backtraceio.library.interfaces.Client
public class BacktraceBase implements Client
Base Backtrace Android client
-
-
Constructor Summary
Constructors Constructor Description BacktraceBase(Context context, BacktraceCredentials credentials)
Initialize new client instance with BacktraceCredentials BacktraceBase(Context context, BacktraceCredentials credentials, List<String> attachments)
Initialize new client instance with BacktraceCredentials BacktraceBase(Context context, BacktraceCredentials credentials, Map<String, Object> attributes)
Initialize new client instance with BacktraceCredentials BacktraceBase(Context context, BacktraceCredentials credentials, Map<String, Object> attributes, List<String> attachments)
Initialize new client instance with BacktraceCredentials BacktraceBase(Context context, BacktraceCredentials credentials, BacktraceDatabaseSettings databaseSettings)
Initialize new client instance with BacktraceCredentials BacktraceBase(Context context, BacktraceCredentials credentials, BacktraceDatabaseSettings databaseSettings, List<String> attachments)
Initialize new client instance with BacktraceCredentials BacktraceBase(Context context, BacktraceCredentials credentials, BacktraceDatabaseSettings databaseSettings, Map<String, Object> attributes)
Initialize new client instance with BacktraceCredentials BacktraceBase(Context context, BacktraceCredentials credentials, BacktraceDatabaseSettings databaseSettings, Map<String, Object> attributes, List<String> attachments)
Initialize new client instance with BacktraceCredentials BacktraceBase(Context context, BacktraceCredentials credentials, Database database)
Initialize new client instance with BacktraceCredentials BacktraceBase(Context context, BacktraceCredentials credentials, Database database, List<String> attachments)
Initialize new client instance with BacktraceCredentials BacktraceBase(Context context, BacktraceCredentials credentials, Database database, Map<String, Object> attributes)
Initialize new client instance with BacktraceCredentials BacktraceBase(Context context, BacktraceCredentials credentials, Database database, Map<String, Object> attributes, List<String> attachments)
Initialize new client instance with BacktraceCredentials
-
Method Summary
Modifier and Type Method Description Map<String, Object>
getAttributes()
Get custom attributes native void
crash()
void
enableNativeIntegration()
Capture unhandled native exceptions (Backtrace database integration is required to enable this feature). void
enableNativeIntegration(boolean enableClientSideUnwinding)
Capture unhandled native exceptions (Backtrace database integration is required to enable this feature). void
enableNativeIntegration(boolean enableClientSideUnwinding, UnwindingMode unwindingMode)
Capture unhandled native exceptions (Backtrace database integration is required to enable this feature). void
disableNativeIntegration()
void
enableProguard()
Inform Backtrace API that we are using Proguard symbolication void
addAttribute(String key, Object value)
Adds a new attribute to Backtrace Client. void
addAttribute(Map<String, Object> attributes)
Adds new attributes to Backtrace Client. void
setOnBeforeSendEventListener(OnBeforeSendEventListener eventListener)
Set event executed before sending data to Backtrace API void
setOnServerErrorEventListener(OnServerErrorEventListener eventListener)
Set an event executed when received bad request, unauthorize request or other information from server void
setOnRequestHandler(RequestHandler requestHandler)
Custom request handler for sending Backtrace reports to server boolean
enableBreadcrumbs(Context context)
Enable logging of breadcrumbs and submission with crash reports boolean
enableBreadcrumbs(Context context, int maxBreadcrumbLogSizeBytes)
Enable logging of breadcrumbs and submission with crash reports boolean
enableBreadcrumbs(Context context, EnumSet<BacktraceBreadcrumbType> breadcrumbTypesToEnable)
Enable logging of breadcrumbs and submission with crash reports boolean
enableBreadcrumbs(Context context, EnumSet<BacktraceBreadcrumbType> breadcrumbTypesToEnable, int maxBreadcrumbLogSizeBytes)
Enable logging of breadcrumbs and submission with crash reports boolean
clearBreadcrumbs()
Clear breadcrumb logs boolean
addBreadcrumb(String message)
Add a breadcrumb of type "Manual" and level "Info" with the provided message string boolean
addBreadcrumb(String message, BacktraceBreadcrumbLevel level)
Add a breadcrumb of type "Manual" and the desired level with the provided message string boolean
addBreadcrumb(String message, Map<String, Object> attributes)
Add a breadcrumb of type "Manual" and level "Info" with the provided message string and attributes boolean
addBreadcrumb(String message, Map<String, Object> attributes, BacktraceBreadcrumbLevel level)
Add a breadcrumb of type "Manual" and the desired level with the provided message string and attributes boolean
addBreadcrumb(String message, BacktraceBreadcrumbType type)
Add a breadcrumb of the desired type and level "Info" with the provided message string boolean
addBreadcrumb(String message, BacktraceBreadcrumbType type, BacktraceBreadcrumbLevel level)
Add a breadcrumb of the desired level and type with the provided message string boolean
addBreadcrumb(String message, Map<String, Object> attributes, BacktraceBreadcrumbType type)
Add a breadcrumb of the desired type and level "Info" with the provided message string and attributes boolean
addBreadcrumb(String message, Map<String, Object> attributes, BacktraceBreadcrumbType type, BacktraceBreadcrumbLevel level)
Add a breadcrumb of the desired level and type with the provided message string and attributes void
nativeCrash()
native void
dumpWithoutCrash(String message)
Force a native crash report and minidump submission native void
dumpWithoutCrash(String message, boolean setMainThreadAsFaultingThread)
void
send(BacktraceReport report)
Sending an exception to Backtrace API void
send(BacktraceReport sourceReport, OnServerResponseEventListener callback)
Sending an exception to Backtrace API void
sendInnerExceptions(boolean sendInnerExceptions)
Determine if Reports should be generated for inner exceptions. void
sendSuppressedExceptions(boolean sendSuppressedExceptions)
Determine if Reports should be generated for suppressed exceptions. -
-
Constructor Detail
-
BacktraceBase
BacktraceBase(Context context, BacktraceCredentials credentials)
Initialize new client instance with BacktraceCredentials- Parameters:
context
- context of current state of the applicationcredentials
- Backtrace credentials to access Backtrace API
-
BacktraceBase
BacktraceBase(Context context, BacktraceCredentials credentials, List<String> attachments)
Initialize new client instance with BacktraceCredentials- Parameters:
context
- context of current state of the applicationcredentials
- Backtrace credentials to access Backtrace APIattachments
- File attachment paths to consider for reports
-
BacktraceBase
BacktraceBase(Context context, BacktraceCredentials credentials, Map<String, Object> attributes)
Initialize new client instance with BacktraceCredentials- Parameters:
context
- context of current state of the applicationcredentials
- Backtrace credentials to access Backtrace APIattributes
- additional information about current application
-
BacktraceBase
BacktraceBase(Context context, BacktraceCredentials credentials, Map<String, Object> attributes, List<String> attachments)
Initialize new client instance with BacktraceCredentials- Parameters:
context
- context of current state of the applicationcredentials
- Backtrace credentials to access Backtrace APIattributes
- additional information about current applicationattachments
- File attachment paths to consider for reports
-
BacktraceBase
BacktraceBase(Context context, BacktraceCredentials credentials, BacktraceDatabaseSettings databaseSettings)
Initialize new client instance with BacktraceCredentials- Parameters:
context
- context of current state of the applicationcredentials
- Backtrace credentials to access Backtrace APIdatabaseSettings
- Backtrace database settings
-
BacktraceBase
BacktraceBase(Context context, BacktraceCredentials credentials, BacktraceDatabaseSettings databaseSettings, List<String> attachments)
Initialize new client instance with BacktraceCredentials- Parameters:
context
- context of current state of the applicationcredentials
- Backtrace credentials to access Backtrace APIdatabaseSettings
- Backtrace database settingsattachments
- File attachment paths to consider for reports
-
BacktraceBase
BacktraceBase(Context context, BacktraceCredentials credentials, BacktraceDatabaseSettings databaseSettings, Map<String, Object> attributes)
Initialize new client instance with BacktraceCredentials- Parameters:
context
- context of current state of the applicationcredentials
- Backtrace credentials to access Backtrace APIdatabaseSettings
- Backtrace database settingsattributes
- additional information about current application
-
BacktraceBase
BacktraceBase(Context context, BacktraceCredentials credentials, BacktraceDatabaseSettings databaseSettings, Map<String, Object> attributes, List<String> attachments)
Initialize new client instance with BacktraceCredentials- Parameters:
context
- context of current state of the applicationcredentials
- Backtrace credentials to access Backtrace APIdatabaseSettings
- Backtrace database settingsattributes
- additional information about current applicationattachments
- File attachment paths to consider for reports
-
BacktraceBase
BacktraceBase(Context context, BacktraceCredentials credentials, Database database)
Initialize new client instance with BacktraceCredentials- Parameters:
context
- context of current state of the applicationcredentials
- Backtrace credentials to access Backtrace APIdatabase
- Backtrace database
-
BacktraceBase
BacktraceBase(Context context, BacktraceCredentials credentials, Database database, List<String> attachments)
Initialize new client instance with BacktraceCredentials- Parameters:
context
- context of current state of the applicationcredentials
- Backtrace credentials to access Backtrace APIdatabase
- Backtrace databaseattachments
- File attachment paths to consider for reports
-
BacktraceBase
BacktraceBase(Context context, BacktraceCredentials credentials, Database database, Map<String, Object> attributes)
Initialize new client instance with BacktraceCredentials- Parameters:
context
- context of current state of the applicationcredentials
- Backtrace credentials to access Backtrace APIdatabase
- Backtrace databaseattributes
- additional information about current application
-
BacktraceBase
BacktraceBase(Context context, BacktraceCredentials credentials, Database database, Map<String, Object> attributes, List<String> attachments)
Initialize new client instance with BacktraceCredentials- Parameters:
context
- context of current state of the applicationcredentials
- Backtrace credentials to access Backtrace APIdatabase
- Backtrace databaseattributes
- additional information about current applicationattachments
- File attachment paths to consider for reports
-
-
Method Detail
-
getAttributes
Map<String, Object> getAttributes()
Get custom attributes
-
crash
native void crash()
-
enableNativeIntegration
void enableNativeIntegration()
Capture unhandled native exceptions (Backtrace database integration is required to enable this feature).
-
enableNativeIntegration
void enableNativeIntegration(boolean enableClientSideUnwinding)
Capture unhandled native exceptions (Backtrace database integration is required to enable this feature).
- Parameters:
enableClientSideUnwinding
- Enable client side unwinding
-
enableNativeIntegration
void enableNativeIntegration(boolean enableClientSideUnwinding, UnwindingMode unwindingMode)
Capture unhandled native exceptions (Backtrace database integration is required to enable this feature).
- Parameters:
enableClientSideUnwinding
- Enable client side unwindingunwindingMode
- Unwinding mode to use for client side unwinding
-
disableNativeIntegration
void disableNativeIntegration()
-
enableProguard
void enableProguard()
Inform Backtrace API that we are using Proguard symbolication
-
addAttribute
void addAttribute(String key, Object value)
Adds a new attribute to Backtrace Client. If the native integration is enabled, adds the attributeto the native report attributes if:- the value exists (is not a null)- is not an object (the attribute value is primitive type like String, or Int)
- Parameters:
key
- attribute namevalue
- attribute value.
-
addAttribute
void addAttribute(Map<String, Object> attributes)
Adds new attributes to Backtrace Client. If the native integration is enabled, adds attributesto the native report attributes if:- the value exists (is not a null)- is not an object (the attribute value is primitive type like String, or Int)
- Parameters:
attributes
- Map of attributes
-
setOnBeforeSendEventListener
void setOnBeforeSendEventListener(OnBeforeSendEventListener eventListener)
Set event executed before sending data to Backtrace API
- Parameters:
eventListener
- object with method which will be executed
-
setOnServerErrorEventListener
void setOnServerErrorEventListener(OnServerErrorEventListener eventListener)
Set an event executed when received bad request, unauthorize request or other information from server
- Parameters:
eventListener
- object with method which will be executed
-
setOnRequestHandler
void setOnRequestHandler(RequestHandler requestHandler)
Custom request handler for sending Backtrace reports to server
- Parameters:
requestHandler
- object with method which will be executed
-
enableBreadcrumbs
boolean enableBreadcrumbs(Context context)
Enable logging of breadcrumbs and submission with crash reports
- Parameters:
context
- context of current state of the application
-
enableBreadcrumbs
boolean enableBreadcrumbs(Context context, int maxBreadcrumbLogSizeBytes)
Enable logging of breadcrumbs and submission with crash reports
- Parameters:
context
- context of current state of the applicationmaxBreadcrumbLogSizeBytes
- breadcrumb log size limit in bytes, should be a power of 2
-
enableBreadcrumbs
boolean enableBreadcrumbs(Context context, EnumSet<BacktraceBreadcrumbType> breadcrumbTypesToEnable)
Enable logging of breadcrumbs and submission with crash reports
- Parameters:
context
- context of current state of the applicationbreadcrumbTypesToEnable
- a set containing which breadcrumb types to enable
-
enableBreadcrumbs
boolean enableBreadcrumbs(Context context, EnumSet<BacktraceBreadcrumbType> breadcrumbTypesToEnable, int maxBreadcrumbLogSizeBytes)
Enable logging of breadcrumbs and submission with crash reports
- Parameters:
context
- context of current state of the applicationbreadcrumbTypesToEnable
- a set containing which breadcrumb types to enablemaxBreadcrumbLogSizeBytes
- breadcrumb log size limit in bytes, should be a power of 2
-
clearBreadcrumbs
boolean clearBreadcrumbs()
Clear breadcrumb logs
-
addBreadcrumb
boolean addBreadcrumb(String message)
Add a breadcrumb of type "Manual" and level "Info" with the provided message string
- Parameters:
message
- a message which describes this breadcrumb (1KB max)
-
addBreadcrumb
boolean addBreadcrumb(String message, BacktraceBreadcrumbLevel level)
Add a breadcrumb of type "Manual" and the desired level with the provided message string
- Parameters:
message
- a message which describes this breadcrumb (1KB max)level
- the severity level of this breadcrumb
-
addBreadcrumb
boolean addBreadcrumb(String message, Map<String, Object> attributes)
Add a breadcrumb of type "Manual" and level "Info" with the provided message string and attributes
- Parameters:
message
- a message which describes this breadcrumb (1KB max)attributes
- key-value pairs to provide additional information about this breadcrumb (1KB max, including some overhead per key-value pair)
-
addBreadcrumb
boolean addBreadcrumb(String message, Map<String, Object> attributes, BacktraceBreadcrumbLevel level)
Add a breadcrumb of type "Manual" and the desired level with the provided message string and attributes
- Parameters:
message
- a message which describes this breadcrumb (1KB max)attributes
- key-value pairs to provide additional information about this breadcrumb (1KB max, including some overhead per key-value pair)level
- the severity level of this breadcrumb
-
addBreadcrumb
boolean addBreadcrumb(String message, BacktraceBreadcrumbType type)
Add a breadcrumb of the desired type and level "Info" with the provided message string
- Parameters:
message
- a message which describes this breadcrumb (1KB max)type
- broadly describes the category of this breadcrumb
-
addBreadcrumb
boolean addBreadcrumb(String message, BacktraceBreadcrumbType type, BacktraceBreadcrumbLevel level)
Add a breadcrumb of the desired level and type with the provided message string
- Parameters:
message
- a message which describes this breadcrumb (1KB max)type
- broadly describes the category of this breadcrumblevel
- the severity level of this breadcrumb
-
addBreadcrumb
boolean addBreadcrumb(String message, Map<String, Object> attributes, BacktraceBreadcrumbType type)
Add a breadcrumb of the desired type and level "Info" with the provided message string and attributes
- Parameters:
message
- a message which describes this breadcrumb (1KB max)attributes
- key-value pairs to provide additional information about this breadcrumb (1KB max, including some overhead per key-value pair)type
- broadly describes the category of this breadcrumb
-
addBreadcrumb
boolean addBreadcrumb(String message, Map<String, Object> attributes, BacktraceBreadcrumbType type, BacktraceBreadcrumbLevel level)
Add a breadcrumb of the desired level and type with the provided message string and attributes
- Parameters:
message
- a message which describes this breadcrumb (1KB max)attributes
- key-value pairs to provide additional information about this breadcrumb (1KB max, including some overhead per key-value pair)type
- broadly describes the category of this breadcrumblevel
- the severity level of this breadcrumb
-
nativeCrash
void nativeCrash()
-
dumpWithoutCrash
native void dumpWithoutCrash(String message)
Force a native crash report and minidump submission
-
dumpWithoutCrash
native void dumpWithoutCrash(String message, boolean setMainThreadAsFaultingThread)
-
send
void send(BacktraceReport report)
Sending an exception to Backtrace API
- Parameters:
report
- current BacktraceReport
-
send
void send(BacktraceReport sourceReport, OnServerResponseEventListener callback)
Sending an exception to Backtrace API
- Parameters:
sourceReport
- current BacktraceReport
-
sendInnerExceptions
void sendInnerExceptions(boolean sendInnerExceptions)
Determine if Reports should be generated for inner exceptions. By default the value is set to false.
- Parameters:
sendInnerExceptions
- boolean flag that enabled/disable sending inner exceptions
-
sendSuppressedExceptions
void sendSuppressedExceptions(boolean sendSuppressedExceptions)
Determine if Reports should be generated for suppressed exceptions. By default the value is set to false.
- Parameters:
sendSuppressedExceptions
- boolean flag that enabled/disable sending suppressed exceptions
-
-
-
-