React-native-onesignal: рдЖрдИрдбреАрдПрд╕ рдкрд░реЗрд╢рд╛рдиреА

рдХреЛ рдирд┐рд░реНрдорд┐рдд 19 рдлрд╝рд░ре░ 2017  ┬╖  25рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: OneSignal/react-native-onesignal

рд╣рд╛рдп рдореЗрд░реЗ рдкрд╛рд╕ OneSignalController рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ Main.js . рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рддрд╛ рд╣реВрдВ

class OneSignalController extends Component {
    props: Props

    constructor(props) {
        super(props);
    }
    componentWillMount() {
        OneSignal.addEventListener('opened', this.onOpened);
        OneSignal.addEventListener('ids', this.onIds);
    }

    componentWillUnmount() {
        OneSignal.removeEventListener('opened', this.onOpened);
        OneSignal.removeEventListener('ids', this.onIds);
    }

    onIds = (device) => {
        this.props.dispatch_set_device_id(device.userId);
    }

    render() {
        return null;
    }
}

рдореИрдВ redux-persist рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ rehydration рд╕реЗ рдкрд╣рд▓реЗ рдРрдк рдХреЛ рдкреНрд░рд╛рд░рдВрдн рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕реЗ рдЕрдкрдиреЗ index.android.js рдореЗрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ

...
        this.state = { rehydrated: false };
    }

    componentWillMount() {
      Storage.restoreData(store, {}, () => {
        this.setState({ rehydrated: true });
        });
    }

    render() {
        return (
            this.state.rehydrated === true
            ? <Provider store={store}>
                <View style={styles.container}>
                    <Main />
                </View>
            </Provider>
            : null
        );
    }

рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдореИрдВ рдПрдХ рд╕рд┐рдЧреНрдирд▓ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдЕрдм onIds рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдореИрдВрдиреЗ рдЕрднреА рдЗрд╕ lib рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдЙрд╕реА рдореБрджреНрджреЗ рдХреЛ рдорд╛рд░рд╛ рд╣реИред Redux-Persist рдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╣рд╛рдБ рднреА рдХрд░реЗрдВ! рдФрд░ рдХреБрдЫ рдЦреБрджрд╛рдИ рдХреЗ рдмрд╛рдж, рдореИрдВ рджреГрдврд╝рддрд╛ рд╕реЗ рдорд╛рдирдирд╛ рд╣реИ рдХрд┐ рдпрд╣ redux-рдЬрд╛рд░реА рд░рд╣рддреА рд╣реИ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИред рдпрд╛ ids рдИрд╡реЗрдВрдЯ рдХреА рдХреЛрдИ рд╡рд┐рд▓рдВрдмрд┐рдд рд╕рджрд╕реНрдпрддрд╛ .

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб, рдпрджрд┐ index.xxx.js (рдЕрд░реНрдерд╛рдд рдРрдк рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ рдмрд╣реБрдд рдкрд╣рд▓реЗ) рдореЗрдВ рд╕рд╣реА рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдкреНрд░рддреНрдпреЗрдХ рдРрдк рдкреБрдирд░рд╛рд░рдВрдн рд╣реЛрдиреЗ рдкрд░ рдЯреНрд░рд┐рдЧрд░ рд╣реЛрдЧрд╛:

//... other imports
import OneSignal from "react-native-onesignal";

OneSignal.addEventListener('ids', (device) => {
    console.log("[OneSignal]>>ids: ", device);
});

// ....

AppRegistry.registerComponent ....

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрдЧрд░ OneSignal.addEventListener('ids' ... рдХреЛ redux-persist rehydration => рдХреЗ рдмрд╛рдж рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдХреЙрд▓рдмреИрдХ рдЕрд▓рд╡рд┐рджрд╛ рдХреЛ рдЪреВрдореЗрдВред

рдлрд┐рдХреНрд╕ рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ (рд╣реИрдХ?) рдЗрд╕реЗ рдЕрднреА рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ (рд╡рд░реНрддрдорд╛рди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рд╡рдирд╕рд┐рдЧреНрдирд▓ рд░рд┐рд▓реАрдЬ 3.0.3):

OneSignal.configure() рдирд╛рдордХ рдПрдХ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдЬреЗрдПрд╕-рд╕рд╛рдЗрдб рд╡рд┐рдзрд┐ рд╣реИ рдЬреЛ рдореВрд▓ рдкрдХреНрд╖ ( рдПрдВрдбреНрд░реЙрдЗрдб рдФрд░ рдЖрдИрдУрдПрд╕ ) рдХреЛ ids рдИрд╡реЗрдВрдЯ рдХреЛ рдЬреЗрдПрд╕-рд╕рд╛рдЗрдб рдкрд░ рд╡рд╛рдкрд╕ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рддреА рд╣реИред

рддреЛ, 'рдЖрдИрдбреА' рдХреЗ рд▓рд┐рдП рдИрд╡реЗрдВрдЯ рд╢реНрд░реЛрддрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж рдЗрд╕реЗ рдХреЙрд▓ рдХрд░реЗрдВ:

// ... after store rehydration complete ...

OneSignal.addEventListener('ids', (device) => {
   // ... do whatever with device
});

OneSignal.configure();  // add this to trigger `ids` event

рдореЗрд░реЗ рдЖрдХрд▓рди рд╕реЗ рдпрд╣ рдореВрд▓ рдкрдХреНрд╖ рдореЗрдВ рдХреИрд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ (рдпрд╣ рдХреЗрд╡рд▓ рдЖрдВрддрд░рд┐рдХ рдИрд╡реЗрдВрдЯ рд╣реИрдВрдбрд▓рд░ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЕрдзрд┐рдХ рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИ)ред рд▓реЗрдХрд┐рди рдзреНрдпрд╛рди рд░рдЦреЗрдВ, рдпрд╣ рд╣рд░ рдмрд╛рд░ ids рд╢реНрд░реЛрддрд╛рдУрдВ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рддрд╛ рд╣реИред

рдЕрдм рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЕрдиреНрдп рдХрд╛рд░реНрдпрдХреНрд░рдо рддрдм рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ рдЬрдм рд╢реНрд░реЛрддрд╛рдУрдВ рдХреЛ рдмрд╛рдж рдореЗрдВ рдРрдк рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПрдЧрд╛ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╢рд╛рдпрдж рдПрдХ рдЖрдВрддрд░рд┐рдХ рдЧреНрд░рд╛рд╣рдХ рдХрддрд╛рд░ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдПрдХ рд╕рд┐рдЧреНрдирд▓ рд▓рд┐рдм рджреНрд╡рд╛рд░рд╛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдЗрд╕реЗ рдПрдХ рд╢реЙрдЯ рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рд╢рд╛рдпрдж рдЗрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдШрдЯрдирд╛ рд╢реНрд░реЛрддрд╛рдУрдВ рдХреЗ рдкрдВрдЬреАрдХрд░рдг рдореЗрдВ рджреЗрд░реА рдХреЗ рд╕рд╛рде рдкреБрд▓-рдЕрдиреБрд░реЛрдз рдХрд░реЗрдВред

рд╕рднреА 25 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореБрдЭреЗ onIds рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдПрдВ рдЖ рд░рд╣реА рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рдХрднреА-рдХрднреА рдХреЙрд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрд╣ redux-persist рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ OneSignal рд╕рд░реНрд╡рд░ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИрдВ? рд╣рд╛рд▓рд╛рдВрдХрд┐, рдбреЙрдХреНрдЯрд░ рдХрд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рд╡реИрд╕реЗ рднреА рд╢реВрдиреНрдп рд╡рд╛рдкрд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рд░ рдХреБрдЫ рдХреЛрд╢рд┐рд╢реЛрдВ рдореЗрдВ рдПрдХ рдмрд╛рд░ рдореБрдЭреЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ, рдпрд╣ рд╕реБрд╕рдВрдЧрдд рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдШрдЯрдирд╛ рдЕрдм рдХрд┐рддрдиреА рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реИред

рдореИрдВ рдЖрдЬ рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдкрд░ рдлрд┐рд░ рд╕реЗ рдЬрд╛рдБрдЪ рдХрд░ рд░рд╣рд╛ рдерд╛ рдФрд░ OneSignal.requestPermissions() рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, "onIds" рдИрд╡реЗрдВрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ 10 рд╕реЗрдХрдВрдб рдХрд╛ рдЕрдЪреНрдЫрд╛ рд╕рдордп рд▓рдЧрд╛ред

рдореИрдВрдиреЗ рдРрдк рдХреЗ рднреАрддрд░ рдПрдХ рд╣реА рдШрдЯрдирд╛ рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕реНрдерд╛рди рдкрд░ рд░рдЦрд╛ рд╣реИ, рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдореБрдЭреЗ рдЕрднреА рднреА рдЖрдИрдбреА рдорд┐рд▓рддреЗ рд╣реИрдВ, рдЬрдм рднреА рдореИрдВ рд░реАрдлреНрд░реЗрд╢ рдХрд░рддрд╛ рд╣реВрдВ (рдбреЗрдореЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░), рд▓реЗрдХрд┐рди рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ "рдкрдВрдЬреАрдХреГрдд" рдШрдЯрдирд╛ рдЙрд╕ рдХрд╛рд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдЬреЛ рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ рдЯреНрд░рд┐рдЧрд░ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред

рджреЛрд╕реНрддреЛрдВ, рдЬрдм рдРрдк рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдИрд╡реЗрдВрдЯ рдХреЛ рдХрднреА рднреА рдХреЙрд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЕрдЧрд░ рдЖрдИрдбреА рдЙрдкрд▓рдмреНрдз рд╣реИрдВ, рддреЛ рдХреНрдпрд╛ рдпрд╣ рд╣рд░ рдмрд╛рд░ рдЯреНрд░рд┐рдЧрд░ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП?

рджреВрд╕рд░рд╛ рдореБрджреНрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреБрд╢ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ рддреЛ рдпрд╣ 5 рдореЗрдВ рд╕реЗ 1 рдмрд╛рд░ (рдФрд╕рдд) рдЯреНрд░рд┐рдЧрд░ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдпрджрд┐ рдкрд╣рд▓реА рд╕рдорд╕реНрдпрд╛ рдареАрдХ рдереА рддреЛ рдпрд╣ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА, рдЗрд╕рд▓рд┐рдП рдЕрдЧрд▓реА рдмрд╛рд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдРрдк рдЦреЛрд▓рдиреЗ рдкрд░ рд╣рдо рдЖрдИрдбреА рдЙрдард╛ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВрдиреЗ рдЕрднреА рдЗрд╕ lib рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдЙрд╕реА рдореБрджреНрджреЗ рдХреЛ рдорд╛рд░рд╛ рд╣реИред Redux-Persist рдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╣рд╛рдБ рднреА рдХрд░реЗрдВ! рдФрд░ рдХреБрдЫ рдЦреБрджрд╛рдИ рдХреЗ рдмрд╛рдж, рдореИрдВ рджреГрдврд╝рддрд╛ рд╕реЗ рдорд╛рдирдирд╛ рд╣реИ рдХрд┐ рдпрд╣ redux-рдЬрд╛рд░реА рд░рд╣рддреА рд╣реИ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИред рдпрд╛ ids рдИрд╡реЗрдВрдЯ рдХреА рдХреЛрдИ рд╡рд┐рд▓рдВрдмрд┐рдд рд╕рджрд╕реНрдпрддрд╛ .

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб, рдпрджрд┐ index.xxx.js (рдЕрд░реНрдерд╛рдд рдРрдк рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ рдмрд╣реБрдд рдкрд╣рд▓реЗ) рдореЗрдВ рд╕рд╣реА рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдкреНрд░рддреНрдпреЗрдХ рдРрдк рдкреБрдирд░рд╛рд░рдВрдн рд╣реЛрдиреЗ рдкрд░ рдЯреНрд░рд┐рдЧрд░ рд╣реЛрдЧрд╛:

//... other imports
import OneSignal from "react-native-onesignal";

OneSignal.addEventListener('ids', (device) => {
    console.log("[OneSignal]>>ids: ", device);
});

// ....

AppRegistry.registerComponent ....

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрдЧрд░ OneSignal.addEventListener('ids' ... рдХреЛ redux-persist rehydration => рдХреЗ рдмрд╛рдж рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдХреЙрд▓рдмреИрдХ рдЕрд▓рд╡рд┐рджрд╛ рдХреЛ рдЪреВрдореЗрдВред

рдлрд┐рдХреНрд╕ рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ (рд╣реИрдХ?) рдЗрд╕реЗ рдЕрднреА рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ (рд╡рд░реНрддрдорд╛рди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рд╡рдирд╕рд┐рдЧреНрдирд▓ рд░рд┐рд▓реАрдЬ 3.0.3):

OneSignal.configure() рдирд╛рдордХ рдПрдХ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдЬреЗрдПрд╕-рд╕рд╛рдЗрдб рд╡рд┐рдзрд┐ рд╣реИ рдЬреЛ рдореВрд▓ рдкрдХреНрд╖ ( рдПрдВрдбреНрд░реЙрдЗрдб рдФрд░ рдЖрдИрдУрдПрд╕ ) рдХреЛ ids рдИрд╡реЗрдВрдЯ рдХреЛ рдЬреЗрдПрд╕-рд╕рд╛рдЗрдб рдкрд░ рд╡рд╛рдкрд╕ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рддреА рд╣реИред

рддреЛ, 'рдЖрдИрдбреА' рдХреЗ рд▓рд┐рдП рдИрд╡реЗрдВрдЯ рд╢реНрд░реЛрддрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж рдЗрд╕реЗ рдХреЙрд▓ рдХрд░реЗрдВ:

// ... after store rehydration complete ...

OneSignal.addEventListener('ids', (device) => {
   // ... do whatever with device
});

OneSignal.configure();  // add this to trigger `ids` event

рдореЗрд░реЗ рдЖрдХрд▓рди рд╕реЗ рдпрд╣ рдореВрд▓ рдкрдХреНрд╖ рдореЗрдВ рдХреИрд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ (рдпрд╣ рдХреЗрд╡рд▓ рдЖрдВрддрд░рд┐рдХ рдИрд╡реЗрдВрдЯ рд╣реИрдВрдбрд▓рд░ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЕрдзрд┐рдХ рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИ)ред рд▓реЗрдХрд┐рди рдзреНрдпрд╛рди рд░рдЦреЗрдВ, рдпрд╣ рд╣рд░ рдмрд╛рд░ ids рд╢реНрд░реЛрддрд╛рдУрдВ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рддрд╛ рд╣реИред

рдЕрдм рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЕрдиреНрдп рдХрд╛рд░реНрдпрдХреНрд░рдо рддрдм рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ рдЬрдм рд╢реНрд░реЛрддрд╛рдУрдВ рдХреЛ рдмрд╛рдж рдореЗрдВ рдРрдк рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПрдЧрд╛ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╢рд╛рдпрдж рдПрдХ рдЖрдВрддрд░рд┐рдХ рдЧреНрд░рд╛рд╣рдХ рдХрддрд╛рд░ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдПрдХ рд╕рд┐рдЧреНрдирд▓ рд▓рд┐рдм рджреНрд╡рд╛рд░рд╛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдЗрд╕реЗ рдПрдХ рд╢реЙрдЯ рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рд╢рд╛рдпрдж рдЗрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдШрдЯрдирд╛ рд╢реНрд░реЛрддрд╛рдУрдВ рдХреЗ рдкрдВрдЬреАрдХрд░рдг рдореЗрдВ рджреЗрд░реА рдХреЗ рд╕рд╛рде рдкреБрд▓-рдЕрдиреБрд░реЛрдз рдХрд░реЗрдВред

рдпрджрд┐ рдЖрдк OneSignal.configure() рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ; рдШрдЯрдирд╛ рд╢реНрд░реЛрддрд╛ рд╕реЗ рдкрд╣рд▓реЗ рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рдпрдХреАрди рднреА рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ redux-persist рд╣реИред

рдмрд╕ рдПрдХ рддреНрд╡рд░рд┐рдд рдиреЛрдЯ рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЕрдирд┐рд╢реНрдЪрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд╕рд╛рде рдСрдирдЖрдИрдбреАрдПрд╕ рдШрдЯрдирд╛ рдлрд╛рдпрд░рд┐рдВрдЧ рдирд╣реАрдВ рдереАред

рдЕрдм рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдШрдЯрдХ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рдРрдк рдХреЗ рд▓реЙрдиреНрдЪ рдореЗрдВ рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рд▓реЛрдб рд╣реЛрддрд╛ рд╣реИ, рдореБрдЭреЗ рдХрднреА-рдХрднреА рдПрдХ рдСрдирдЖрдИрдбреАрдПрд╕ рдИрд╡реЗрдВрдЯ рдлрд╛рдпрд░рд┐рдВрдЧ рдорд┐рд▓рддреА рд╣реИ рдФрд░ рдХрднреА-рдХрднреА рджреЛ (рдХреНрдпреЛрдВрдХрд┐ рдореВрд▓ рдЕрднреА рднреА рдЕрд╡рд╕рд░ рдкрд░ рдлрд╛рдпрд░рд┐рдВрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ)ред

рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рд░рд┐рд▓реАрдЬ рдмрд┐рд▓реНрдб рдкрд░ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдВрдбреНрд░реЙрдЗрдб, рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ 0.38 рдкрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдЪреВрдВрдХрд┐ рдЕрдиреНрдп рдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд░реЗрдбрдХреНрд╕ рдЬрд╛рд░реА рд╣реИ, рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдпрджрд┐ рдХрдИ рдмрд╛рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЛрдИ рдирдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рд╣реИ рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдареАрдХ рд╣реИред рдЬрдм рднреА рдХреЛрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕ рдЕрд╡рд╕рд░ рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдореИрдВ рд╣рд░ рдмрд╛рд░ рдЕрдкрдиреЗ рдПрдкреАрдЖрдИ рдХреЛ рджреЛ рдмрд╛рд░ рдорд╛рд░рдиреЗ рд╕реЗ рдирд┐рдкрдЯреВрдВрдЧрд╛ред

рдпрджрд┐ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрд░рд┐рдгрд╛рдо рд╣реИ (рдЕрдХреНрд╖рдорддрд╛ рдХреЗ рдЕрд▓рд╛рд╡рд╛) рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖рдЬреНрдЮрддрд╛ рдХрд╛ рдХреНрд╖реЗрддреНрд░ рдирд╣реАрдВ рд╣реИред

рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд╣реА рд╣реИ рдФрд░ рд╣рдо рдкреНрд░реЛрдбрдХреНрд╢рди рдореЗрдВ рд╣реИрдВред ;) рд╣рд╛рдВ, рдореИрдВ рдПрдкреАрдЖрдИ рдХреЛ рджреЛ рдмрд╛рд░ рдХреЙрд▓ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред :(

рд╣рд╛рдп @ edo1493 , рдореБрдЭреЗ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред рдПрдкреАрдЖрдИ рдХреЛ рджреЛ рдмрд╛рд░ рдХреИрд╕реЗ рдХреЙрд▓ рдХрд░реЗрдВ?

рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдРрдк (рджреЗрд╡ рдореЛрдб) рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд┐рдП рдмрд┐рдирд╛, рдИрд╡реЗрдВрдЯ рдХреЗрд╡рд▓ 35s . рдХреЗ рдмрд╛рдж рд╣реА рд╕рдХреНрд░рд┐рдп рд╣реЛрдЧрд╛

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:
рдпрд╣ рдРрдк рдХреЗ рдкрд╣рд▓реЗ рд▓реЛрдб рдкрд░ рд╣реЛрддрд╛ рд╣реИ
рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдо: рдПрдВрдбреНрд░реЙрдЗрдб

рд╢рд╛рдпрдж @ jkasten2 рдпрд╣рд╛рдБ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ,

@edo1493 onIds рддрдм рддрдХ рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рдЙрд╕реЗ OneSignal рд╕рд░реНрд╡рд░ рд╕реЗ рдХреЛрдИ рдкреНрд▓реЗрдпрд░/рдпреВрдЬрд╝рд░ рдЖрдИрдбреА рдирд╣реАрдВ рдорд┐рд▓ рдЬрд╛рддреАред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ userId рдХрднреА рднреА null рд╣рд╛рд▓рд╛рдВрдХрд┐ pushToken рдЕрдЧрд░ рдПрдкреАрдПрди / рдПрдлрд╕реАрдПрдо рд╕рдордп рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ рддреЛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╕рдорд╕реНрдпрд╛ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ рдХрдиреЗрдХреНрд╢рди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдиреЗрдЯрд╡рд░реНрдХ рдХреЙрд▓ рдХреА рд▓реЙрдЧрд┐рдВрдЧ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореВрд▓ рдХреЛрдб рдореЗрдВ setLogLevel рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдпрджрд┐ рдЖрдк рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИрдВ рддреЛ рдпрд╣ рдЖрдИрдУрдПрд╕ рдХреЗ рд╕рд╛рде рдПрдХреНрд╕рдХреЛрдб рд▓реЙрдЧ рдмрдирд╛рдо рд▓реЙрдЧрдХреИрдЯ рдореЗрдВ рдХреЙрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░реЗрдЧрд╛ред

рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ redux-persist рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ OneSignal рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕рд╛рде рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рдд рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реИред @avishayil рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ redux-persist рд╕рд╛рде рдкреБрди: рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдПрдХ рдмрд╛рд░ рдЬрдм рдЖрдк рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕рд╛рдЭрд╛ рдХрд░ рд▓реЗрдВ рддреЛ рдореИрдВ рдЗрд╕реЗ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХрд╛ рднреА рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

@ jkasten2 рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ redux-persist рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдирд┐рдХрд╛рд▓рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ рдпрджрд┐ рдпрд╣рд╛рдВ рдХреЗ рд▓реЛрдЧреЛрдВ рдореЗрдВ рд╕реЗ рдХреЛрдИ рдПрдХ рд░рд┐рдбрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░реЗрдкреЛ рд╕рд╛рдЭрд╛ рдХрд░реЗрдЧрд╛-рдкреБрдирд░реБрддреНрдкрд╛рджрд┐рдд рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рд╛рде рдЬрд╛рд░реА рд░рд╣реЗрдЧрд╛ред

Redux рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдпрд╣ рдЕрднреА рднреА рдПрдХ рдореБрджреНрджрд╛ рд╣реИред

рдзрдиреНрдпрд╡рд╛рдж @rcugut ! OneSignal.configure() рдЗрд╕реЗ рддреБрд░рдВрдд рдареАрдХ рдХрд░реЗрдВ! рдореИрдВ рднреА redux-persist рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ! рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ!

.configure рдХреЛ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рднреА рддрдп рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдореИрдВ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдирд┐рд░рдВрддрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдореЗрд░реЗ рд▓рд┐рдП OneSignal.configure() рд╣реИрдХ рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ OneSignal.removeEventListener("ids", this.onIds) рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛?

@junedomingo . рдЬреИрд╕реА рд╣реА рдЪреАрдЬрд╝ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝ рд░рд╣рд╛ рд╣реИ

рдПрдВрдбреНрд░реЙрдЗрдб рдореЗрдВ, рдРрдк рдХреЗ рдкрд╣рд▓реЗ рд▓реЛрдб рдкрд░, рдЖрдИрдбреА рдЗрд╡реЗрдВрдЯ рдХреЛ 35 рд╕реЗрдХрдВрдб рдХреЗ рдмрд╛рдж рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ

рдореБрдЭреЗ рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рдШрдЯрдирд╛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддреА рд╣реИред
рд▓реЗрдХрд┐рди рдореИрдВ рдЖрдИрдУрдПрд╕ рдкрд░ рд╕рдВрдШрд░реНрд╖ рдХрд░рддрд╛ рд╣реВрдВ, рдЬрд╣рд╛рдВ рдореИрдВ onIds() рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдХрднреА рдирд╣реАрдВ рдЖрддрд╛ рд╣реВрдВ ...
рдШрдЯрдирд╛ рд╢реНрд░реЛрддрд╛рдУрдВ рдХреЗ рдкрд╣рд▓реЗ рдпрд╛ рдмрд╛рдж рдореЗрдВ OneSignal.configure() рдЬреЛрдбрд╝рдирд╛ рдФрд░ рдкреБрдирд░реНрдЬрд▓реАрдХрд░рдг рдкреВрд░рд╛ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдпрд╛ рдмрд╛рдж рдореЗрдВ (рд╣рд╛рдБ, рдореИрдВ redux-persist рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ) рд╕реЗ рдХреЛрдИ рдорджрдж рдирд╣реАрдВ рдорд┐рд▓реАред
рдХреНрдпрд╛ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рд╣реИ?

@ jkasten2 рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИ рдХрд┐ @junedomingo рдиреЗ рдпрд╣рд╛рдВ рдЖрдИрдбреА рд╢реНрд░реЛрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИред рдореИрдВ рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЗ рдмрд╛рд╣рд░ рдФрд░ рдЕрдВрджрд░ рд▓реЙрдЧ рдбрд╛рд▓рддрд╛ рд╣реВрдВ

     OneSignal.idsAvailable(new OneSignal.IdsAvailableHandler() {
            public void idsAvailable(String userId, String registrationId) {
                final WritableMap params = Arguments.createMap();

                params.putString("userId", userId);
                params.putString("pushToken", registrationId);

                sendEvent("OneSignal-idsAvailable", params);
            }
        });

рдпрд╣ 30 рд╕реЗрдХрдВрдб рдХреЗ рдмрд╛рдж рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛ рд╣реИ!
рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░/рд╕рдорд╛рдзрд╛рди рд╣реИ?

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ OneSignal.setRequiresUserPrivacyConsent(true);
рдпрд╣ рддрдм рддрдХ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдЬрдм рддрдХ рдЖрдк рд╕рд╣рдорддрд┐ рдирд╣реАрдВ рджреЗрддреЗ!
OneSignal.provideUserConsent(true);

рд╢реНрд░реЛрддрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж OneSignal.configure() рдХреЛ рднреА рдХреЙрд▓ рдХрд░реЗрдВред
рдЖрд╢рд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддреА рд╣реИ !!!

рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛
рд╕рдВрд╕реНрдХрд░рдг: v3.3.1
рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдо: рдЖрдИрдУрдПрд╕

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдпрд╣рд╛рдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдИрдбреА рд╢реВрдиреНрдп рд╣реИ, рдпрд╣ рдХреЗрд╡рд▓ 29 рд╕реЗрдХрдВрдб рдХреЗ рдмрд╛рдж рдИрд╡реЗрдВрдЯ рд╢реНрд░реЛрддрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдИрдбреА рдХреЗ рд╕рд╛рде рдЯреНрд░рд┐рдЧрд░ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдРрдк рдХреЗ рдХреНрд▓реАрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдХреЗ рдмрд╛рдж рдкрд╣рд▓реЗ рд▓реЙрдиреНрдЪ рдкрд░ рд╣реИред
Screen Shot 2019-08-05 at 3 04 59 PM

рдХреНрдпрд╛ рдХреЛрдИ рдЕрднреА рднреА рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдЬреВрдЭ рд░рд╣рд╛ рд╣реИ?
рдШрдЯрдирд╛ рдХреЗрд╡рд▓ Android рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рдмреВрдЯ рдореЗрдВ ~ 30sec рдХреЗ рдмрд╛рдж рдЪрд╛рд▓реВ рд╣реЛ рдЬрд╛рддреА рд╣реИред

@damathryx рд╣рд╛рдп, рдореИрдВ рдкрд╣рд▓реЗ рд▓реЙрдиреНрдЪ рдореБрджреНрджреЗ рдкрд░ рдЙрд╕реА

рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП

рдореЗрд░реЗ рд▓рд┐рдП рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ .configure рдмрд┐рдирд╛ рдкреБрд╢ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди рдирд╣реАрдВ рдЖ рд░рд╣реЗ рд╣реИрдВред рдЖрдИрдбреА рдЕрдм рдареАрдХ рд╕реЗ рдЪрд╛рд▓реВ рд╣реЛ рдЧрдП рд╣реИрдВ, рдбрд┐рд╡рд╛рдЗрд╕ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рд╣реЛ рдЧрдИ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реВрдЪрдирд╛рдПрдВ рд╕реНрд╡рдпрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

mtt87 picture mtt87  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Luckygirlllll picture Luckygirlllll  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

carloscuesta picture carloscuesta  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

rfmejia picture rfmejia  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

phantom1299 picture phantom1299  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ