-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathApp.tsx
61 lines (55 loc) · 1.71 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
51
52
53
54
55
56
57
58
59
60
61
/**
* Sample React Native App
* https://github.com/facebook/react-native
*
* @format
*/
import React, {useEffect, useState} from 'react';
import {SafeAreaView, View} from 'react-native';
import BackgroundService from 'react-native-background-actions';
import {soundSettings} from './components/functions/speakMessage.jsx';
import {requestSmsPermission} from './components/functions/permissionReadSMS.jsx';
import {readAmountReceivedMessage} from './components/functions/readspeakMessage.jsx';
// import SmsAndroid from 'react-native-get-sms-android';
// import SmsListener from 'react-native-android-sms-listener';
function App(): React.JSX.Element {
const sleep = time =>
new Promise(resolve => setTimeout(() => resolve(), time));
const veryIntensiveTask = async taskDataArguments => {
const {delay} = taskDataArguments;
await new Promise(async resolve => {
for (let i = 0; BackgroundService.isRunning(); i++) {
await sleep(delay);
}
});
};
const options = {
taskName: 'Example',
taskTitle: 'ExampleTask title',
taskDesc: 'ExampleTask description',
taskIcon: {
name: 'ic_launcher',
type: 'mipmap',
},
color: '#ff00ff',
linkingURI: 'yourSchemeHere://chat/jane', // See Deep Linking for more info
parameters: {
delay: 1000,
},
};
const [receiveSmsPermission, setReceiveSmsPermission] = useState('');
useEffect(() => {
setReceiveSmsPermission(requestSmsPermission(receiveSmsPermission));
}, []);
useEffect(() => {
soundSettings();
readAmountReceivedMessage();
BackgroundService.start(veryIntensiveTask, options);
}, []);
return (
<SafeAreaView>
<View></View>
</SafeAreaView>
);
}
export default App;