Bureau Device Intelligence React Native SDK
npm install bureau-device-intelligenceReact Native SDK for Bureau Device Intelligence with sophisticated native module integration.
``bash`
yarn add @bureau/device-intelligence
`bash`
cd ios && pod install
No additional setup required for Android.
`typescript
import {
initDeviceIntelligence,
submitDeviceIntelligence,
enableRiskMonitoring,
disableMonitoring,
setUserId,
setMetaInfo,
setFlow,
isInitialized,
getUserId,
Environment,
RiskMonitoringMode,
} from '@bureau/device-intelligence';
// Initialize the SDK
initDeviceIntelligence({
credentialId: 'your-credential-id',
env: Environment.SANDBOX,
});
// Set user information
setUserId('user-123');
setMetaInfo({
sessionId: 'session-456',
flow: 'onboarding',
});
// Submit device intelligence data
const result = await submitDeviceIntelligence();
console.log('Device insights:', result.insights);
// Enable risk monitoring
await enableRiskMonitoring({
mode: RiskMonitoringMode.CONTINUOUS,
frequency: 5000,
suspiciousSignalCallback: {
onDeviceRooted: (isRooted) => {
console.log('Device rooted:', isRooted);
},
onDeveloperModeStatusChanged: (isEnabled) => {
console.log('Developer mode:', isEnabled);
},
},
});
// Disable monitoring when done
await disableMonitoring();
`
- initDeviceIntelligence(config: BureauConfig): void - Initialize the SDKsubmitDeviceIntelligence(): Promise
- - Submit device dataisInitialized(): Promise
- - Check if SDK is initializedgetUserId(): Promise
- - Get current user ID
- setUserId(userId: string): void - Set user IDsetMetaInfo(metaInfo: MetaInfo): void
- - Set metadatasetFlow(flow: string): void
- - Set flow identifier
- enableRiskMonitoring(options: RiskMonitoringOptions): Promise - Enable monitoringdisableMonitoring(): Promise
- - Disable monitoring
- BureauConfig - SDK configurationMetaInfo
- - Metadata informationSubmitResponse
- - Response from device intelligence submissionRiskMonitoringOptions
- - Risk monitoring configurationSuspiciousSignalCallback
- - Callback functions for suspicious signalsEnvironment
- - SDK environment (PRODUCTION, SANDBOX)RiskMonitoringMode
- - Monitoring mode (CONTINUOUS, INSTANT)
The iOS native module provides:
- Device fingerprinting
- Jailbreak detection
- App store validation
- Frida detection
- Risk assessment
The Android native module provides:
- Device fingerprinting
- Root detection
- ADB status monitoring
- App cloning detection
- Debugging detection
- Risk assessment
The SDK requires the following permissions:
`xml``
No additional permissions required.
MIT