UNPKG

airbridge-react-native-sdk

Version:

Airbridge SDK for React Native

66 lines (50 loc) 1.61 kB
import React, { useEffect, useRef, useState } from 'react' import { View } from 'react-native' import { storage } from './common/Storage' import { fcmService } from './common/FCMService' import { NavigationContainer } from '@react-navigation/native' import StackNavigation from './navigations/Stack' import { Airbridge } from 'airbridge-react-native-sdk' import MessageDialog from './component/MessageDialog' import { qaLog } from './common/QALog' export default function App() { useEffect(() => { prepare() }, []) prepare = async () => { fcmService.prepare() storage.set('attributeResult', 'N/A') Airbridge.fetchDeviceUUID((uuid) => { storage.set('deviceUUID', uuid) }) Airbridge.fetchAirbridgeGeneratedUUID((uuid) => { storage.set('airbridgeGeneratedDeviceUUID', uuid) }) Airbridge.setOnAttributionReceived((result) => { if (result == null) { storage.set('attributeResult', 'N/A'); } else { storage.set('attributeResult', JSON.stringify(result)); } }) Airbridge.setOnDeeplinkReceived((result) => { qaLog(`[DeepLink] ${result}`) setDeeplink(result) deeplinkRef.current?.show() }) } const deeplinkRef = useRef(); const [deeplink, setDeeplink] = useState(''); return ( <View style={{flex:1}}> <NavigationContainer> <StackNavigation /> </NavigationContainer> <MessageDialog ref={deeplinkRef} title={'Deeplink'} accessibilityLabel={'deeplink'} message={deeplink} /> </View> ) }