forked from Jojocaster/do-you-app
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathApp.tsx
50 lines (46 loc) · 1.73 KB
/
App.tsx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import { StatusBar } from 'expo-status-bar'
import { SafeAreaProvider } from 'react-native-safe-area-context'
import { Provider } from 'react-redux'
import { ThemeProvider } from 'styled-components/native'
import useCachedResources from './src/hooks/useCachedResources'
import useColorScheme from './src/hooks/useColorScheme'
import Navigation from './src/navigation'
import { store } from './src/store/store'
import { theme } from './src/theme'
import service from './service'
import TrackPlayer, { Capability } from 'react-native-track-player'
import { Status } from './src/components/Status/Status'
//@ts-ignore
import logo from './assets/images/doyou.webp'
import { Platform } from 'react-native'
// import * as Updates from 'expo-updates'
// Required on iOS (otherwise player will go to pause state while buffering)
// Only makes Android slower to load, hence the condition
TrackPlayer.setupPlayer({ waitForBuffer: Platform.OS === 'ios' })
TrackPlayer.registerPlaybackService(() => service)
TrackPlayer.updateOptions({
stopWithApp: true,
capabilities: [Capability.Stop, Capability.Pause, Capability.Play],
compactCapabilities: [Capability.Stop, Capability.Pause, Capability.Play],
icon: logo,
})
// Updates.fetchUpdateAsync()
export default function App() {
const isLoadingComplete = useCachedResources()
const colorScheme = useColorScheme()
if (!isLoadingComplete) {
return null
} else {
return (
<SafeAreaProvider style={{ backgroundColor: '#212020' }}>
<Provider store={store}>
<ThemeProvider theme={theme}>
<Status />
<Navigation colorScheme={colorScheme} />
</ThemeProvider>
<StatusBar style={'light'} />
</Provider>
</SafeAreaProvider>
)
}
}