1. рдпрджрд┐ рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рднрд░рддреЗ рд╣реИрдВ рддреЛ рд╣рдо рдЬрд╛рдВрдЪ рдХреЗ рдмрд┐рдирд╛ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ 2. рдХрд┐рд╕реА рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрджрд╛ рдореБрджреНрджреЛрдВ рдХреА рдЦреЛрдЬ рдХрд░реЗрдВ: https://goo.gl/pspQNY 3. рд╣рдорд╛рд░реЗ рд╕рд╛рдорд╛рдиреНрдп рдореБрджреНрджреЛрдВ рдХреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рджреЗрдЦреЗрдВ: https://goo .gl/BDcfZZ 4. рд╣рдорд╛рд░реЗ рдпреЛрдЧрджрд╛рди рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢ рджреЗрдЦреЗрдВ: https://goo.gl/h19DnX
рд╡рд┐рд╡рд░рдг:
(рдЖрдкрдХрд╛ рд╡рд┐рд╡рд░рдг рдпрд╣рд╛рдБ)
рд╡рд╛рддрд╛рд╡рд░рдг
System:
OS: macOS 10.14.6
CPU: (6) x64 Intel(R) Core(TM) i5-8500B CPU @ 3.00GHz
Memory: 6.63 GB / 32.00 GB
Shell: 5.3 - /bin/zsh
Binaries:
Node: 10.16.1 - ~/.nvm/versions/node/v10.16.1/bin/node
Yarn: 1.17.3 - /usr/local/bin/yarn
npm: 6.9.0 - ~/.nvm/versions/node/v10.16.1/bin/npm
SDKs:
iOS SDK:
Platforms: iOS 13.0, DriverKit 19.0, macOS 10.15, tvOS 13.0, watchOS 6.0
Android SDK:
API Levels: 23, 25, 27, 28, 29
Build Tools: 25.0.2, 25.0.3, 28.0.3, 29.0.1, 29.0.2
System Images: android-28 | Google APIs Intel x86 Atom, android-29 | Google APIs Intel x86 Atom
IDEs:
Android Studio: 3.5 AI-191.8026.42.35.5791312
Xcode: 11.0/11A419c - /usr/bin/xcodebuild
npmPackages:
react: 16.8.6 => 16.8.6
react-native: 0.60.5 => 0.60.5
[email protected]
рдПрдВрдбреНрд░реЙрдЗрдб рдРрдк рд╕реНрдЯрд╛рд░реНрдЯ рдкрд░ рдореЗрд░рд╛ рдРрдк рдмрд┐рдирд╛ рдХрд┐рд╕реА рдореИрд╕реЗрдЬ рдпрд╛ рд╡рд┐рдВрдбреЛ рдХреЗ рдХреНрд░реИрд╢ рд╣реЛ рд░рд╣рд╛ рд╣реИред
adb logcat
:
09-23 17:06:37.900 8388 8388 D AndroidRuntime: VM рдХреЛ рдмрдВрдж рдХрд░рдирд╛
09-23 17:06:37.901 8388 8388 рдИ Androidрд░рдирдЯрд╛рдЗрдо: рдШрд╛рддрдХ рдЕрдкрд╡рд╛рдж: рдореБрдЦреНрдп
09-23 17:06:37.901 8388 8388 рдИ Androidрд░рдирдЯрд╛рдЗрдо: рдкреНрд░рдХреНрд░рд┐рдпрд╛: com.macroactive, рдкреАрдЖрдИрдбреА: 8388
09-23 17:06:37.901 8388 8388 E AndroidRuntime: java.lang.NoClassDefFoundError: рдХрд╛ рд╡рд┐рдлрд▓ рд╕рдорд╛рдзрд╛рди: Lcom/google/android/gms/common/internal/zzbq;
09-23 17:06:37.901 8388 8388 рдИ Androidрд░рдирдЯрд╛рдЗрдо: com.google.firebase.provider.FirebaseInitProvider.attachInfo(рдЕрдЬреНрдЮрд╛рдд рд╕реНрд░реЛрдд) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: android.app.ActivityThread.installProvider(ActivityThread.java:5153) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: android.app.ActivityThread.installContentProviders (ActivityThread.java:4748) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: android.app.ActivityThread.handleBindApplication(ActivityThread.java:4688) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: android.app.ActivityThread.-wrap1(ActivityThread.java) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: android.app.ActivityThread$H.handleMessage(ActivityThread.java:1405) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: android.os.Handler.dispatchMessage(Handler.java:102) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: android.os.Looper.loop(Looper.java:148) рдкрд░
09-23 17:06:37.901 8388 8388 рдИ Androidрд░рдирдЯрд╛рдЗрдо: android.app.ActivityThread.main(ActivityThread.java:5417) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: java.lang.reflect.Method.invoke (рдореВрд▓ рд╡рд┐рдзрд┐) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) рдкрд░
09-23 17:06:37.901 8388 8388 рдИ Androidрд░рдирдЯрд╛рдЗрдо: com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: рдЗрд╕рдХреЗ рдХрд╛рд░рдг: java.lang.ClassNotFoundException: рдкрде рдкрд░ "com.google.android.gms.common.internal.zzbq" рд╡рд░реНрдЧ рдирд╣реАрдВ рдорд┐рд▓рд╛: DexPathList[[zip file "/data/app/com.macroactive-2/base.apk"],nativeLibraryDirectories=[/data/app/com.macroactive-2/lib/arm, /data/app/com.macroactive-2/base.apk !/lib/armeabi-v7a, /рд╡рд┐рдХреНрд░реЗрддрд╛/lib, /system/lib]]
09-23 17:06:37.901 8388 8388 рдИ Androidрд░рдирдЯрд╛рдЗрдо: dalvik.system.BaseDexClassLoader.findClass (BaseDexClassLoader.java:56) рдкрд░
09-23 17:06:37.901 8388 8388 рдИ Androidрд░рдирдЯрд╛рдЗрдо: java.lang.ClassLoader.loadClass(ClassLoader.java:511) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: java.lang.ClassLoader.loadClass(ClassLoader.java:469) рдкрд░
09-23 17:06:37.901 8388 8388 рдИ Androidрд░рдирдЯрд╛рдЗрдо: ... 12 рдФрд░
09-23 17:06:37.901 8388 8388 рдИ Androidрд░рдирдЯрд╛рдЗрдо: рджрдмрд╛ рд╣реБрдЖ: java.lang.ClassNotFoundException: com.google.android.gms.common.internal.zzbq
09-23 17:06:37.901 8388 8388 E AndroidRuntime: java.lang.Class.classForName(Native Method) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: java.lang.BootClassLoader.findClass(ClassLoader.java:781) рдкрд░
09-23 17:06:37.901 8388 8388 E AndroidRuntime: java.lang.BootClassLoader.loadClass(ClassLoader.java:841) рдкрд░
09-23 17:06:37.901 8388 8388 рдИ Androidрд░рдирдЯрд╛рдЗрдо: java.lang.ClassLoader.loadClass(ClassLoader.java:504) рдкрд░
09-23 17:06:37.901 8388 8388 рдИ Androidрд░рдирдЯрд╛рдЗрдо: ... 13 рдЕрдзрд┐рдХ
09-23 17:06:37.901 8388 8388 E AndroidRuntime: рдЗрд╕рдХреЗ рдХрд╛рд░рдг: java.lang.NoClassDefFoundError: рдмреВрдЯ рдХреНрд▓рд╛рд╕ рд▓реЛрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдХреНрд▓рд╛рд╕ рдирд╣реАрдВ рдорд┐рд▓рд╛; рдХреЛрдИ рд╕реНрдЯреИрдХ рдЯреНрд░реЗрд╕ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ
рдЗрд╕реЗ рдирдП рдРрдк рдкрд░ рдкреБрди: рдкреЗрд╢ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╢рд╛рдпрдж рдпрд╣ рдХрд┐рд╕реА рднреА рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред "com/google/android/gms/common/internal/zzbq" рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдПрдВ рдорд┐рд▓реАрдВ, рд▓реЗрдХрд┐рди рдХреЛрдИ рдЙрдкрдпреЛрдЧреА рдирд╣реАрдВ рдорд┐рд▓рд╛ред
рдмрддрд╛рдУ рдХрд╣рд╛рдБ рд╕реЗ рд╢реБрд░реВ рдХрд░реВрдБ?
рдЗрд╕реА рддрд░рд╣, рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди рдорд┐рд▓рдиреЗ рдкрд░ рдореЗрд░рд╛ рдРрдк рднреА рдХреНрд░реИрд╢ рд╣реЛ рд░рд╣рд╛ рд╣реИред рдореИрдВрдиреЗ рдЗрд╕реЗ рдПрдордЖрдИ рдиреЛрдЯ 4 (рдПрдВрдбреНрд░реЙрдЗрдб 7.0, рдЖрд░рдПрди 0.60.3, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдПрдХ рд╕рд┐рдЧреНрдирд▓ 3.3.3) рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ред
@SAHITYASAI рдХреНрдпрд╛ рдЖрдк adb logcat
рджрд┐рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВ?
рдЬрдм рднреА рдРрдк рдХреНрд░реИрд╢ рд╣реЛрддрд╛ рд╣реИ рддреЛ рдпрд╣ рд░рдирдЯрд╛рдЗрдо рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИред
рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрд╢реА 0.60.5 рдореЗрдВ рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрд╢реА[email protected] . рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░
рдХреНрдпрд╛ рдЖрдк рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдиреЗ рдЪрд░рдг 1.1 рдореЗрдВ рдиреЛрдЯ рдХрд┐рдП рдЧрдП app/build.gradle
рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ onesignal-gradle-plugin
рдЬреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИ?
https://documentation.onesignal.com/docs/android-sdk-setup#section -1-gradle-setup
рдЗрд╕реЗ рдорд┐рд╕ рдХрд░рдирд╛ рдпрд╛ рдЗрд╕реЗ рдЧрд▓рдд build.gradle
рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдЗрд╕ рд░рдирдЯрд╛рдЗрдо рддреНрд░реБрдЯрд┐ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЖрдо рд╕рдорд╕реНрдпрд╛ рд╣реИред
рдореЗрд░реЗ app/build.gradle
. рдХреА рд╢реБрд░реБрдЖрдд
buildscript {
repositories {
maven { url 'https://plugins.gradle.org/m2/'}
}
dependencies {
classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:[0.12.4, 0.99.99]'
}
}
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
repositories {
maven { url 'https://maven.google.com' }
}
apply plugin: "com.android.application"
import com.android.build.OutputFile
рдмреАрдЯреАрдбрдмреНрд▓реНрдпреВ, рдореИрдВрдиреЗ рдХреЗрд╡рд▓ рдкрд╣рд▓реЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдерд╛
apply plugin: "com.onesignal.androidsdk.onesignal-gradle-plugin"
рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ 0.59 рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдПрдХ рд╕рдВрдХреЗрдд рдХреЗ рд▓рд┐рдП: 3.2.12
рдореИрдВрдиреЗ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдЧрд╛рдЗрдб рдореЗрдВ рдмрддрд╛рдП рдЕрдиреБрд╕рд╛рд░ рд╕рдм рдХреБрдЫ рдЬреЛрдбрд╝рд╛ред рд▓реЗрдХрд┐рди рд▓рд╛рдЗрди рд▓рд╛рдЧреВ рдкреНрд▓рдЧрдЗрди: 'com.onesignal.androidsdk.onesignal-gradle-plugin' рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде рдореЗрд░реЗ рдРрдк рдмрд┐рд▓реНрдб рдХреЛ рд╡рд┐рдлрд▓ рдХрд░ рд░рд╣рд╛ рд╣реИ
- рдХреНрдпрд╛ рдЧрд▓рдд рд╣реБрдЖ: рд░реВрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдЙрддреНрдкрдиреНрди рд╣реБрдИ ''ред > org.gradle.api.Project рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ '' рдХреЗ рд▓рд┐рдП рдЕрдЬреНрдЮрд╛рдд рд╕рдВрдкрддреНрддрд┐ 'рдПрдВрдбреНрд░реЙрдЗрдб' рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрд╛ред"
рддрд╛рдХрд┐ рдореИрдВрдиреЗ рдЙрд╕ рдкрдВрдХреНрддрд┐ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХреА рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ Google рдкрд░ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдорд┐рд▓рд╛ред
рдХреНрдпрд╛ рдХреЛрдИ рдореБрдЭреЗ onesignal REST API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдиреБрд╕реВрдЪрд┐рдд рд╕реВрдЪрдирд╛рдПрдВ рднреЗрдЬрдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЙрджрд╛рд╣рд░рдг рдХреЛрдб рджреЗ рд╕рдХрддрд╛ рд╣реИред рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдзрдиреНрдпрд╡рд╛рджред
рдХреНрдпрд╛ рдЖрдк рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдиреЗ рдЪрд░рдг 1.1 рдореЗрдВ рдиреЛрдЯ рдХрд┐рдП рдЧрдП
app/build.gradle
рдХреЗ рд╢реАрд░реНрд╖ рдкрд░onesignal-gradle-plugin
рдЬреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИ?
https://documentation.onesignal.com/docs/android-sdk-setup#section -1-gradle-setupрдЗрд╕реЗ рдорд┐рд╕ рдХрд░рдирд╛ рдпрд╛ рдЗрд╕реЗ рдЧрд▓рдд
build.gradle
рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдЗрд╕ рд░рдирдЯрд╛рдЗрдо рддреНрд░реБрдЯрд┐ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЖрдо рд╕рдорд╕реНрдпрд╛ рд╣реИред
рд╣рд╛рдБ рдЬреЛрдбрд╝рд╛ рдФрд░ рд╡рд╣реА рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИ
рдореЗрд░реЗ
app/build.gradle
. рдХреА рд╢реБрд░реБрдЖрддbuildscript { repositories { maven { url 'https://plugins.gradle.org/m2/'} } dependencies { classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:[0.12.4, 0.99.99]' } } apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin' repositories { maven { url 'https://maven.google.com' } } apply plugin: "com.android.application" import com.android.build.OutputFile
рдореИрдВрдиреЗ рдЗрд╕реЗ рджреЗрдЦрд╛ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ! рдЖрдк рдЗрд╕реЗ рдЧрд╝рд▓рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ! рдпрд╣ рд╕рдм рдРрдк/рдмрд┐рд▓реНрдб.рдЧреНрд░реЗрдбрд▓ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ, рд▓рд╛рдЧреВ рдкреНрд▓рдЧрдЗрди рдХреЗрд╡рд▓ рд╡рд╣рд╛рдВ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдмрд╛рдХреА рд╡рд░реНрдЧ рдкрде, рдореЗрд╡реЗрди рдпреВрдЖрд░рдПрд▓ рдФрд░ рдЧреНрд░реЗрдбрд▓ рдкреНрд▓рдЧрдЗрди рд░реЗрдкреЛ рдпреВрдЖрд░рдПрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрд┐рд▓реНрдб.рдЧреНрд░реЗрдбрд▓ рдореЗрдВ рдЬрд╛рддрд╛ рд╣реИ
@indapublic рдореИрдВрдиреЗ рдЕрднреА рдЗрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рд╣реИ! рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдмрдЧ рдерд╛! рдЗрд╕реЗ рдкреЛрд╕реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рдзрдиреНрдпрд╡рд╛рджред! рдЕрдЧрд░ рдЖрдк рдЕрднреА рднреА рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдореИрдВ рдореБрдЭ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдореЗрдВ рдорджрдж рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реВрдВ!
рдирдорд╕реНрддреЗ,
рдХреГрдкрдпрд╛ рдкреНрд▓рдЧрдЗрди рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг (3.4.1) рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░реЗрдВ рдФрд░ рдкреБрдирдГ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред
@SAHITYASAI рдпрд╣рд╛рдБ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ
@indapublic рдореИрдВрдиреЗ рдЕрднреА рдЗрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рд╣реИ! рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдмрдЧ рдерд╛! рдЗрд╕реЗ рдкреЛрд╕реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рдзрдиреНрдпрд╡рд╛рджред! рдЕрдЧрд░ рдЖрдк рдЕрднреА рднреА рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдореИрдВ рдореБрдЭ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдореЗрдВ рдорджрдж рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реВрдВ!
рдзрдиреНрдпрд╡рд╛рдж, рд╣рд▓ !!
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рдЕрдВрджрд░ "рдРрдк/рдмрд┐рд▓реНрдб рдЧреНрд░реЗрдбрд▓" рдиреЗ рдЗрд╕реЗ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╢реАрд░реНрд╖ рдореЗрдВ рдЬреЛрдбрд╝рд╛ред
рдмрд┐рд▓реНрдбрд╕реНрдХреНрд░рд┐рдкреНрдЯ {
рднрдВрдбрд╛рд░ {
рдорд╛рд╡реЗрди { url ' https://plugins.gradle.org/m2/ ' } // рдЧреНрд░реИрдбрд▓ рдкреНрд▓рдЧрдЗрди рдкреЛрд░реНрдЯрд▓
}
рдирд┐рд░реНрднрд░рддрд╛ {
рдХреНрд▓рд╛рд╕рдкрд╛рде 'gradle.plugin.com. onesignal: onesignal-gradle-plugin :[0.12.1, 0.99.99]'
}
}
рдкреНрд▓рдЧрдЗрди рд▓рд╛рдЧреВ рдХрд░реЗрдВ: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
рдкреНрд▓рдЧрдЗрди рд▓рд╛рдЧреВ рдХрд░реЗрдВ: "com.android.application"
рдЖрдпрд╛рдд com.android.build.OutputFile
рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ!
рд╕реБрдирдиреЗ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рд▓рдЧрд╛!
@indapublic рдореИрдВрдиреЗ рдЕрднреА рдЗрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рд╣реИ! рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдмрдЧ рдерд╛! рдЗрд╕реЗ рдкреЛрд╕реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рдзрдиреНрдпрд╡рд╛рджред! рдЕрдЧрд░ рдЖрдк рдЕрднреА рднреА рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдореИрдВ рдореБрдЭ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдореЗрдВ рдорджрдж рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реВрдВ!
рдореБрдЭреЗ рдЕрдкрдирд╛ build.gradle
рджрд┐рдЦрд╛рдУ
@indapublic рдореИрдВрдиреЗ рдЕрднреА рдЗрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рд╣реИ! рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдмрдЧ рдерд╛! рдЗрд╕реЗ рдкреЛрд╕реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рдзрдиреНрдпрд╡рд╛рджред! рдЕрдЧрд░ рдЖрдк рдЕрднреА рднреА рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдореИрдВ рдореБрдЭ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдореЗрдВ рдорджрдж рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реВрдВ!
рдореБрдЭреЗ рдЕрдкрдирд╛
build.gradle
рджрд┐рдЦрд╛рдУ
рдмрд┐рд▓реНрдбрд╕реНрдХреНрд░рд┐рдкреНрдЯ {
рднрдВрдбрд╛рд░ {
рдорд╛рд╡реЗрди { url ' https://plugins.gradle.org/m2/ ' } // рдЧреНрд░реИрдбрд▓ рдкреНрд▓рдЧрдЗрди рдкреЛрд░реНрдЯрд▓
}
рдирд┐рд░реНрднрд░рддрд╛ {
рдХреНрд▓рд╛рд╕рдкрд╛рде 'gradle.plugin.com. onesignal: onesignal-gradle-plugin :[0.12.1, 0.99.99]'
}
}
рдкреНрд▓рдЧрдЗрди рд▓рд╛рдЧреВ рдХрд░реЗрдВ: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
рдкреНрд▓рдЧрдЗрди рд▓рд╛рдЧреВ рдХрд░реЗрдВ: "com.android.application"
рдЖрдпрд╛рдд com.android.build.OutputFile
/**
react-native bundle
apply from: "../../node_modules/react-native/react.gradle"
рд▓рд╛рдЗрдиредproject.ext.react = [
рдПрдВрдЯреНрд░реАрдлрд╛рдЗрд▓: "index.js",
enableHermes: рдЧрд▓рдд, // рд╕рд╛рдл рдХрд░реЗрдВ рдФрд░ рдЕрдЧрд░ рдмрджрд▓рддреЗ рд╣реИрдВ рддреЛ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВ
]
рд╕реЗ рдЖрд╡реЗрджрди рдХрд░реЗрдВ: "../../node_modules/react-native/react.gradle"
/**
/**
/**
def jscFlavor = 'org.webkit:android-jsc-intl:+'
Date.toLocaleString
рдФрд░ String.localeCompare
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдирд╛/**
рдПрдВрдбреНрд░реЙрдпрдб {
CompileSdkVersion rootProject.ext.compileSdkVersion
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
applicationId "com.yourappid"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 1
versionName "1.0"
missingDimensionStrategy 'react-native-camera', 'general'
}
splits {
abi {
reset()
enable enableSeparateBuildPerCPUArchitecture
universalApk false // If true, also generate a universal APK
include "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
}
}
signingConfigs {
debug {
storeFile file('debug.keystore')
storePassword 'android'
keyAlias 'androiddebugkey'
keyPassword 'android'
}
}
buildTypes {
debug {
signingConfig signingConfigs.debug
}
release {
// Caution! In production, you need to generate your own keystore file.
// see https://facebook.github.io/react-native/docs/signed-apk-android.
signingConfig signingConfigs.debug
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
}
// 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:
// https://developer.android.com/studio/build/configure-apk-splits.html
def versionCodes = ["armeabi-v7a": 1, "x86": 2, "arm64-v8a": 3, "x86_64": 4]
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
}
}
}
packagingOptions {
pickFirst '**/armeabi-v7a/libc++_shared.so'
pickFirst '**/x86/libc++_shared.so'
pickFirst '**/arm64-v8a/libc++_shared.so'
pickFirst '**/x86_64/libc++_shared.so'
pickFirst '**/x86/libjsc.so'
pickFirst '**/armeabi-v7a/libjsc.so'
}
}
рдирд┐рд░реНрднрд░рддрд╛ {
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдлрд╝рд╛рдЗрд▓ рдЯреНрд░реА (рдбреАрдЖрдИрдЖрд░: "libs", рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: ["*.jar"])
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди "com.facebookред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛: рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ : +" // рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рд╕реЗ
if (enableHermes) {
def hermesPath = "../../node_modules/hermesvm/android/";
debugImplementation files(hermesPath + "hermes-debug.aar")
releaseImplementation files(hermesPath + "hermes-release.aar")
} else {
implementation jscFlavor
}
}
// BUCK . рдХреЗ рд╕рд╛рде рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдПрдХ рдмрд╛рд░ рдЪрд▓рд╛рдПрдВ
// BUCK рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдХрдВрдкрд╛рдЗрд▓ рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рдХреЛ рдлреЛрд▓реНрдбрд░ рд▓рд┐рдм рдореЗрдВ рдбрд╛рд▓рддрд╛ рд╣реИ
рдХрд╛рд░реНрдп рдХреЙрдкреАрдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдпреЛрдЧреНрдпDepsToLibs(рдкреНрд░рдХрд╛рд░: рдХреЙрдкреА) {
рд╡рд┐рдиреНрдпрд╛рд╕ рд╕реЗредрд╕рдВрдХрд▓рди
'рд▓рд┐рдмрд╛рд╕' рдореЗрдВ
}
рд╕реЗ рд▓рд╛рдЧреВ рдХрд░реЗрдВ: рдлрд╝рд╛рдЗрд▓ ("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); ApplyNativeModulesAppBuildGradle (рдкреНрд░реЛрдЬреЗрдХреНрдЯ)
рдзрдиреНрдпрд╡рд╛рдж, @lucasferreiraestevamред рдмреАрдЯреАрдбрдмреНрд▓реНрдпреВ, рдЖрдк рдмреЗрд╣рддрд░ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдХреЛрдб рдХреЛ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╡реИрд╕реЗ рднреА рдореИрдВрдиреЗ рдЖрдкрдХреЗ рдЙрджрд╛рд╣рд░рдг рд╕реЗ рдмрд╣реБрдд рдЕрдВрддрд░ рдирд╣реАрдВ рджреЗрдЦрд╛ред рд▓реЗрдХрд┐рди рдлрд┐рд░ рд╕реЗ рдзрдиреНрдпрд╡рд╛рдж
рддрд╛рдЬрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рд╕рднреА рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░реЗрдВред рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рдж
рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рдЕрднреА рдареАрдХ рдирд╣реАрдВ рд╣реБрдИ рд╣реИред рдореБрдЭреЗ рдЕрднреА рднреА рд╡рд╣реА рд░рдирдЯрд╛рдЗрдо рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИред рдХреГрдкрдпрд╛ рдХреНрдпрд╛ рдХреЛрдИ рдореЗрд░реА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред
@SAHITYASAI рдЕрдкрдирд╛ build.gradle
рджрд┐рдЦрд╛рдПрдБ
android/build.gradle :-
buildscript {
ext {
buildToolsVersion = "28.0.3"
minSdkVersion = 16
compileSdkVersion = 28
targetSdkVersion = 28
supportLibVersion = "28.0.0"
googlePlayServicesVersion: "15.0.0"
firebaseVersion: "15.0.0"
}
repositories {
google()
jcenter()
mavenLocal()
maven { url 'https://plugins.gradle.org/m2/' } // Gradle Plugin Portal
}
dependencies {
classpath("com.android.tools.build:gradle:3.4.1")
classpath 'com.google.gms:google-services:4.3.2'
classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:[0.12.5, 0.99.99]'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
mavenLocal()
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url("$rootDir/../node_modules/react-native/android")
}
maven {
// Android JSC is installed from npm
url("$rootDir/../node_modules/jsc-android/dist")
}
google()
jcenter()
}
}
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
android/app/build.gradle: -
apply plugin: "com.android.application"
import com.android.build.OutputFile
project.ext.react = [
entryFile: "index.js",
enableHermes: false, // clean and rebuild if changing
]
apply from: "../../node_modules/react-native/react.gradle"
def enableSeparateBuildPerCPUArchitecture = false
def enableProguardInReleaseBuilds = false
def jscFlavor = 'org.webkit:android-jsc:+'
def enableHermes = project.ext.react.get("enableHermes", false);
android {
compileSdkVersion rootProject.ext.compileSdkVersion
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
applicationId "com.tutelage"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 3
versionName "1.2"
multiDexEnabled true
}
splits {
abi {
reset()
enable enableSeparateBuildPerCPUArchitecture
universalApk false // If true, also generate a universal APK
include "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
}
}
signingConfigs {
debug {
storeFile file('debug.keystore')
storePassword 'android'
keyAlias 'androiddebugkey'
keyPassword 'android'
}
release {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
}
}
buildTypes {
debug {
signingConfig signingConfigs.debug
}
release {
signingConfig signingConfigs.release
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
}
applicationVariants.all { variant ->
variant.outputs.each { output ->
def versionCodes = ["armeabi-v7a": 1, "x86": 2, "arm64-v8a": 3, "x86_64": 4]
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
}
}
}
packagingOptions {
pickFirst '**/armeabi-v7a/libc++_shared.so'
pickFirst '**/x86/libc++_shared.so'
pickFirst '**/arm64-v8a/libc++_shared.so'
pickFirst '**/x86_64/libc++_shared.so'
pickFirst '**/x86/libjsc.so'
pickFirst '**/armeabi-v7a/libjsc.so'
}
}
dependencies {
implementation project(':react-native-onesignal')
compile project(':react-native-admob')
implementation "com.google.android.gms:play-services-base:17.0.0"
implementation ('com.google.android.gms:play-services-ads:18.1.1') { force = true; }
implementation 'com.google.firebase:firebase-analytics:17.2.0'
implementation 'com.google.firebase:firebase-auth:18.1.0'
implementation 'com.google.firebase:firebase-firestore:20.2.0'
implementation 'com.google.firebase:firebase-ads:18.1.1'
implementation project(':@react-native-community_netinfo')
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation "com.facebook.react:react-native:+" // From node_modules
implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"
// implementation "com.google.android.gms:play-services-ads-lite:[18.1.1]"
if (enableHermes) {
def hermesPath = "../../node_modules/hermesvm/android/";
debugImplementation files(hermesPath + "hermes-debug.aar")
releaseImplementation files(hermesPath + "hermes-release.aar")
} else {
implementation jscFlavor
}
}
task copyDownloadableDepsToLibs(type: Copy) {
from configurations.compile
into 'libs'
}
apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
apply plugin: 'com.google.gms.google-services'
@SAHITYASAI рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЖрдкрдХреЛ рдЗрд╕ рдХреЛрдб рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП
buildscript {
repositories {
maven { url 'https://plugins.gradle.org/m2/'}
}
dependencies {
classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:[0.12.4, 0.99.99]'
}
}
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
repositories {
maven { url 'https://maven.google.com' }
}
app/build.gradle
ред рдЗрд╕реЗ рдлрд╝рд╛рдЗрд▓ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд▓реЗ рдЬрд╛рдПрдБ
рдФрд░ рдХреГрдкрдпрд╛ рдЕрдкрдирд╛ рдХреЛрдб рдкреБрди: рд╕реНрд╡рд░реВрдкрд┐рдд рдХрд░реЗрдВ
рдпрд╣рд╛рдБ рдПрдХ рд╣реА рдореБрджреНрджрд╛
`3s рдореЗрдВ рдирд┐рд░реНрдорд╛рдг рд╡рд┐рдлрд▓
рддреНрд░реБрдЯрд┐ рдРрдк рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ Android рд╡рд┐рдХрд╛рд╕ рдкрд░рд┐рд╡реЗрд╢ рд╕реЗрдЯ рдЕрдк рд╣реИ: https://facebook.github.io/react-native/docs/getting-started.html#android -Development-environmentред
рддреНрд░реБрдЯрд┐: рдХрдорд╛рдВрдб рд╡рд┐рдлрд▓: gradlew.bat рдРрдк: installDebug -PreactNativeDevServerPort = 8081
рд╡рд┐рдлрд▓рддрд╛: рдирд┐рд░реНрдорд╛рдг рдПрдХ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд░рд╣рд╛ред
рдХреНрдпрд╛ рдЧрд▓рдд рд╣реБрдЖ:
рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрди рд╡рд┐рдлрд▓ ': рдРрдк: ValidateSigningDebug 'ред
рдХреАрд╕реНрдЯреЛрд░ рдлрд╝рд╛рдЗрд▓ 'рдИ:\рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡\рдкреБрд╢ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди\react-native-onesignal\examples\RNOneSignal\android\app\debug.keystore' рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди 'рдбреАрдмрдЧ' рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдорд┐рд▓реАред
рдкреНрд░рдпрддреНрди:
рд╕реНрдЯреИрдХ рдЯреНрд░реЗрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП --stacktrace рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдПрдБред рдЕрдзрд┐рдХ рд▓реЙрдЧ рдЖрдЙрдЯрдкреБрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП --info рдпрд╛ --debug рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдПрдБред рдкреВрд░реНрдг рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП --рд╕реНрдХреИрди рдХреЗ рд╕рд╛рде рджреМрдбрд╝реЗрдВред
https://help.gradle.org рдкрд░ рдЕрдзрд┐рдХ рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рд╛рдкреНрдд
3s . рдореЗрдВ рдирд┐рд░реНрдорд╛рдг рд╡рд┐рдлрд▓
at checkExecSyncError (child_process.js:601:13)
at execFileSync (child_process.js:621:13)
at runOnAllDevices (E:\React Native\push notification\react-native-onesignal\examples\RNOneSignal\node_modules\@react-native-community\cli-platform-android\build\commands\runAndroid\runOnAllDevices.js:74:39)
at buildAndRun (E:\React Native\push notification\react-native-onesignal\examples\RNOneSignal\node_modules\@react-native-community\cli-platform-android\build\commands\runAndroid\index.js:158:41)
at then.result (E:\React Native\push notification\react-native-onesignal\examples\RNOneSignal\node_modules\@react-native-community\cli-platform-android\build\commands\runAndroid\index.js:125:12)
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:188:7)`
рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣ рдирд╡реАрдирддрдо рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рд╡рдирд╕рд┐рдЧреНрдирд▓ рдкреИрдХреЗрдЬ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ!
рдпрд╣рд╛рдБ рдореЗрд░рд╛ project/build.gradle
рдпрд╣рд╛рдБ рдореЗрд░рд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ/рдРрдк/рдмрд┐рд▓реНрдб.рдЧреНрд░реЗрдб рдлрд╝рд╛рдЗрд▓ рд╣реИ
рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдард╛рдП рдЧрдП рдХрджрдо рд╣реИрдВ
yarn add react-native-onesignal
рдлрд┐рд░ рдЖрдИрдУрдПрд╕ рдХреЗ рд▓рд┐рдП
рдХреЗрд╡рд▓
cd ios && pod install
andorid . рдХреЗ рд▓рд┐рдП
рдХреЗрд╡рд▓
react-native run-android
рдпрд╣ рдкреИрдХреЗрдЬ рдХреЛ рд╕реНрд╡рддрдГ рд▓рд┐рдВрдХ рдХрд░рддрд╛ рд╣реИ
@waqaramjad рдЖрдкрдХрд╛ рдореБрджреНрджрд╛ рдХреЛрдб рд╕рд╛рдЗрдирд┐рдВрдЧ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ
Keystore file 'E:\React Native\push notification\react-native-onesignal\examples\RNOneSignal\android\app\debug.keystore' not found for signing config 'debug'.
@indapublic рддреЛ рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХреНрдпрд╛ рд╣реИ?
@waqaramjad рдЕрдкрдирд╛ android/app/build.gradle
, signingConfigs
рдЕрдиреБрднрд╛рдЧ рджрд┐рдЦрд╛рдПрдВ
@indapublic рдпрд╣рд╛рдБ рд╣реИ android/app/build.gradle
`// рд╢реАрд░реНрд╖-рд╕реНрддрд░реАрдп рдмрд┐рд▓реНрдб рдлрд╝рд╛рдЗрд▓ рдЬрд╣рд╛рдВ рдЖрдк рд╕рднреА рдЙрдк-рдкреНрд░реЛрдЬреЗрдХреНрдЯ/рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред
рдмрд┐рд▓реНрдбрд╕реНрдХреНрд░рд┐рдкреНрдЯ {
рдЕрддрд┐рд░рд┐рдХреНрдд {
рдмрд┐рд▓реНрдбрдЯреВрд▓реНрд╕рд╡рд░реНрдЬрди = "28.0.3"
minSdkVersion = 16
рдХрдВрдкрд╛рдЗрд▓рдПрд╕рдбреАрдХреЗрд╡рд░реНрд╕рди = 28
targetSdkVersion = 28
рд╕рдкреЛрд░реНрдЯрд▓рд┐рдмрд╡рд░реНрд╕рди = "28.0.0"
}
рднрдВрдбрд╛рд░ {
рдЧреВрдЧрд▓()
рдЬреЗрд╕реЗрдВрдЯрд░ ()
}
рдирд┐рд░реНрднрд░рддрд╛ {
рдХреНрд▓рд╛рд╕рдкрд╛рде ("com.android.tools.build:gradle: 3.4.1")
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ {
рднрдВрдбрд╛рд░ {
рдореЗрд╡реЗрдирд▓реЛрдХрд▓ ()
рдорд╛рд╡реЗрди {
// рд╕рднреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╢реАрд▓ рдореВрд▓ рдирд┐рд╡рд╛рд╕реА (JS, Obj-C рд╕реНрд░реЛрдд, Android рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝) npm . рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ
url("$rootDir/../node_modules/react-native/android")
}
рдорд╛рд╡реЗрди {
// Android JSC npm . рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ
url("$rootDir/../node_modules/jsc-android/dist")
}
google()
jcenter()
}
}
`
@waqaramjad рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреНрдпрд╛ RN рд╕рдВрд╕реНрдХрд░рдг рд╣реИ?
"0.60.5"
рдХреНрдпрд╛ рдЖрдкрдиреЗ рдореМрдЬреВрджрд╛ рдРрдк рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдпрд╛ рдирдпрд╛ рдмрдирд╛рдпрд╛?
рдореИрдВ рд╕рд┐рд░реНрдл рдореМрдЬреВрджрд╛ рдРрдк рдЙрджрд╛рд╣рд░рдг рдХреЛ рдХреНрд▓реЛрди рдХрд░рддрд╛ рд╣реВрдВ рдЬреЛ рдПрдХ рд╕рд┐рдЧреНрдирд▓ рд░реЗрдкреЛ рдореЗрдВ рд╣реИ рдФрд░ рдмрд╕ рдЗрд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ
@waqaramjad рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдпрд╣ рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдП :)
рдкрд╣рд▓рд╛: рдЖрдкрдиреЗ android/build.gradle
рдкреНрд░рд┐рдВрдЯ рдХрд┐рдпрд╛, рди рдХрд┐ android/app/build.gradle
рджреВрд╕рд░рд╛: рдЖрдкрдХреЛ рдЗрд╕ рдореИрдиреБрдЕрд▓ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдбрд┐рдмрдЧ рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдХреАрд╕реНрдЯреЛрд░ рдЬрд╛рд░реА рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
рдмреАрдЯреАрдбрдмреНрд▓реНрдпреВ: рдореИрдВрдиреЗ рджреЗрдЦрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╡рд┐рдВрдбреЛрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╢рд╛рдпрдж рдЖрдкрдХреЛ рдХреАрдЯреЛрд▓ рд▓реЙрдиреНрдЪрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рд╛рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдореБрдЭреЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рд╕рд╛рде рдЕрдиреБрднрд╡ рдирд╣реАрдВ рд╣реИред
рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдХреАрд╕реНрдЯреЛрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдПрдкреАрдХреЗ рдирд╣реАрдВ рдЪрд╛рд╣рд┐рдП, рдореИрдВ рдХреЗрд╡рд▓ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ
рдЬрдмрдХрд┐ рдпрд╣рд╛рдВ android/app/build.gradle
. рдХреЗ рд▓рд┐рдП рдХреЛрдб рд╣реИ
`рдкреНрд▓рдЧрдЗрди рд▓рд╛рдЧреВ рдХрд░реЗрдВ: "com.android.application"
рдЖрдпрд╛рдд com.android.build.OutputFile
/**
react-native bundle
apply from: "../../node_modules/react-native/react.gradle"
рд▓рд╛рдЗрдиредproject.ext.react = [
рдПрдВрдЯреНрд░реАрдлрд╛рдЗрд▓: "index.js",
enableHermes: рдЧрд▓рдд, // рд╕рд╛рдл рдХрд░реЗрдВ рдФрд░ рдЕрдЧрд░ рдмрджрд▓рддреЗ рд╣реИрдВ рддреЛ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВ
]
рд╕реЗ рдЖрд╡реЗрджрди рдХрд░реЗрдВ: "../../node_modules/react-native/react.gradle"
/**
/**
/**
def jscFlavor = 'org.webkit:android-jsc-intl:+'
Date.toLocaleString
рдФрд░ String.localeCompare
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдирд╛/**
рдПрдВрдбреНрд░реЙрдпрдб {
CompileSdkVersion rootProject.ext.compileSdkVersion
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
applicationId "com.rnonesignal"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 1
versionName "1.0"
}
splits {
abi {
reset()
enable enableSeparateBuildPerCPUArchitecture
universalApk false // If true, also generate a universal APK
include "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
}
}
signingConfigs {
debug {
storeFile file('debug.keystore')
storePassword 'android'
keyAlias 'androiddebugkey'
keyPassword 'android'
}
}
buildTypes {
debug {
signingConfig signingConfigs.debug
}
release {
// Caution! In production, you need to generate your own keystore file.
// see https://facebook.github.io/react-native/docs/signed-apk-android.
signingConfig signingConfigs.debug
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
}
// 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:
// https://developer.android.com/studio/build/configure-apk-splits.html
def versionCodes = ["armeabi-v7a": 1, "x86": 2, "arm64-v8a": 3, "x86_64": 4]
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
}
}
}
packagingOptions {
pickFirst '**/armeabi-v7a/libc++_shared.so'
pickFirst '**/x86/libc++_shared.so'
pickFirst '**/arm64-v8a/libc++_shared.so'
pickFirst '**/x86_64/libc++_shared.so'
pickFirst '**/x86/libjsc.so'
pickFirst '**/armeabi-v7a/libjsc.so'
}
}
рдирд┐рд░реНрднрд░рддрд╛ {
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдлрд╝рд╛рдЗрд▓ рдЯреНрд░реА (рдбреАрдЖрдИрдЖрд░: "libs", рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: ["*.jar"])
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди "com.facebookред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛: рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ : +" // рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рд╕реЗ
if (enableHermes) {
def hermesPath = "../../node_modules/hermesvm/android/";
debugImplementation files(hermesPath + "hermes-debug.aar")
releaseImplementation files(hermesPath + "hermes-release.aar")
} else {
implementation jscFlavor
}
}
// BUCK . рдХреЗ рд╕рд╛рде рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдПрдХ рдмрд╛рд░ рдЪрд▓рд╛рдПрдВ
// BUCK рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдХрдВрдкрд╛рдЗрд▓ рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рдХреЛ рдлреЛрд▓реНрдбрд░ рд▓рд┐рдм рдореЗрдВ рдбрд╛рд▓рддрд╛ рд╣реИ
рдХрд╛рд░реНрдп рдХреЙрдкреАрдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдпреЛрдЧреНрдпDepsToLibs(рдкреНрд░рдХрд╛рд░: рдХреЙрдкреА) {
рд╡рд┐рдиреНрдпрд╛рд╕ рд╕реЗредрд╕рдВрдХрд▓рди
'рд▓рд┐рдмрд╛рд╕' рдореЗрдВ
}
рд╕реЗ рд▓рд╛рдЧреВ рдХрд░реЗрдВ: рдлрд╝рд╛рдЗрд▓ ("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); ApplyNativeModulesAppBuildGradle (рдкреНрд░реЛрдЬреЗрдХреНрдЯ)
`
рд▓реЗрдХрд┐рди рдЖрдк рдЗрд╕реЗ рдЕрдкрдиреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╣реИ рдирд╛?
рд╕рд╛рдЗрди рдХреЙрдиреНрдлрд┐рдЧ рдпрд╣рд╛рдБ рд╣реИ
@indapublic рдзрдиреНрдпрд╡рд╛рдж, рдореЗрд░рд╛ рдРрдк рдЕрдм рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдмрди рд░рд╣рд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдХреЗрд╡рд▓ рдЙрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рднреЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рд▓рдЧрд╛рддрд╛рд░ 15 рджрд┐рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╣реИрдВ, рдХреЗрд╡рд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдХ рд░реВрдк рд╕реЗ onesignal рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдбреИрд╢рдмреЛрд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ред рдХреНрдпрд╛ рдХреЛрдИ рднреА рдХреГрдкрдпрд╛ рдореЗрд░реА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдирдпрд╛ рдореБрджреНрджрд╛ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╣реИ рдирд╛?
@SAHITYASAI ,
рдЕрдзрд┐рдХ рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдХреГрдкрдпрд╛ рд╣рдорд╛рд░реЗ рд╕рдорд░реНрдерди рдЪреИрдирд▓ OneSignal.com рдкрд░ рдкрд╣реБрдВрдЪреЗрдВред рдЪрд┐рдпрд░реНрд╕
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрд╢реА 0.60.5 рдореЗрдВ рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрд╢реА[email protected] . рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░