UNPKG

airbridge-react-native-sdk

Version:

Airbridge SDK for React Native

127 lines (109 loc) 3.78 kB
import React, { Component } from 'react' import { View, Platform, NativeModules, } from 'react-native' import { Styles } from '../common/Styles' import { storage } from '../common/Storage' import { fcmService } from '../common/FCMService' import VerticalPreference from '../component/VerticalPreference'; import ConfirmDialog from '../component/ConfirmDialog' export default class IdentifiersPage extends Component { constructor(props) { super(props); this.state = { deviceUUID: storage.get('deviceUUID') ?? 'N/A', appSetID: 'N/A', airbridgeGeneratedDeviceUUID: storage.get('airbridgeGeneratedDeviceUUID') ?? 'N/A', idfa: 'N/A', idfv: 'N/A', gaid: 'N/A', fcmToken: storage.get('fcmToken') ?? 'N/A', apnsToken: storage.get('apnsToken') ?? 'N/A', airbridgeJSON: '-' }; this.confirmRef = React.createRef() this.fetchIdentifiers() this.fetchAirbridgeJSON() if (Platform.OS === 'ios') { fcmService.requestPermission() } } fetchIdentifiers = async () => { const response = await NativeModules.IdentifiersInteractor.identifiers() console.log('fetchIdentifiers response : ' + response) const jsonData = JSON.parse(response) const data = jsonData['data'] this.setState({ appSetID: data['appSetID'] ?? 'N/A', gaid: data['gaid'] ?? 'N/A', idfa: data['idfa'] ?? 'N/A', idfv: data['idfv'] ?? 'N/A', }) } fetchAirbridgeJSON = async () => { const response = await NativeModules.IdentifiersInteractor.airbridgeJSON() console.log('fetchAirbridgeJSON response : ' + response) this.setState({ airbridgeJSON: response }) } reloadToken = async () => { this.setState({ fcmToken: 'Reloading..', }) await fcmService.deleteToken() await fcmService.updateToken() this.setState({ fcmToken: storage.get('fcmToken') ?? 'N/A', }) } render() { return ( <View style={Styles.container}> <VerticalPreference title={'UUID'} text={this.state.deviceUUID} accessibilityLabel={'airbridgeDeviceId'} /> <VerticalPreference title={'AppSetID'} text={this.state.appSetID} accessibilityLabel={'appSetId'} /> <VerticalPreference title={'GeneratedDeviceUUID'} text={this.state.airbridgeGeneratedDeviceUUID} accessibilityLabel={'generatedDeviceUUID'} /> <VerticalPreference title={'Google Advertising ID (GAID)'} text={this.state.gaid} accessibilityLabel={'googleAdvertisingId'} /> <VerticalPreference title={'Apple Advertising ID (IDFA)'} text={this.state.idfa} accessibilityLabel={'airbridgeIDFA'} /> <VerticalPreference title={'Apple Vendor ID (IDFV)'} text={this.state.idfv} accessibilityLabel={'airbridgeIDFV'} /> <VerticalPreference title={'Firebase Cloud Messaging Token'} text={this.state.fcmToken} accessibilityLabel={'fcmToken'} onPress={() => this.confirmRef.current.show() } /> <VerticalPreference title={'PushToken'} text={this.state.apnsToken} accessibilityLabel={'airbridgePushToken'} /> <VerticalPreference title={'airbridgeJSON'} text={this.state.airbridgeJSON} accessibilityLabel={'airbridgeJSON'} /> <ConfirmDialog ref={this.confirmRef} message={'Firebase Cloud Messaging Token Deleted'} onConfirm={() => { this.reloadToken() }} /> </View> ) } }