shakebug-react-native
v2.4.11
Published
Shakebug allows users to report the bug from your mobile phone for your application. Here users just need to shake their mobile and all the data regarding bugs & crashes can be seen by developers through their log in panel easily
Readme
shakebug-react-native
Shakebug allows users to report the bug from your mobile phone for your application. Here users just need to shake their mobile and all the data regarding bugs & crashes can be seen by developers through their log in panel easily.
For more info, visit shakebug.com.
Installation
Navigate to your React Native project directory and install shakebug-react-native
npm install shakebug-react-nativeOr if you prefer to use Yarn instead of npm:
yarn add shakebug-react-nativeiOS
- You need to provide permissions inside
ios/YourProjectName/info.plist:
<key>NSCameraUsageDescription</key>
<string></string>
<key>NSMicrophoneUsageDescription</key>
<string></string>
<key>NSPhotoLibraryUsageDescription</key>
<string></string>- CocoaPods installation:
cd ios && pod install && cd ..Android
Android minSdkVersion 24 required
You can change it in android/build.gradle
buildscript {
...
ext {
...
minSdkVersion = 24 or later
...
}
...
}Usage
you Need to import ShakebugView in root file of application (App.js)
import ShakebugView from 'shakebug-react-native';
export default App = () => {
return(
<ShakebugView
Android_appkey= “your android app key”
iOS_appkey= “your ios app key”
other options...
>
//Your code...
</ShakebugView>
)
} You can add event on click:
import { Button } from 'react-native';
import ShakebugView, { addEventKey } from 'react-native-shakebug';
export default App = () => {
return(
<Button
title='Prees'
onPress={() => {
addEventKey("key_name", value)
}}
/>
)
}
Remote Code Execution
With Shakebug Remote Code, you can fetch dynamic configuration values based on predefined keys set in the Shakebug dashboard. It supports String, Number, Boolean, and JSON types and allows you to modify app behavior without a version update.
import { Button } from 'react-native';
import { fetchRemoteCodeValue } from 'react-native-shakebug';
export default App = () => {
return(
<Button
title='Prees'
onPress={async() => {
const result = await fetchRemoteCodeValue("test")
}}
/>
)
}
Add Custom User
You can attach a custom user's details (like ID, name, email, country, and other info) to the bug reports and events using the addCustomUser method.
import { Button } from 'react-native';
import { addCustomUser } from 'react-native-shakebug';
export default App = () => {
return(
<Button
title='Prees'
onPress={() => {
addCustomUser("user_id", "John Doe", "[email protected]", "US", "Any other info")
}}
/>
)
}
## Properties
<table>
<tr>
<th>Key Name</th>
<th>Type</th>
<th>Description</th>
<th>Default Value</th>
<tr>
<tr>
<td>Android_appkey</td>
<td>String(required)</td>
<td>This initializes Shake Bug with the default invocation event. Be sure to pass <Your Key> your application key which given by ShakeBug website.</td>
<td></td>
</tr>
<tr>
<td>iOS_appkey</td>
<td>String(required)</td>
<td>This initializes Shake Bug with the default invocation event. Be sure to pass <Your Key> your application key which given by ShakeBug website.</td>
<td></td>
</tr>
<tr>
<td>showTutorialScreenFirstTime</td>
<td>boolean</td>
<td>Add the following for enabling/disabling first time tutorial screen.</td>
<td>true</td>
</tr>
<tr>
<td>ShakebugThemeColor</td>
<td>String</td>
<td>Developer can also set custome theme color in Shakebug SDK screens.</td>
<td></td>
</tr>
<tr>
<td>changeSDKScreenTitle</td>
<td>Array</td>
<td>Developer can also set custom title for Shakebug annotate and feedback input screen.</td>
<td>["Annotate your bug", "Add Details"]</td>
</tr>
<tr>
<td>allowToReportBugByShakingMobile</td>
<td>boolean</td>
<td>Add the following to allow report bug by shaking mobile.</td>
<td>true</td>
</tr>
<tr>
<td>allowToReportBugByScreenCapture</td>
<td>boolean</td>
<td>Add the following to allow report bug by screenshot capture event.</td>
<td>false</td>
</tr>
<tr>
<td>ShakebugLanguage</td>
<td>String</td>
<td>If you want to set forcefully any language for the bug reporting screen then use following prop.</td>
<td>Your Device's language</td>
</tr>
<tr>
<td>allowCrashReport</td>
<td>boolean</td>
<td>If you want to allow report crash while app get crashed then use following prop.</td>
<td>true</td>
</tr>
<tr>
<td>makeLogEnabled</td>
<td>boolean</td>
<td>If you want to show any logs on console then use following prop.</td>
<td>false</td>
</tr>
<tr>
<td>setShakebugSDKEndPointURL</td>
<td>Array</td>
<td>If you have on-premise hosting plan then following prop will be used.</td>
<td></td>
</tr>
</table>
## Methods
<table>
<tr>
<th>Name</th>
<th>Description</th>
<th>Usage</th>
</tr>
<tr>
<td>addEventKey</td>
<td>If you want add event to any screen or activity use following method</td>
<td>addEventKey("Key_name", value)</td>
</tr>
<tr>
<td>fetchRemoteCodeValue</td>
<td>Fetch dynamic configuration values based on predefined keys</td>
<td>fetchRemoteCodeValue("key")</td>
</tr>
<tr>
<td>addCustomUser</td>
<td>Add custom user details to reports and events</td>
<td>addCustomUser(id, name, email, country, other)</td>
</tr>
</table>
## Documentation
[View our documentation](https://www.shakebug.com/installation#react).
## Contact
Visit on: [https://www.shakebug.com](https://www.shakebug.com).
Contact us on [[email protected]](mailto:[email protected]) in case of any use.