React-native-onesignal: 인앱 κ΅¬λ§€μ—μ„œ μž‘λ™ν•˜μ§€ μ•ŠμŒ

에 λ§Œλ“  2020λ…„ 11μ›” 16일  Β·  19μ½”λ©˜νŠΈ  Β·  좜처: OneSignal/react-native-onesignal

기술:
앱에 IAP (react-native-iap 5.x.x +)와 Onesignal이 λͺ¨λ‘μžˆλŠ” 경우. Onesignal.initκ°€ 호좜 되 자마자 앱이 μΆ©λŒν•©λ‹ˆλ‹€. 이것은 5.xx μ΄μ „μ˜ react-native-iap λ²„μ „μ˜ λ¬Έμ œκ°€ μ•„λ‹™λ‹ˆλ‹€.

ν™˜κ²½

  1. μ–΄λ–€ λ²„μ „μ˜ OneSignal React-Native SDKλ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆκΉŒ? 3.9.0
  2. ν”„λ‘œμ νŠΈ (예 : npm) npm에 SDKλ₯Ό μ–΄λ–»κ²Œ μΆ”κ°€ ν–ˆμŠ΅λ‹ˆκΉŒ?

문제 μž¬ν˜„ 단계 :

  1. react-native-onesignal μ„€μΉ˜
  2. react-native-iap μ„€μΉ˜ (https://github.com/dooboolab/react-native-iap)
  3. onesignal.initλ₯Ό ν˜ΈμΆœν•˜λ©΄ "dbaacfλ₯Ό dbaaa둜 캐슀트 ν•  수 μ—†μŠ΅λ‹ˆλ‹€"λΌλŠ” λ©”μ‹œμ§€μ™€ ν•¨κ»˜ 앱이 μΆ©λŒν•©λ‹ˆλ‹€.
Not OneSignal Compatibility Issue Need More Information Possible Bug

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

μ•ˆλ…•ν•˜μ„Έμš”! λ‚˜λŠ” λ˜‘κ°™μ€ λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€!

"λ°˜μ‘": "16.13.1"
"λ°˜μ‘ λ„€μ΄ν‹°λΈŒ": "0.63.3"
"react-native-onesignal": "^3.9.2"

μ–΄λ–€ 해결책이 μžˆμŠ΅λ‹ˆκΉŒ?

λͺ¨λ“  19 λŒ“κΈ€

μ•ˆλ…•,
OneSignal 둜그 μˆ˜μ€€μ΄ VERBOSE둜 μ„€μ •λœ 둜그λ₯Ό 포함 ν•΄ μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ?

건배

2020-11-24 10 : 22 : 58.203 13843-14028 /? E / unknown : ReactNative : CatalystInstanceImplμ—μ„œ λ„€μ΄ν‹°λΈŒ μ˜ˆμ™Έκ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.
java.lang.ClassCastException : dbaacfλ₯Ό dbaaa둜 캐슀트 ν•  수 μ—†μŠ΅λ‹ˆλ‹€.
com.onesignal.z2.(좜처 뢈λͺ…:62)
at com.onesignal.v1.Q (Unknown Source : 9)
com.onesignal.v1.aμ—μ„œ(μ•Œ 수 μ—†λŠ” 좜처:110)
com.geektime.rnonesignalandroid.RNOneSignal.initμ—μ„œ(μ•Œ 수 μ—†λŠ” 좜처:41)
java.lang.reflect.Method.invoke (Native Method)μ—μ„œ
com.facebook.react.bridge.JavaMethodWrapper.invoke (μ•Œ μˆ˜μ—†λŠ” 좜처 : 149)
com.facebook.react.bridge.JavaModuleWrapper.invoke (μ•Œ μˆ˜μ—†λŠ” 좜처 : 21)
com.facebook.react.bridge.queue.NativeRunnable.run (Native Method)μ—μ„œ
android.os.Handler.handleCallback (Handler.java:883)μ—μ„œ
android.os.Handler.dispatchMessage(Handler.java:100)
com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage (Unknown Source : 0)
android.os.Looper.loop (Looper.java:237)μ—μ„œ
com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.runμ—μ„œ(μ•Œ 수 μ—†λŠ” 좜처:37)
java.lang.Thread.run (Thread.java:919)μ—μ„œ
2020-11-24 10 : 22 : 58.203 13843-14028 /? E / unknown : DisabledDevSupportManager : μ˜ˆμ™Έκ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.
java.lang.ClassCastException : dbaacfλ₯Ό dbaaa둜 캐슀트 ν•  수 μ—†μŠ΅λ‹ˆλ‹€.
com.onesignal.z2μ—μ„œ(μ•Œ μˆ˜μ—†λŠ” 좜처 : 62)
at com.onesignal.v1.Q (Unknown Source : 9)
com.onesignal.v1.aμ—μ„œ(μ•Œ 수 μ—†λŠ” 좜처:110)
com.geektime.rnonesignalandroid.RNOneSignal.initμ—μ„œ(μ•Œ 수 μ—†λŠ” 좜처:41)
java.lang.reflect.Method.invoke (Native Method)μ—μ„œ
com.facebook.react.bridge.JavaMethodWrapper.invoke (μ•Œ μˆ˜μ—†λŠ” 좜처 : 149)
com.facebook.react.bridge.JavaModuleWrapper.invoke (μ•Œ μˆ˜μ—†λŠ” 좜처 : 21)
com.facebook.react.bridge.queue.NativeRunnable.runμ—μ„œ(λ„€μ΄ν‹°λΈŒ λ©”μ„œλ“œ)
android.os.Handler.handleCallback (Handler.java:883)μ—μ„œ
android.os.Handler.dispatchMessage (Handler.java:100)μ—μ„œ
com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessageμ—μ„œ(μ•Œ 수 μ—†λŠ” 좜처:0)
android.os.Looper.loop (Looper.java:237)μ—μ„œ
com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.runμ—μ„œ(μ•Œ 수 μ—†λŠ” 좜처:37)
java.lang.Thread.run(Thread.java:919)μ—μ„œ

--------- beginning of crash

2020-11-24 10 : 22 : 58.203 13843-14028 /? E / AndroidRuntime : 치λͺ…적 μ˜ˆμ™Έ : mqt_native_modules
ν”„λ‘œμ„ΈμŠ€: com.bitapps.freshbit, PID: 13843
java.lang.ClassCastException : dbaacfλ₯Ό dbaaa둜 캐슀트 ν•  수 μ—†μŠ΅λ‹ˆλ‹€.
com.onesignal.z2.(좜처 뢈λͺ…:62)
at com.onesignal.v1.Q (Unknown Source : 9)
at com.onesignal.v1.a (Unknown Source : 110)
com.geektime.rnonesignalandroid.RNOneSignal.initμ—μ„œ(μ•Œ 수 μ—†λŠ” 좜처:41)
java.lang.reflect.Method.invoke (Native Method)μ—μ„œ
com.facebook.react.bridge.JavaMethodWrapper.invokeμ—μ„œ(μ•Œ 수 μ—†λŠ” 좜처:149)
com.facebook.react.bridge.JavaModuleWrapper.invoke (μ•Œ μˆ˜μ—†λŠ” 좜처 : 21)
com.facebook.react.bridge.queue.NativeRunnable.run (Native Method)μ—μ„œ
android.os.Handler.handleCallback (Handler.java:883)μ—μ„œ
android.os.Handler.dispatchMessage (Handler.java:100)μ—μ„œ
com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage (Unknown Source : 0)
android.os.Looper.loop(Looper.java:237)μ—μ„œ
com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.runμ—μ„œ(μ•Œ 수 μ—†λŠ” 좜처:37)
java.lang.Thread.run(Thread.java:919)μ—μ„œ

μ•ˆλ…•ν•˜μ„Έμš”! λ‚˜λŠ” λ˜‘κ°™μ€ λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€!

"λ°˜μ‘": "16.13.1"
"λ°˜μ‘ λ„€μ΄ν‹°λΈŒ": "0.63.3"
"react-native-onesignal": "^3.9.2"

μ–΄λ–€ 해결책이 μžˆμŠ΅λ‹ˆκΉŒ?

μ•ˆλ…•ν•˜μ„Έμš”

이것에 λŒ€ν•œ μ—…λ°μ΄νŠΈκ°€ μžˆμŠ΅λ‹ˆκΉŒ?

μ•ˆλ…•,
λΆˆν–‰νžˆλ„ 아직 μ—…λ°μ΄νŠΈκ°€ μ—†μŠ΅λ‹ˆλ‹€. μ–‘ν•΄ ν•΄ μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ„Έμš”
이것은 μ΅œμ‹  버전 4.0.3μ—μ„œλ„ μ—¬μ „νžˆ λ¬Έμ œμž…λ‹ˆλ‹€.

이봐, 여기에 같은 문제. μ—…λ°μ΄νŠΈκ°€ μžˆμŠ΅λ‹ˆκΉŒ?

@rgomezp 그에 λŒ€ν•œ μ—…λ°μ΄νŠΈκ°€ μžˆμŠ΅λ‹ˆκΉŒ? 앱을 μΆœμ‹œν•΄μ•Ό ν•˜λŠ”λ° 였λ₯˜κ°€ 계속 λ°œμƒν•©λ‹ˆλ‹€.

이것에 λŒ€ν•œ μ—…λ°μ΄νŠΈκ°€ μžˆμŠ΅λ‹ˆκΉŒ? 이것은 큰 μ°¨λ‹¨μ œμž…λ‹ˆλ‹€.

μ•ˆλ…•,

이것은 5.xx μ΄μ „μ˜ react-native-iap λ²„μ „μ˜ λ¬Έμ œκ°€ μ•„λ‹™λ‹ˆλ‹€.

이것이 react-native-iap 의 이전 λ²„μ „μ—μ„œ λ¬Έμ œκ°€ μ•„λ‹Œ 경우 λ™μΌν•œ νŒ¨ν‚€μ§€μ˜ 버전 5 이상에 λ¬Έμ œκ°€ μžˆλ‹€κ³  μƒκ°ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€.

ν•΄λ‹Ή νŒ¨ν‚€μ§€μ˜ 문제λ₯Ό μ—΄κ³  μž„μ‹œ ν•΄κ²° λ°©λ²•μœΌλ‘œ 버전 4둜 λ‹€μš΄κ·Έλ ˆμ΄λ“œν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€.

이것은 OneSignal이 μ•„λ‹Œ 문제처럼 λ“€λ¦½λ‹ˆλ‹€.

λ‹€λ₯Έ 정보λ₯Ό λ‚˜νƒ€λ‚΄λŠ” 정보가 μžˆλŠ” μ‚¬λžŒμ΄ 있으면 κ³΅μœ ν•΄ μ£Όμ‹œλ©΄ μ‚΄νŽ΄λ³΄κ² μŠ΅λ‹ˆλ‹€.

건배

μ•ˆλ…•ν•˜μ„Έμš” @rgomezp ,

버전 3으둜 λ‹€μš΄ κ·Έλ ˆμ΄λ“œν–ˆμ§€λ§Œ λ¬Έμ œκ°€ 계속 λ°œμƒν•©λ‹ˆλ‹€.

λ‹€λ₯Έ νŒ¨ν‚€μ§€λ₯Ό λ‹€μš΄ κ·Έλ ˆμ΄λ“œν•΄μ•Όν•©λ‹ˆλ‹€.

@rgomezp κ·Έλž˜μ„œ, 여기에 μƒˆλ‘œμš΄ ν…ŒμŠ€νŠΈλ₯Ό ν•  버전이 μžˆμŠ΅λ‹ˆκΉŒ?

μΆ©λŒμ€ IAPκ°€ μ•„λ‹Œ 단일 μ‹ ν˜Έμ—μ„œ λ°œμƒν•˜κ³  IAP와 OneSignal μ‚¬μ΄μ—μ„œ λ°œμƒν•©λ‹ˆλ‹€. IAPλŠ” μ œν’ˆμ˜ 성곡에 더 μ€‘μš”ν•˜λ―€λ‘œ IAPκ°€ λ‹€λ₯Έ νŒ¨ν‚€μ§€μ—μ„œ μΆ©λŒμ„ ν•΄κ²°ν•  수 μžˆμ„μ§€ μ˜μ‹¬λ˜κΈ° λ•Œλ¬Έμ— 단일 μ‹ ν˜Έμ—μ„œ λ§ˆμ΄κ·Έλ ˆμ΄μ…˜ν•΄μ•Όν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. .

@mozadeh ,
react-native-iap 버전 _after_ 5.xxμ—μ„œλ§Œ λ°œμƒν•˜κΈ° μ‹œμž‘ν•œ OneSignal의 λ¬Έμ œλŠ” λ¬΄μ—‡μž…λ‹ˆκΉŒ?

@PradoGuilherme OPλŠ” 4 가지 버전이 μ •μƒμ μœΌλ‘œ μž‘λ™ν•œλ‹€κ³ λ³΄κ³ ν–ˆμŠ΅λ‹ˆλ‹€. 버전 5 μ΄μƒμ—μ„œλ§Œ μ‹œμž‘λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

IAP μ—…λ°μ΄νŠΈλŠ” μƒˆλ‘œμš΄ Android / iOS 버전을 μ§€μ›ν•©λ‹ˆλ‹€. 이 λ¬Έμ œλŠ” Androidμ—μ„œλ§Œ λ°œμƒν•˜λ©° 버전 5.0.0의 react-native-iap κ΄€λ ¨ λ³€κ²½ 사항은 Fixes on missing [userId] and [profileId] on android #1141 이고 Support Amazon IAP feature#1134 이 두 νŒ¨ν‚€μ§€ (즉, ν•˜λ‚˜μ˜ μ‹ ν˜Έμ™€ IAP)κ°€ μΆ©λŒν•©λ‹ˆλ‹€. ν•œ 지점. 여기에 제기 된 λ¬Έμ œλŠ” 좩돌이 λ°œμƒν•œ μœ„μΉ˜ λ•Œλ¬Έμž…λ‹ˆλ‹€. λ‚΄ μƒκ°μ—λŠ” 이것이 단일 μ‹ ν˜Έ νŒ¨ν‚€μ§€μ— λŒ€ν•œ 비ꡐ적 μ‰¬μš΄ μˆ˜μ • 사항이라면 νŒ€μ—μ„œ 쑰사할 수 있으면 쒋을 κ²ƒμž…λ‹ˆλ‹€.

같은 λ¬Έμ œμ— 직면

"react-native-iap": "5.1.1",
"react-native": "^0.63.2",
"react-native-onesignal": "^4.0.4",

iap νŒ¨ν‚€μ§€λ₯Ό "4.6.3"으둜 λ‹€μš΄κ·Έλ ˆμ΄λ“œν–ˆμŠ΅λ‹ˆλ‹€. μž‘λ™ν–ˆμŠ΅λ‹ˆλ‹€!

μ•ˆλ…•! 쒋은 μ†Œμ‹μž…λ‹ˆλ‹€ @hrishiakhade

기타 λ¬Έμ œμ™€ κ΄€λ ¨ν•˜μ—¬ react-native-iap 으둜 문제λ₯Ό μ—¬μ‹­μ‹œμ˜€.

건배!

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰