React-native-onesignal: рдСрди рдУрдкрди/рдСрди рд░рд┐рд╕реАрд╡реНрдб рдЗрд╡реЗрдВрдЯ рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдлрд╛рдпрд░рд┐рдВрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 9 рдЬреБрд▓ре░ 2018  ┬╖  35рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: OneSignal/react-native-onesignal

рд╡рд┐рд╡рд░рдг:
рд╕рдмрдХреЛ рдирдорд╕реНрддреЗред рдореБрдЭреЗ рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдУрдкрди/рдСрди рд░рд┐рд╕реАрд╡реНрдб рдЗрд╡реЗрдВрдЯреНрд╕ рдореЗрдВ рдкрд░реЗрд╢рд╛рдиреА рд╣реЛ рд░рд╣реА рд╣реИред рдПрдореБрд▓реЗрдЯрд░ рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рд╡реНрдпрд╡рд╣рд╛рд░ рдЕрд▓рдЧ рд╣реИ, рд▓реЗрдХрд┐рди рджреЛрдиреЛрдВ рд╣реА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд╕рдЯреАрдХ рдкреБрд╢ рд╕рдВрджреЗрд╢ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдПрдореБрд▓реЗрдЯрд░ рдкрд░:

  1. рдЕрдЧреНрд░рднреВрдорд┐ - рдСрди рд░рд┐рд╕реАрд╡реНрдб рдЗрд╡реЗрдВрдЯ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдСрди рдУрдкрди рдХреЗрд╡рд▓ рддрднреА рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдкреБрд╢ рдЯреИрдк рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рд╕рд╣реА)
  2. рдкреГрд╖реНрдарднреВрдорд┐ рд╕рдХреНрд░рд┐рдп - рдХрд┐рд╕реА рдХреЛ рднреА рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ (рдЧрд▓рдд)
  3. рдкреГрд╖реНрдарднреВрдорд┐ рдирд┐рд╖реНрдХреНрд░рд┐рдп (рдРрдк рдмрдВрдж рд╣реИ) - рдСрдирдУрдкрди рдХреЗрд╡рд▓ рддрднреА рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдкреБрд╢ рдЯреИрдк рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рд╕рд╣реА)

рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░:

  1. рдЕрдЧреНрд░рднреВрдорд┐ - рдХрд┐рд╕реА рдиреЗ рднреА рдлрд╛рдпрд░рд┐рдВрдЧ рдирд╣реАрдВ рдХреА (рдЧрд▓рдд)
  2. рдкреГрд╖реНрдарднреВрдорд┐ рд╕рдХреНрд░рд┐рдп - рдХрд┐рд╕реА рдХреЛ рднреА рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ (рдЧрд▓рдд)
  3. рдкреГрд╖реНрдарднреВрдорд┐ рдирд┐рд╖реНрдХреНрд░рд┐рдп (рдРрдк рдмрдВрдж рд╣реИ) - рдСрдирдУрдкрди рдХреЗрд╡рд▓ рддрднреА рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдкреБрд╢ рдЯреИрдк рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рд╕рд╣реА)

рдкрд░реНрдпрд╛рд╡рд░рдг

  1. рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдПрдХ рд╕рдВрдХреЗрдд: "3.2.4"
  2. рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓: "0.50.4"
  3. рдХрдВрдкрд╛рдЗрд▓рдПрд╕рдбреАрдХреЗрд╡рд░реНрдЬрди: "27"
  4. рдмрд┐рд▓реНрдбрдЯреВрд▓реНрд╕рд╡рд░реНрдЬрди: "27.0.3"
  5. рдЧреНрд░реЗрдбрд▓: "4.1"

рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдо:
рдореЗрд░реА рдХрдВрдкрдиреА рдХреА рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХреА рдиреАрддрд┐ рдХреЗ рдХрд╛рд░рдг рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдо рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред

рдФрд░ рдХреБрдЫ:
android/build.gradle

```// рд╢реАрд░реНрд╖-рд╕реНрддрд░реАрдп рдмрд┐рд▓реНрдб рдлрд╝рд╛рдЗрд▓ рдЬрд╣рд╛рдВ рдЖрдк рд╕рднреА рдЙрдк-рдкреНрд░реЛрдЬреЗрдХреНрдЯ/рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред

рдмрд┐рд▓реНрдбрд╕реНрдХреНрд░рд┐рдкреНрдЯ {
рднрдВрдбрд╛рд░ {
рдЬреЗрд╕реЗрдВрдЯрд░ ()
рдЧреВрдЧрд▓()
}
рдирд┐рд░реНрднрд░рддрд╛ {
рдХреНрд▓рд╛рд╕рдкрд╛рде 'com.android.tools. рдмрд┐рд▓реНрдб: рдЧреНрд░реЗрдбрд▓ : 3.0.1'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

}

рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ {
рднрдВрдбрд╛рд░ {
рдореЗрд╡реЗрди {url " https://jitpack.io "} // MPAndroidChart рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдореЗрд╡реЗрдирд▓реЛрдХрд▓ ()
рдЧреВрдЧрд▓()
рдЬреЗрд╕реЗрдВрдЯрд░ ()
рдорд╛рд╡реЗрди {
// рд╕рднреА рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ (JS, Obj-C рд╕реНрд░реЛрдд, Android рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝) npm . рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ
url "$rootDir/../node_modules/react-native/android"
}
}
}

`android/app/build.gradle`

рдкреНрд▓рдЧрдЗрди рд▓рд╛рдЧреВ рдХрд░реЗрдВ: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
рдкреНрд▓рдЧрдЗрди рд▓рд╛рдЧреВ рдХрд░реЗрдВ: "com.android.application"

рдЖрдпрд╛рдд com.android.build.OutputFile

рдмрд┐рд▓реНрдбрд╕реНрдХреНрд░рд┐рдкреНрдЯ {
рднрдВрдбрд╛рд░ {
рдорд╛рд╡реЗрди { url ' https://plugins.gradle.org/m2/ ' } // рдЧреНрд░реИрдбрд▓ рдкреНрд▓рдЧрдЗрди рдкреЛрд░реНрдЯрд▓
}
рдирд┐рд░реНрднрд░рддрд╛ {
рдХреНрд▓рд╛рд╕рдкрд╛рде 'gradle.plugin.com. onesignal: onesignal-gradle-plugin :[0.10.0, 0.99.99]'
}
}

рдкреНрд▓рдЧрдЗрди рд▓рд╛рдЧреВ рдХрд░реЗрдВ: 'com.onesignal.androidsdk.onesignal-gradle-plugin'

/**

  • React.gradle рдлрд╝рд╛рдЗрд▓ рдкреНрд░рддреНрдпреЗрдХ рдмрд┐рд▓реНрдб рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╛рд░реНрдп рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рддреА рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдмрдВрдбрд▓рдбреЗрдмрдЧрдЬреЗрдПрд╕рдПрдВрдбрдПрд╕реЗрдЯреНрд╕
  • рдФрд░ рдмрдВрдбрд▓рд░рд┐рд▓реАрдЬрдЬреЗрдПрд╕рдПрдВрдбрдПрд╕реЗрдЯреНрд╕)ред
  • рдпреЗ рдореВрд▓ рд░реВрдк рд╕реЗ Android рдмрд┐рд▓реНрдб рдХреЗ рджреМрд░рд╛рди рд╕рд╣реА рддрд░реНрдХреЛрдВ рдХреЗ рд╕рд╛рде react-native bundle рдХрд╣рддреЗ рд╣реИрдВ
  • рдЪрдХреНрд░ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдмрдВрдбрд▓рдбреЗрдмрдЧрдЬреЗрдПрд╕рдПрдВрдбрдПрд╕реЗрдЯреНрд╕ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдбрд┐рдмрдЧ/рджреЗрд╡ рдореЛрдб рдореЗрдВ рд╣рдо рдЗрд╕реЗ рд▓реЛрдб рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ
  • рд╡рд┐рдХрд╛рд╕ рд╕рд░реНрд╡рд░ рд╕реЗ рд╕реАрдзреЗ рдмрдВрдбрд▓ред рдиреАрдЪреЗ рдЖрдк рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ
  • рдФрд░ рдЙрдирдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯред рдпрджрд┐ рдЖрдк рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмреНрд▓реЙрдХ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕реЗ рдкрд╣рд▓реЗ рдЬреЛрдбрд╝рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ
  • apply from: "../../node_modules/react-native/react.gradle" рд▓рд╛рдЗрдиред
    *
  • project.ext.react = [
  • // рдЖрдкрдХреЗ рдЬреЗрдПрд╕ рдмрдВрдбрд▓ рд╡рд╛рд▓реА рдЬреЗрдирд░реЗрдЯ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо
  • рдмрдВрдбрд▓рдПрд╕реЗрдЯрдирд╛рдо: "index.android.bundle",
    *
  • // рдмрдВрдбрд▓ рдкреАрдврд╝реА рдХреЗ рд▓рд┐рдП рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдлрд╝рд╛рдЗрд▓
  • рдПрдВрдЯреНрд░реАрдлрд╛рдЗрд▓: "index.android.js",
    *
  • // JS рдФрд░ рдПрд╕реЗрдЯ рдХреЛ рдбрд┐рдмрдЧ рдореЛрдб рдореЗрдВ рдмрдВрдбрд▓ рдХрд░рдирд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ
  • рдмрдВрдбрд▓рдЗрдирдбрд┐рдмрдЧ: рдЭреВрдард╛,
    *
  • // рдЬреЗрдПрд╕ рдФрд░ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рд░рд┐рд▓реАрдЬ рдореЛрдб рдореЗрдВ рдмрдВрдбрд▓ рдХрд░рдирд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ
  • рдмрдВрдбрд▓рдЗрдирд░рд┐рд▓реАрдЬрд╝: рд╕рдЪ,
    *
  • // рдХреНрдпрд╛ JS рдФрд░ рдПрд╕реЗрдЯ рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдмрд┐рд▓реНрдб рд╡реИрд░рд┐рдПрдВрдЯ рдореЗрдВ рдмрдВрдбрд▓ рдХрд░рдирд╛ рд╣реИ (рдпрджрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред
  • // рджреЗрдЦреЗрдВ http://tools.android.com/tech-docs/new-build-system/user-guide#TOC -Build-Variants
  • // рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЧреБрдг рдирд┐рдореНрди рд╕реНрд╡рд░реВрдкреЛрдВ рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
  • // 'рдмрдВрдбрд▓рдЗрди${productFlavor}${buildType}'
  • // 'рдмрдВрдбрд▓рдЗрди $ {рдмрд┐рд▓реНрдб рдЯрд╛рдЗрдк}'
  • // рдмрдВрдбрд▓рдЗрдирдлреНрд░реАрдбрд┐рдмрдЧ: рд╕рдЪ,
  • // рдмрдВрдбрд▓рдЗрдирдкреЗрдб рд░рд┐рд▓реАрдЬ: рд╕рдЪ,
  • // рдмрдВрдбрд▓рдЗрдирдмреАрдЯрд╛: рд╕рдЪ рд╣реИ,
    *
  • // рдХрд╕реНрдЯрдо рдмрд┐рд▓реНрдб рд╡реЗрд░рд┐рдПрдВрдЯ рдореЗрдВ рджреЗрд╡ рдореЛрдб рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдирд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХреЗрд╡рд▓ рд░рд┐рд▓реАрдЬ рдореЗрдВ рдЕрдХреНрд╖рдо рд╣реИ)
  • // рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рд╕реНрдЯреЗрдЬрд┐рдВрдЧ рдмрд┐рд▓реНрдб рдкреНрд░рдХрд╛рд░ рдореЗрдВ рджреЗрд╡ рдореЛрдб рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдпрджрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)
  • devDisabledInStaging: рд╕рдЪ,
  • // рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЧреБрдг рдирд┐рдореНрди рд╕реНрд╡рд░реВрдкреЛрдВ рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
  • // 'devDisabledIn${productFlavor}${buildType}'
  • // 'devDisabledIn${buildType}'
    *
  • // рдЖрдкрдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рдЬрдбрд╝, рдпрд╛рдиреА рдЬрд╣рд╛рдВ "package.json" рд░рд╣рддрд╛ рд╣реИ
  • рдЬрдбрд╝: "../../",
    *
  • // рдЬреЗрдПрд╕ рдмрдВрдбрд▓ рдПрд╕реЗрдЯ рдХреЛ рдбрд┐рдмрдЧ рдореЛрдб рдореЗрдВ рдХрд╣рд╛рдВ рд░рдЦрд╛ рдЬрд╛рдП
  • jsBundleDirDebug: "$buildDir/рдордзреНрдпрд╡рд░реНрддреА/рд╕рдВрдкрддреНрддрд┐/рдбреАрдмрдЧ",
    *
  • // рдЬреЗрдПрд╕ рдмрдВрдбрд▓ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рд░рд┐рд▓реАрдЬ рдореЛрдб рдореЗрдВ рдХрд╣рд╛рдВ рд░рдЦрд╛ рдЬрд╛рдП
  • jsBundleDirRelease: "$buildDir/рдордзреНрдпрд╡рд░реНрддреА/рд╕рдВрдкрддреНрддрд┐/рд░рд┐рд▓реАрдЬрд╝",
    *
  • // рдЦреАрдВрдЪрдиреЗ рдпреЛрдЧреНрдп рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдХрд╣рд╛рдВ рд░рдЦрд╛ рдЬрд╛рдП / рдореВрд▓ рдирд┐рд╡рд╛рд╕реА рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЬрд┐рдирдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ
  • // рдЖрд╡рд╢реНрдпрдХрддрд╛ ('./image.png')), рдбрд┐рдмрдЧ рдореЛрдб рдореЗрдВ
  • ResourcesDirDebug: "$buildDir/рдордзреНрдпрд╡рд░реНрддреА/res/рдорд░реНрдЬ/рдбреАрдмрдЧ",
    *
  • // рдЦреАрдВрдЪрдиреЗ рдпреЛрдЧреНрдп рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдХрд╣рд╛рдВ рд░рдЦрд╛ рдЬрд╛рдП / рдореВрд▓ рдирд┐рд╡рд╛рд╕реА рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЬрд┐рдирдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ
  • // рдЖрд╡рд╢реНрдпрдХрддрд╛ ('./image.png')), рд░рд┐рд▓реАрдЬ рдореЛрдб рдореЗрдВ
  • ResourcesDirRelease: "$buildDir/рдордзреНрдпрд╡рд░реНрддреА/res/рдорд░реНрдЬ/рд░рд┐рд▓реАрдЬрд╝",
    *
  • // рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдпрджрд┐ рдХреЛрдИ JS рдлрд╝рд╛рдЗрд▓ рдпрд╛ рд╕рдВрдкрддреНрддрд┐ рдирд╣реАрдВ рдмрджрд▓рддреА рд╣реИ, рддреЛ рдЧреНрд░реЗрдбрд▓ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ; рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХреА
  • // рдХрд┐ рд╣рдо рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдВрдбреНрд░реЙрдЗрдб/рдпрд╛ рдЖрдИрдУрдПрд╕/ рдореЗрдВ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдирд╣реАрдВ рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдХрд╛рд░реНрдп рдКрдкрд░ рд╣реИрдВ
  • // рджрд┐рдирд╛рдВрдХ; рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЕрдиреНрдп рдлрд╝реЛрд▓реНрдбрд░ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдкреНрд░рджрд░реНрд╢рди рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (gradle
  • // рдкреВрд░реЗ рдкреЗрдбрд╝ рдХреЛ рдЕрдиреБрдХреНрд░рдорд┐рдд рдХрд░реЗрдВ), рдЙрдиреНрд╣реЗрдВ рдпрд╣рд╛рдВ рдЬреЛрдбрд╝реЗрдВред рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ Android/
  • // рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдЗрд╕реЗ рдпрд╣рд╛рдВ рд╕реЗ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВред
  • рдЗрдирдкреБрдЯ рдмрд╣рд┐рд╖реНрдХреГрдд: ["рдПрдВрдбреНрд░реЙрдЗрдб/ ", "рдЖрдИрдУрдПрд╕/ "],
    *
  • // рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░реЗрдВ рдХрд┐ рдХрд┐рд╕ рдиреЛрдб рдХреЛ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдХрд┐рди рдЕрддрд┐рд░рд┐рдХреНрдд рддрд░реНрдХреЛрдВ рдХреЗ рд╕рд╛рде
  • nodeExecutableAndArgs: ["рдиреЛрдб"],
    *
  • // рдкреИрдХреЗрдЬрд░ рдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рддрд░реНрдХ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ
  • рдЕрддрд┐рд░рд┐рдХреНрддрдкреИрдХреЗрдЬрд░рдЖрд░реНрдЧ: []
  • ]
    */

project.ext.react = [
рдХреНрд▓рд┐рдкрд╛рде: "рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕/рдвреЛрдирд╛/рдмрд┐рди/рдХреНрд▓реА.рдЬреЗрдПрд╕"
]

рд╕реЗ рдЖрд╡реЗрджрди рдХрд░реЗрдВ: "../../node_modules/react-native/react.gradle"

/**

  • рдПрдХ рдХреЗ рдмрдЬрд╛рдп рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ APK рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рд╕рд╣реА рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдВ:

    • рдПрдХ рдПрдкреАрдХреЗ рдЬреЛ рдХреЗрд╡рд▓ рдПрдЖрд░рдПрдо рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ


    • рдПрдХ рдПрдкреАрдХреЗ рдЬреЛ рдХреЗрд╡рд▓ x86 рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ

  • рд▓рд╛рдн рдпрд╣ рд╣реИ рдХрд┐ рдПрдкреАрдХреЗ рдХрд╛ рдЖрдХрд╛рд░ рд▓рдЧрднрдЧ 4 рдПрдордмреА рдХрдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
  • рд╕рднреА рдПрдкреАрдХреЗ рдХреЛ рдкреНрд▓реЗ рд╕реНрдЯреЛрд░ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рд▓реЛрдЧ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВрдЧреЗ
  • рдЙрдирдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд╕реАрдкреАрдпреВ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рд╣реАред
    */
    def enableSeparateBuildPerCPUрдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ = рдЭреВрдард╛

/**

  • рд░рд┐рд▓реАрдЬрд╝ рдмрд┐рд▓реНрдб рдореЗрдВ рдЬрд╛рд╡рд╛ рдмрд╛рдЗрдЯрдХреЛрдб рдХреЛ рд╕рд┐рдХреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЧрд╛рд░реНрдб рдЪрд▓рд╛рдПрдБред
    */
    def enableProguardInReleaseBuilds = false

рдПрдВрдбреНрд░реЙрдпрдб {
рд╕рдВрдХрд▓рдирдПрд╕рдбреАрдХреЗрд╕рдВрд╕реНрдХрд░рдг 27
рдмрд┐рд▓реНрдбрдЯреВрд▓рд╕рдВрд╕реНрдХрд░рдг "27.0.3"

defaultConfig {
    applicationId "com.binomysteryshopper"
    minSdkVersion 16
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
    vectorDrawables.useSupportLibrary = true
    ndk {
        abiFilters "armeabi-v7a", "x86"
    }
}
signingConfigs {
      release {
          if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
              storeFile file(MYAPP_RELEASE_STORE_FILE)
              storePassword MYAPP_RELEASE_STORE_PASSWORD
              keyAlias MYAPP_RELEASE_KEY_ALIAS
              keyPassword MYAPP_RELEASE_KEY_PASSWORD
          }
      }
  }
splits {
    abi {
        reset()
        enable enableSeparateBuildPerCPUArchitecture
        universalApk false  // If true, also generate a universal APK
        include "armeabi-v7a", "x86"
    }
}
buildTypes {
    release {
        minifyEnabled enableProguardInReleaseBuilds
        proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
        signingConfig signingConfigs.release
    }
}
// applicationVariants are e.g. debug, release
applicationVariants.all { variant ->
    variant.outputs.each { output ->
        // For each separate APK per architecture, set a unique version code as described here:
        // http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits
        def versionCodes = ["armeabi-v7a":1, "x86":2]
        def abi = output.getFilter(OutputFile.ABI)
        if (abi != null) {  // null for the universal-debug, universal-release variants
            output.versionCodeOverride =
                    versionCodes.get(abi) * 1048576 + defaultConfig.versionCode
        }
    }
}

}

рдирд┐рд░реНрднрд░рддрд╛ {
рдХрдВрдкрд╛рдЗрд▓ (рдкреНрд░реЛрдЬреЗрдХреНрдЯ (': рд░рд┐рдПрдХреНрдЯ-рдиреЗрдЯрд┐рд╡-рд╡рдирд╕рд┐рдЧреНрдирд▓')) {
рд╕рдореВрд╣ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд░реЗрдВ: "com.google.android.gms"
}
рдХрдВрдкрд╛рдЗрд▓ ("com.google.android.gms:play-services-base:12.0.1") {
рдмрд▓ = рд╕рдЪ;
}
рд╕рдВрдХрд▓рди рдкрд░рд┐рдпреЛрдЬрдирд╛ (': рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдзреНрд╡рдирд┐')
рд╕рдВрдХрд▓рди рдкрд░рд┐рдпреЛрдЬрдирд╛ (': рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдСрдбрд┐рдпреЛ')
рд╕рдВрдХрд▓рди рдкрд░рд┐рдпреЛрдЬрдирд╛ (': рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рд▓рд╛рдиреЗ-рдмреВрдБрдж')
рд╕рдВрдХрд▓рди рдкрд░рд┐рдпреЛрдЬрдирд╛ (': рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдПрдлрдПрд╕')
рд╕рдВрдХрд▓рди рдкрд░рд┐рдпреЛрдЬрдирд╛ (': рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдЬрд┐рдпреЛрдХреЛрдбрд░')
рд╕рдВрдХрд▓рди рдкрд░рд┐рдпреЛрдЬрдирд╛ (': рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдЫрд╡рд┐-рдлрд╕рд▓-рдкрд┐рдХрд░')
рд╕рдВрдХрд▓рди рдкрд░рд┐рдпреЛрдЬрдирд╛ (': рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рд╕рдВрд╕реНрдХрд░рдг-рдЬрд╛рдВрдЪ')
рд╕рдВрдХрд▓рди рдкрд░рд┐рдпреЛрдЬрдирд╛ (': рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдЪрд╛рд░реНрдЯ-рдЖрд╡рд░рдг')
рдХрдВрдкрд╛рдЗрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ (': рд░рд┐рдПрдХреНрдЯ-рдиреЗрдЯрд┐рд╡-рд╕реНрдкрд┐рдВрдХрд┐рдЯ')
рд╕рдВрдХрд▓рди рдкрд░рд┐рдпреЛрдЬрдирд╛ (': рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрд╢реА-svg')
рд╕рдВрдХрд▓рди рдкрд░рд┐рдпреЛрдЬрдирд╛ (': рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдорд╛рдирдЪрд┐рддреНрд░')
рдлрд╝рд╛рдЗрд▓ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВ (рдбреАрдЖрдИрдЖрд░: "libs", рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: ["*.jar"])
рд╕рдВрдХрд▓рди "com.androidред рд╕рдорд░реНрдерди: appcompat-v7 : 23.0.1"
рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВ "com.facebookред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛: рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ : +" // рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рд╕реЗ
}

// BUCK . рдХреЗ рд╕рд╛рде рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдПрдХ рдмрд╛рд░ рдЪрд▓рд╛рдПрдВ
// BUCK рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдХрдВрдкрд╛рдЗрд▓ рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рдХреЛ рдлреЛрд▓реНрдбрд░ рд▓рд┐рдм рдореЗрдВ рдбрд╛рд▓рддрд╛ рд╣реИ
рдХрд╛рд░реНрдп рдХреЙрдкреАрдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдпреЛрдЧреНрдпDepsToLibs(рдкреНрд░рдХрд╛рд░: рдХреЙрдкреА) {
рд╡рд┐рдиреНрдпрд╛рд╕ рд╕реЗредрд╕рдВрдХрд▓рди
'рд▓рд┐рдмрд╛рд╕' рдореЗрдВ
}

`android/app/src/main/java/com/binomysteryshopper/MainApplication.java`

рдкреИрдХреЗрдЬ com.binomysteryshopper;

android.app.Application рдЖрдпрд╛рдд рдХрд░реЗрдВ;

рдЖрдпрд╛рдд com.facebook.react.ReactApplication;
рдЖрдпрд╛рдд com.geektime.rnonesignalandroid.ReactNativeOneSignalPackage;
рдЖрдпрд╛рдд com.zmxv.RNSound.RNSoundPackage;
рдЖрдпрд╛рдд com.rnim.rn.audio.ReactNativeAudioPackage;
рдЖрдпрд╛рдд com.RNFetchBlob.RNFetchBlobPackage;
рдЖрдпрд╛рдд com.rnfs.RNFSPackage;
рдЖрдпрд╛рдд com.reactnative.ivpusic.imagepicker.PickerPackage;
рдЖрдпрд╛рдд io.xogus.reactnative.versioncheck.RNVersionCheckPackage;
рдЖрдпрд╛рдд com.github.wuxudong.rncharts.MPAndroidChartPackage;
рдЖрдпрд╛рдд com.react.rnspinkit.RNSpinkitPackage;
рдЖрдпрд╛рдд com.horcrux.svg.SvgPackage;
рдЖрдпрд╛рдд com.facebook.react.ReactNativeHost;
рдЖрдпрд╛рдд com.facebook.react.ReactPackage;
рдЖрдпрд╛рдд com.facebook.react.shell.MainReactPackage;
рдЖрдпрд╛рдд com.devfd.RNGeocoder.RNGeocoderPackage;
рдЖрдпрд╛рдд com.facebook.soloader.SoLoader;
рдЖрдпрд╛рдд com.airbnb.android.react.maps.MapsPackage;

рдЖрдпрд╛рдд java.util.Arrays;
рдЖрдпрд╛рдд java.util.List;

рдкрдмреНрд▓рд┐рдХ рдХреНрд▓рд╛рд╕ рдореЗрдирдПрдкреНрд▓реАрдХреЗрд╢рди рдПрдкреНрд▓реАрдХреЗрд╢рди рдЗрдореНрдкреНрд▓реАрдореЗрдВрдЯреНрд╕ рд░рд┐рдПрдХреНрдЯрдПрдкреНрд▓реАрдХреЗрд╢рди рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддрд╛ рд╣реИ {

рдирд┐рдЬреА рдЕрдВрддрд┐рдо ReactNativeHost mReactNativeHost = рдирдпрд╛ ReactNativeHost (рдпрд╣) {
@ рдУрд╡рд░рд░рд╛рдЗрдб
рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдмреВрд▓рд┐рдпрди getUseDeveloperSupport () {
рд╡рд╛рдкрд╕реА BuildConfig.DEBUG;
}

<strong i="13">@Override</strong>
protected List<ReactPackage> getPackages() {
  return Arrays.<ReactPackage>asList(
      new MainReactPackage(),
        new ReactNativeOneSignalPackage(),
        new RNSoundPackage(),
        new ReactNativeAudioPackage(),
        new RNFetchBlobPackage(),
        new RNFSPackage(),
        new PickerPackage(),
        new RNVersionCheckPackage(),
        new MPAndroidChartPackage(),
        new RNSpinkitPackage(),
        new RNGeocoderPackage(),
        new SvgPackage(),
        new MapsPackage()
  );
}

<strong i="14">@Override</strong>
protected String getJSMainModuleName() {
  return "index";
}

};

@ рдУрд╡рд░рд░рд╛рдЗрдб
рдкрдмреНрд▓рд┐рдХ рд░рд┐рдПрдХреНрдЯрдиреЗрдЯрд┐рд╡рд╣реЛрд╕реНрдЯ getReactNativeHost () {
рд╡рд╛рдкрд╕реА mReactNativeHost;
}

@ рдУрд╡рд░рд░рд╛рдЗрдб
рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╢реВрдиреНрдп рдСрдирдХреНрд░рд┐рдПрдЯ () {
рд╕реБрдкрд░.рдСрдирдХреНрд░рд┐рдПрдЯ ();
SoLoader.init (рдпрд╣, /* рдореВрд▓ рдПрдХреНрд╕реЛрдкреИрдХреЗрдЬ */ рдЕрд╕рддреНрдп);
}
}

`AndroidManifest.xml`

рдкреИрдХреЗрдЬ = "com.binomysteryshopper">









рдПрдВрдбреНрд░реЙрдЗрдб: minSdkVersion = "16"
android:targetSdkVersion="22" />

рдПрдВрдбреНрд░реЙрдЗрдб: рдирд╛рдо = "ред рдореБрдЦреНрдп рдЖрд╡реЗрджрди"
рдПрдВрдбреНрд░реЙрдЗрдб: рдЕрдиреБрдорддрд┐ рджреЗрдВрдмреИрдХрдЕрдк = "рд╕рдЪ"
рдПрдВрдбреНрд░реЙрдЗрдб: рд▓реЗрдмрд▓ = "@ рд╕реНрдЯреНрд░рд┐рдВрдЧ/рдРрдк_рдирд╛рдо"
android:icon="@mipmap/ic_launcher"
рдПрдВрдбреНрд░реЙрдЗрдб: рд▓рд╛рд░реНрдЬрд╣реЗрдк = "рд╕рдЪ"
android:theme="@style/AppTheme">

<activity
  android:name=".MainActivity"
  android:launchMode="singleTop"
  android:label="@string/app_name"
  android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
  android:screenOrientation="portrait"
  android:windowSoftInputMode="adjustResize"
  android:theme="@style/AppTheme">
    <intent-filter>
      <action android:name="android.intent.action.MAIN" />
      <action android:name="android.intent.action.DOWNLOAD_COMPLETE"/>
      <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    <intent-filter>
      <action android:name="android.intent.action.VIEW" />
      <category android:name="android.intent.category.DEFAULT" />
      <category android:name="android.intent.category.BROWSABLE" />
      <data android:scheme="binoshopper" />
    </intent-filter>
</activity>
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />


`my OneSignal init`

рдХрдВрдкреЛрдиреЗрдВрдЯрд╡рд┐рд▓рдорд╛рдЙрдВрдЯ () {
OneSignal.init(ONESIGNAL_APP_ID, {
kOSрд╕реЗрдЯрд┐рдВрдЧреНрд╕рдХреАрдСрдЯреЛрдкреНрд░реЙрдореНрдкреНрдЯ: рд╕рдЪ,
kOSSettingsKeyInAppLaunchURL: рдЕрд╕рддреНрдп,
kOSSSрд╕реЗрдЯрд┐рдВрдЧреНрд╕рдХреАрдкреНрд░реЙрдореНрдкреНрдЯрдЦреЛрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗрдкреБрд╢URL: рд╕рдЪ,
})
OneSignal.inFocusDisplaying(2)

OneSignal.addEventListener('received', this.onPushNotificationReceived)
OneSignal.addEventListener('opened', this.onPushNotificationOpened)

}

рдХрдВрдкреЛрдиреЗрдВрдЯрд╡рд┐рд▓рдЕрдирдорд╛рдЙрдВрдЯ () {
OneSignal.removeEventListener ('рдкреНрд░рд╛рдкреНрдд', this.onPushNotificationReceived)
OneSignal.removeEventListener('opened', this.onPushNotificationOpened)
}

onPushNotificationReceived (рдЕрдзрд┐рд╕реВрдЪрдирд╛) {
рдЕрд▓рд░реНрдЯ.рдЕрд▓рд░реНрдЯ ('рдСрди рд░рд┐рд╕реАрд╡реНрдб') // рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП
}

onPushNotificationOpened(openResult) {
рдЕрд▓рд░реНрдЯ.рдЕрд▓рд░реНрдЯ ('рдСрди рдУрдкрди') // рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП
}
```

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

@sofianegargouri рдпрд╣рд╛рдВ рдкреАрдЖрд░ рд╣реИ: https://github.com/geektimecoil/react-native-onesignal/pull/592

рд╣рдо рдХрд▓ рдпрд╛ рдкрд░рд╕реЛрдВ рдПрдХ рдЕрдкрдбреЗрдЯ рдЬрд╛рд░реА рдХрд░реЗрдВрдЧреЗред

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

IOS рдкрд░ рдпрд╣ рдПрдХрджрдо рд╕рд╣реА рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореИрдВ рдПрдВрдбреНрд░реЙрдЗрдб рд▓реЙрдЧрдХреИрдЯ рд╕реЗ рд▓реЙрдЧ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдЕрд╕рд▓реА рдбрд┐рд╡рд╛рдЗрд╕ рдирд╣реАрдВ рд╣реИред рдореИрдВ рдЕрдкрдиреЗ рджреВрд░ рдХреЗ рджреЛрд╕реНрдд рдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ TeamViewer рдХреЗ рдХрд╛рд░рдг рдкрд░реАрдХреНрд╖рдг рдХрд░ рд░рд╣рд╛ рдерд╛ред

рдореИрдВрдиреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ OneSignal.setLogLevel(0, 6) рдХреА рднреА рдХреЛрд╢рд┐рд╢ рдХреАред рд▓реЗрдХрд┐рди рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рдорд┐рд▓реА, рд╕рднреА рдЕрдиреБрд░реЛрдз рд╕рдлрд▓ рд╣реБрдП, рдХреЗрд╡рд▓ рдИрд╡реЗрдВрдЯ рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рд╣реБрдПред

рдирдорд╕реНрддреЗ @ Ble3k , рд╣рдо рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдПрдХ рдирдП рд╕реНрдкрдВрджрди рдПрд╕рдбреАрдХреЗ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдлреА рд╡реНрдпрд╕реНрдд рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЕрднреА рддрдХ рдЖрдкрдХреЗ рдореБрджреНрджреЗ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдХрд▓ рдЬрд╛рдВрдЪ рдХрд░реВрдВрдЧрд╛ рдФрд░ рдЬрд▓реНрдж рд╣реА рдЖрдкрд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░реВрдВрдЧрд╛, рджреЗрд░реА рдХреЗ рд▓рд┐рдП рдХреНрд╖рдорд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ!

рдирдорд╕реНрддреЗ,

рдмрд╕ рдпрд╣ рдХрд╣рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдореИрдВ рдПрдХ рджреЗрд╡ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ 3.2.5 рдкрд░ рд╡рд╣реА рд╡реНрдпрд╡рд╣рд╛рд░ рджреЗрдЦрддрд╛ рд╣реВрдВред рдЕрдЬреАрдм рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ рдпрд╣ рдХреБрдЫ рджрд┐рди рдкрд╣рд▓реЗ рдХрд╛рдо рдХрд░рддрд╛ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдХреЗрдВрджреНрд░рд┐рдд рдкреБрд╢ рдЗрди-рдРрдк рдЯреЛрд╕реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рдореБрдЭреЗ рдпрд╛рдж рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЗрдирдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдерд╛ рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ред

рдореИрдВ рдЖрдЧреЗ рдХреА рдЬрд╛рдВрдЪ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╣рдордиреЗ рдРрдк рдХреЗрдВрджреНрд░рд┐рдд рд╣реЛрдиреЗ рдкрд░ рднреА рд╕рд╛рдорд╛рдиреНрдп рдкреБрд╢ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди рдкрд░ рдЬрд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ

@ Nightsd01 Thx, рдЖрдкрдХреА рдЬрд╛рдБрдЪ рдХрд╛ рдЗрдВрддрдЬрд╝рд╛рд░ рд░рд╣реЗрдЧрд╛ред

рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рд╕реВрдЪрдирд╛рдПрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рджреЗрд░реА рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝ рд░рд╣рд╛ рд╣реИ, рдореЗрд░реЗ рдПрдВрдбреНрд░реЙрдЗрдб рдлреЛрди рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ 30-40 рдорд┐рдирдЯ рдХреЗ рдмрд╛рдж рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдкреНрд░рд╛рдкреНрдд рд╣реБрдИ, рдХрдИ рдмрд╛рд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛

рдЗрд╕ рдкрд░ рдХрд┐рд╕реА рднреА рдЕрджреНрдпрддрди? рдореБрдЭреЗ рдПрдВрдбреНрд░реЙрдЗрдб рдбрд┐рд╡рд╛рдЗрд╕ (рд╕реИрдорд╕рдВрдЧ рдЧреИрд▓реЗрдХреНрд╕реА рдПрд╕ 7) рдкрд░ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред

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

рдХреНрдпрд╛ рдХрд┐рд╕реА рдХреЛ рдШрдЯрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рд╣реИ (рдкреНрд░рд╛рдкреНрдд, рдЦреЛрд▓рд╛ рдЧрдпрд╛) рдкреБрдирдГ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рджреЗрд╢реА рдПрдВрдбреНрд░реЙрдЗрдб рдРрдк рдХреЛ рдбрдмрд▓ рджрдмрд╛рдХрд░, рдпрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдкреБрдирд░рд╛рд░рдВрдн рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд┐рдХрд╛рд▓ рджрд┐рдпрд╛ рдирд╣реАрдВ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

@ackosumane рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХреНрд╕рдкреЛ рдФрд░ Updates.reload() рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдкрдиреЗ рджреЗрд╡ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдореЗрдВ рдЕрдХреНрд╕рд░ рдХрд░рддрд╛ рд╣реВрдВред

рдФрд░ рддреБрдо рд╕рд╣реА рд╣реЛ:

  • рдореИрдВ рдкрд╣рд▓реЗ рдРрдк рд╕реНрдЯрд╛рд░реНрдЯ рдкрд░ рдХреЙрд▓рдмреИрдХ рдХреЛ рдирд┐рдХрд╛рд▓ рдкрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВ
  • рдореБрдЭреЗ рдкрд╣рд▓реЗ рдРрдк рд░реАрд▓реЛрдб рдХреЗ рдмрд╛рдж рдХреЙрд▓рдмреИрдХ рдирд┐рдХрд╛рд▓ рджрд┐рдП рдЧрдП рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣реЗ рд╣реИрдВ

@ Nightsd01 рддреЛ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ OneSignal RN Android рдПрдХреАрдХрд░рдг рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдРрдк рд░реАрд▓реЛрдб рдХреЛ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЙрддрдирд╛ рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рдирд╣реАрдВ рд╣реИ рдЬрд┐рддрдирд╛ рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдордп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдРрдк рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдРрд╕реЗ рдЙрддреНрдкрд╛рджрди рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдРрдк рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд░реЗ (рдУрд╡рд░рдПрдпрд░ рдЕрдкрдбреЗрдЯ рдЬреИрд╕реЗ рдПрдХреНрд╕рдкреЛ/рдХреЛрдбрдкрд╢, рдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд▓реЙрдЧрдЖрдЙрдЯ?) рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдкреБрдирдГ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдзрдХреНрдХрд╛ рдЯреВрдЯрд╛ рдирд╣реАрдВ рд╣реИ;)

@ Nightsd01 рдирдорд╕реНрддреЗ, рдХреЛрдИ рдЕрдкрдбреЗрдЯ?

рдирдорд╕реНрддреЗ, рдореБрдЭреЗ рднреА рдЗрд╕реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝ рд░рд╣рд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд╛рдзрд╛рди ???

рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдПрдХ рдЕрджреНрдпрддрди рдХреЗ рд░реВрдк рдореЗрдВ: рд╣рдо рдЕрдЧрд▓реЗ рдЕрджреНрдпрддрди рдореЗрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ!

@ Nightsd01 рдХреЛрдИ рддрд╛рд░реАрдЦ? рдХреНрдпрд╛ рдХреЛрдИ рд╢рд╛рдЦрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдлрд┐рдХреНрд╕ рдХреЗ рд╕рд╛рде рдлреЛрд░реНрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

@sofianegargouri рдпрд╣рд╛рдВ рдкреАрдЖрд░ рд╣реИ: https://github.com/geektimecoil/react-native-onesignal/pull/592

рд╣рдо рдХрд▓ рдпрд╛ рдкрд░рд╕реЛрдВ рдПрдХ рдЕрдкрдбреЗрдЯ рдЬрд╛рд░реА рдХрд░реЗрдВрдЧреЗред

рдзрдиреНрдпрд╡рд╛рдж @ Nightsd01 , рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдлрд┐рдХреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдирдИ npm рд░рд┐рд▓реАрдЬрд╝ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдЬреЛ рдХреЛрдИ рднреА рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ, рдЙрд╕рдХреЗ рд▓рд┐рдП рдорд╛рд╕реНрдЯрд░ рдХрд╛ рдХреЛрдб рдЕрдм рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред

рдмрд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд▓рд╛рдПрдБ:

npm git+ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ https://github.com/geektimecoil/react-native-onesignal#master --save

@eabuslaiman30 рдЕрднреА рднреА рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рдКрдкрд░ рдмрддрд╛рдпрд╛ рд╣реИ, рдореИрдВ git+ https://github.com/geektimecoil/react-native-onesignal#master рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдЕрднреА рднреА рдПрдВрдбреНрд░реЙрдЗрдб рдореЗрдВ рдХреЛрдИ рднреА рдШрдЯрдирд╛ рдЯреНрд░рд┐рдЧрд░ рдирд╣реАрдВ рд╣реБрдИ рд╣реИред рдХреЛрдИ рднреА рд╕реБрдЭрд╛рд╡ рджреЗ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреМрди рд╕рд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдерд┐рд░ рд╣реИ? рдкрд╣рд▓реЗ рдореИрдВ 3.0.5 рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛ рдЬреЛ рдРрдк рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб 8.0 (рдУрд░реЗрдУ) рдореЗрдВ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рд╣реБрдИ рд╣реИред рдЙрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИред

@eabuslaiman30 @ Nightsd01 рдореИрдВрдиреЗ рднреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ @shahchaitanya рдХреА рддрд░рд╣ рдореИрдВ рдЕрднреА рднреА рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдореИрдВрдиреЗ рдПрдХ рдкреАрдЖрд░ рдмрдирд╛рдпрд╛ рд╣реИ рдЬреЛ рд╢реНрд░реЛрддрд╛рдУрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕рджрд╕реНрдпрддрд╛ рдирд╣реАрдВ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдареАрдХ рдХрд░рддрд╛ рд╣реИ: https://github.com/geektimecoil/react-native-onesignal/pull/593

@ рд╢рд╛рд╣рдЪреИрддрдиреНрдп рдЖрдк рдЗрд╕ рдЫреЛрдЯреЗ рд╕реЗ рдмрджрд▓рд╛рд╡ рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдиреАрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЬрд╛рд╡рд╛ рдХреЛрдб рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рд╕реЗ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╣рд▓ рд╣реЛ рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред

рдЕрд░реЗ @slorber рдЖрдкрдХрд╛ рд╕рдорд╛рдзрд╛рди рдУрдкрди рдФрд░ рдСрди рд░рд┐рд╕реАрд╡реНрдб рд╡рд┐рдзрд┐ рдкрд░ рдЯреНрд░рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди onIds рдИрд╡реЗрдВрдЯ рдЕрднреА рддрдХ рдЯреНрд░рд┐рдЧрд░ рдирд╣реАрдВ рд╣реБрдЖ рд╣реИ? рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЪреЗрдХ рдХрд┐рдпрд╛ рдХрд┐ рдЖрдкрдХреЗ рдХреЛрдб рдореЗрдВ onIds рдИрд╡реЗрдВрдЯ рдЯреНрд░рд┐рдЧрд░ рд╣реБрдЖ рд╣реИ рдпрд╛ рдирд╣реАрдВ? рдореИрдВ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ рдХрд┐ рд╕реНрдЯрд┐рдХ рдЯреВ рд░рд┐рдПрдХреНрдЯ-рдиреЗрдЯрд┐рд╡-рд╡рдирд╕рд┐рдЧреНрдирд▓ рд╡рд░реНрдЬрди 3.0.5 рдЬрдм рддрдХ рд▓реЗрдЯреЗрд╕реНрдЯ рд╡рд░реНрдЬрди рд╕реНрдерд┐рд░ рдирд╣реАрдВ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

рдореИрдВрдиреЗ рдЕрднреА рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рд╕рднреА 3 рдХреЙрд▓рдмреИрдХ рдРрдк рдкрд░ рдЖрдЧ рд▓рдЧрддреЗ рд╣реИрдВ, рдореЗрд░реЗ рд▓рд┐рдП рдСрдирдЖрдИрдбреНрд╕ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВред

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ onIds рдиреЗ рдЖрдЧ рдирд╣реАрдВ рд▓рдЧрд╛рдИ рддреЛ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХреЛрдИ рдмрдбрд╝реА рдмрд╛рдд рдирд╣реАрдВ рд╣реЛрдЧреА рдХреНрдпреЛрдВрдХрд┐ рдЖрдИрдбреА рдХреЗ рдкреБрдирд░рд╛рд░рдВрдн рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдкрд╣рд▓реЗ рд╣реА рдореЗрд░реЗ рдмреИрдХрдПрдВрдб рдкрд░ рднреЗрдЬ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

@slorber рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рдмрдбрд╝реА рдмрд╛рдд рд╣реИ рдЕрдЧрд░ рдХрд┐рд╕реА рдРрдк рдХреЛ рд░реАрд╕реНрдЯрд╛рд░реНрдЯ рдХрд░рддреЗ рд╕рдордп onIds рдореЗрдВ рдЖрдЧ рдирд╣реАрдВ рд▓рдЧреАред рдореИрдВ рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░рдг рдФрд░ рдмреИрдХрдПрдВрдб рдореЗрдВ рднреА idToken рд╕реНрдЯреЛрд░ рдХрд░рддрд╛ рд╣реВрдВред рд╕рд╛рдЗрдирдЖрдЙрдЯ рдкрд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рдмреИрдХрдПрдВрдб рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдФрд░ рдХрд┐рд╕реА рднреА рддрд░рд╣ рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░рдг рд╕рд╛рдлрд╝ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдЖрдИрдбреА рдЯреЛрдХрди рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдпрджрд┐ рдЖрдИрдбреА рд╣рд░ рдмрд╛рд░ рдЖрдЧ рдирд╣реАрдВ рд▓рдЧрддреА рд╣реИред рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ 3.2.0 (рдореЗрдЬрд░ рдЕрдкрдбреЗрдЯ) рддрдХ, рдРрдк рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рддреЗ рд╕рдордп рд╣рд░ рдмрд╛рд░ onIds рдЪрд╛рд▓реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдЕрд░реЗ рджреЛрд╕реНрддреЛрдВ @slorber @shahchaitanyaред рдореБрдЭреЗ рдЕрдкрдиреЗ рдХреБрдЫ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛрдб рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдиреЗ рджреЗрдВ, рд╢рд╛рдпрдж рдпрд╣ рдЖрдкрдХреА рдорджрдж рдХрд░реЗрдЧрд╛ (рдореБрдЭреЗ рдХреЛрдб рдХреА рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпрд╛рдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рдЬреЛ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рдереЗ)ред

OneSignal.init('YOUR_APP_ID');
OneSignal.addEventListener('ids', this.onIds);
OneSignal.configure();

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореИрдВ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ "init" рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рдерд╛ рдХреНрдпреЛрдВрдХрд┐ рдЖрд░рдВрднреАрдХрд░рдг рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЬрд╛рд╡рд╛ рдХреЛрдб рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рдерд╛ред

рд╕рд╛рде рд╣реА, рдореИрдВ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ npm install git+https://github.com/geektimecoil/react-native-onesignal\#master --save рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдореБрдЭреЗ рддреАрди рдШрдЯрдирд╛рдПрдВ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рд╣реЛ рд░рд╣реА рд╣реИрдВ (рдСрдирдЖрдИрдбреНрд╕, рдкреНрд░рд╛рдкреНрдд, рдЦреЛрд▓рд╛ рдЧрдпрд╛)ред

рдореИрдВ рднреА init рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдпрд╛рдж рд░рдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдИрдбреА рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереА рдЬрдм рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХреЛ рдХреЙрд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рдерд╛

    OneSignal.init(OneSignalAppId, OneSignalSettings);
    OneSignal.addEventListener('received', onReceived);
    OneSignal.addEventListener('opened', onOpened);
    OneSignal.addEventListener('ids', onIds);
    // Quickfix for ids event not firing!
    // See https://github.com/geektimecoil/react-native-onesignal/issues/200#issuecomment-288579373
    OneSignal.configure();
    OneSignal.inFocusDisplaying(inFocusDisplaying);
    OneSignal.setSubscription(true);
    OneSignal.syncHashedEmail(email);
    OneSignal.sendTags(tags);

@slorber @eabuslaiman30 рдЕрдм рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рдореИрдВ OneSignal.configure() рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдЪреВрдХ рдЧрдпрд╛ред рдкрд╣рд▓реЗ рдореБрдЭреЗ рдСрдирдЖрдИрдбреАрдПрд╕ рд╢реНрд░реЛрддрд╛ рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рдереАред рдЕрд░реЗ @slorber рдЕрдм рдореБрдЭреЗ рдЙрд╕ рдкреИрдЪ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЖрдкрдиреЗ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИред @eabuslaiman30 рд╕рдорд╛рдзрд╛рди рдмрд┐рд▓реНрдХреБрд▓ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред

рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣реА @shahchaitanya , рдореБрдЭреЗ рдЦреБрд╢реА рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рдо рдХрд░ рдЧрдпрд╛!

рд╣рдо рдЬрд▓реНрдж рд╣реА рдЗрд╕ рдлрд┐рдХреНрд╕ рд╕рд╣рд┐рдд рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рд╕рд╛рдордиреЗ рдЖрдПрдВрдЧреЗред

рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдПрдВрдбреНрд░реЙрдЗрдб рдПрд╕рдбреАрдХреЗ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдореБрджреНрджрд╛ рддрдп рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдЕрдкрдбреЗрдЯ рдЬрд╛рд░реА рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЙрд╕ рдкреАрдЖрд░ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдЖрдкрдХреЗ рдзреИрд░реНрдп рдХреЗ рд▓рд┐рдП рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рдж! рдЗрд╕ рдмреАрдЪ рдЖрдк рдмрд╕ рдорд╛рд╕реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

@shahchaitanya ids рдИрд╡реЗрдВрдЯ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдЖрдИрдбреА рдпрд╛ OneSignal рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд╕рд╛рде рдкреБрд╢ рдЯреЛрдХрди рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдирд╛ рд╣реИред рдпрджрд┐ рд╡реЗ рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдЖрдкрдХреЗ рдРрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ рдирд╣реАрдВ рдмрджрд▓реЗ рд╣реИрдВ, рддреЛ рдИрд╡реЗрдВрдЯ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рд╣реЛрдВрдЧреЗред

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

рдЖрдк рдЙрдиреНрд╣реЗрдВ configure() рдкрд░ рдХреЙрд▓ рдХрд░рдХреЗ рдЖрдЧ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ред OneSignal.getPermissionSubscriptionState() рдкрд░ рдХреЙрд▓ рдХрд░рдирд╛ рдПрдХ рдЕрдзрд┐рдХ рд╕реБрдВрджрд░ рд╕рдорд╛рдзрд╛рди рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА OneSignal ID рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧреА

рдореБрджреНрджрд╛ рдЕрдм 3.2.6 (рдХрдИ рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде) рдореЗрдВ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЖрдкрдХреЗ рдзреИрд░реНрдп рдХреЗ рд▓рд┐рдП рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рдж!

рдирдорд╕реНрддреЗ! рдореБрдЭреЗ рдЕрднреА рднреА рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдорд┐рд▓ рд░рд╣реА рд╣реИ (рдЖрдИрдУрдПрд╕ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЪреЗрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред

  • рдлреЛрдХрд╕ рдореЗрдВ рдРрдк - рдУрдкрди рдЗрд╡реЗрдВрдЯ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдХреНрд░рд┐рдп рд╣реЛрддрд╛ рд╣реИ
  • рдРрдк рдЦрд╛рд░рд┐рдЬ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ - рдЦреЛрд▓рд╛ рдЧрдпрд╛ рдИрд╡реЗрдВрдЯ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдХреНрд░рд┐рдп рд╣реЛрддрд╛ рд╣реИ
  • рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рдРрдк - рдЦреБрд▓реА рд╣реБрдИ рдШрдЯрдирд╛ рдХрднреА рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ

рдореИрдВ 3.2.6 рд░рд┐рд▓реАрдЬ рдкрд░ рд╣реВрдВ рдФрд░ рдореЗрд░рд╛ рдЗрд╡реЗрдВрдЯ рд╢реНрд░реЛрддрд╛ рд╕реЗрдЯ рдЕрдк рд╣реИ...

componentDidMount() {

        OneSignal.init(APP_ID, { kOSSettingsKeyAutoPrompt: true });

        OneSignal.addEventListener('ids', this.onIds);

        OneSignal.addEventListener('opened', (result) => alert('text'));

        OneSignal.inFocusDisplaying(2);

        // OneSignal.setLogLevel(0, 6);

        OneSignal.configure();
}

componentWillUnmount() {
    OneSignal.removeEventListener('ids', this.onIds);
    OneSignal.removeEventListener('opened', (result) => alert('text'));
}

@joefazz рдореИрдВ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реВрдВ, рдХреНрдпрд╛ рдЖрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП yarn remove react-native onesignal рдФрд░ yarn add react-native-onesignal рдЪрд▓рд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ 3.2.6 рдореЗрдВ рдЕрдкрдбреЗрдЯ рд╣реЛ рдЧрдпрд╛ рд╣реИ? рдЕрдЧрд░ рдРрд╕рд╛ рд╣реИ рддреЛ рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓реВрдВрдЧрд╛ред

рдХреНрдпрд╛ рд╕рдорд╕реНрдпрд╛ рдЖрдкрдХреЗ рд▓рд┐рдП 100% рд╕рдордп рдкрд░ рд╣реЛрддреА рд╣реИ?

рдХреНрдпрд╛ рдЖрдк рд╣рдорд╛рд░реЗ рдбреЗрдореЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИрдВ?

рдпрд╣ 100% рдмрд╛рд░ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рд╣рдЯрд╛рдиреЗ рдФрд░ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж рднреА рд╣реЛрддрд╛ рд╣реИред

рдореИрдВ рдЖрдЬ рдХреБрдЫ рд╕рдордп рдмрд╛рдж рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛ рдФрд░ рдореИрдВ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рдХреЛ рдЕрдкрдиреЗ рдирд┐рд╖реНрдХрд░реНрд╖реЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реВрдВрдЧрд╛ред

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдпрд╣ рдХрд┐рддрдирд╛ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрд┐рд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рдореИрдВ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд╣рдо рд╕рдВрд╕реНрдХрд░рдг 3.0.9 рдкрд░ рдереЗ рдФрд░ рд╕рднреА рддрд░рд╣ рд╕реЗ 3.2.6 рддрдХ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдП рдЧрдП рдереЗред рдореИрдВрдиреЗ рд░рд┐рдПрдХреНрдЯ-рдиреЗрдЯрд┐рд╡ рдЕрдирд▓рд┐рдВрдХ рдЪрд▓рд╛рдпрд╛ рдФрд░ рдлрд┐рд░ рд░реАрд▓рд┐рдВрдХ рдХрд┐рдпрд╛, рдЖрдИрдУрдПрд╕ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рдФрд░ OneSignal.init () рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдореВрд▓ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣реБрдЖ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдм рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ 100% рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЖрдкрдХреА рдорджрдж рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдПрдХ рдмрдВрдж рдореБрджреНрджреЗ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИ

рдЕрдЧрд░ рдХреЛрдИ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ 3.2.6 рдпрд╛ рдЙрдЪреНрдЪрддрд░ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рджреЗрдЦрддрд╛ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВред

@joefazz рдЗрд╕реЗ рд╕реБрдирдХрд░ рдЦреБрд╢реА рд╣реБрдИ! рдореИрдВрдиреЗ рдЙрд╕ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд┐рдпрд╛ рдЬреЛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрдирд╛ рд▓реЗрдХрд┐рди рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рджреМрдбрд╝ рдХреА рд╕реНрдерд┐рддрд┐ рдЪрд▓ рд░рд╣реА рд╣реЛред рдпрджрд┐ рдЖрдк рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рджреЗрдЦрддреЗ рд╣реИрдВ рддреЛ рдХреГрдкрдпрд╛ рдПрдХ рдирдпрд╛ рдЕрдВрдХ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВ

рдореЗрд░реЗ рдРрдк рдореЗрдВ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдореЗрд░реЗ рдореБрджреНрджреЛрдВ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ @joefazz . рджреНрд╡рд╛рд░рд╛ рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ

рд╣рд╛рдп рд╕рдм, рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИ OneSignal.addEventListener('opened', (result) => console.log(result)); рдРрдк рдХреЗ рджреВрд╕рд░реЗ рд▓реЙрдиреНрдЪ рд╕реЗ рдирд┐рдХрд╛рд▓ рдирд╣реАрдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдПрдХ рдкреГрд╖реНрдарднреВрдорд┐ рдореЛрдб рдореЗрдВ рдкрд╣рд▓реА рдЕрдзрд┐рд╕реВрдЪрдирд╛ 'рдЦреЛрд▓рд╛' рдШрдЯрдирд╛ рд╣реЛ рд░рд╣реА рд╣реИ, рдРрдк рдХреЛ рдорд╛рд░реЗрдВ => рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ => 'рдЦреЛрд▓рд╛ рдЧрдпрд╛' рдлрд┐рд░ рд╕реЗ рдЖрдЧ рдирд╣реАрдВ рд▓рдЧреЗрдЧрд╛ред

рдХреЗрд╡рд▓ android - 8 verison
рдХреЗрд╡рд▓ рджреВрд╕рд░реА рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреЗ рдмрд╛рдж рдЬрдм рдРрдк рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рдерд╛
рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдПрдХ рд╕рдВрдХреЗрдд - 3.9.1

рдореБрдЭреЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИред рдРрдк рдХрд╛ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рд╣реЛрдиреЗ рдкрд░ рдУрдкрди рдХреЙрд▓ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдХреНрдпрд╛ рдХреЛрдИ рдлрд┐рдХреНрд╕ рд╣реИ?

@kostiantyn-solianyk @shrolr ,
рддреЛ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, 'рдЦреЛрд▓рд╛ рдЧрдпрд╛' рдИрд╡реЗрдВрдЯ рджреВрд╕рд░реА рдмрд╛рд░ рдПрдВрдбреНрд░реЙрдЗрдб 8 рдореЗрдВ рдРрдк рдЦреЛрд▓реЗ рдЬрд╛рдиреЗ рдкрд░ рд╕рдХреНрд░рд┐рдп рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред

рдЖрдиреЗ рд╡рд╛рд▓реА рдкреНрд░рдореБрдЦ рд░рд┐рд▓реАрдЬ (рдЕрдм рдмреАрдЯрд╛ рдореЗрдВ) рдореЗрдВ рдкрд╛рд░рдВрдкрд░рд┐рдХ рдШрдЯрдирд╛рдУрдВ рдХреЛ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдореИрдВ рдмреАрдЯрд╛ рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВред

рдпрджрд┐ рд╕рдорд╕реНрдпрд╛ рдмрдиреА рд░рд╣рддреА рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдПрдХ рдирдпрд╛ рдЕрдВрдХ рдЦреЛрд▓рдХрд░ рд╣рдореЗрдВ рдмрддрд╛рдПрдВред

рдЪрд┐рдпрд░реНрд╕

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

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

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

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

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

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

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