وصف:
عند الاتصال بـ OneSignal.init()
في Android ، يتعطل التطبيق مع ظهور الخطأ Java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process com.reactnativeprototype. Make sure to call FirebaseApp.initializeApp(Context) first
عند عدم استدعاء init وتهيئة الطريقة القديمة في build.gradle
إطلاق الحدث ids
مطلقًا.
بيئة
SDK: v3.2.3
خطوات إعادة إنتاج المشكلة:
OneSignal.init()
في Android. التطبيق سوف يتعطل على الفوراملا في حل ايضا .. 😔
المشكلة نفسها
@ bighitbiker3 إذا قمت بتهيئة الطريقة القديمة - باستخدام build.gradle ، يمكنك استدعاء OneSignal.configure()
في JS لتنشيط الحدث ids
.
فيما يتعلق بمشكلة FCM بالتحديد ، سنحقق في الأمر ، شكرًا على الإبلاغ
حتى استدعاء التهيئة مع التهيئة القديمة لا يطلق حدث المعرف بالنسبة لي
مرسل من الايفون الخاص بي
في 19 أيار (مايو) 2018 ، الساعة 11:28 ، كتب Brad Hesse [email protected] :
@ bighitbiker3 إذا قمت بتهيئة الطريقة القديمة - باستخدام build.gradle ، يمكنك استدعاء OneSignal.configure () في JS لتنشيط حدث المعرفات.
فيما يتعلق بمشكلة FCM بالتحديد ، سنحقق في الأمر ، شكرًا على الإبلاغ
-
أنت تتلقى هذا لأنه تم ذكرك.
قم بالرد على هذه الرسالة الإلكترونية مباشرةً ، أو اعرضها على GitHub ، أو قم بكتم صوت الموضوع.
@ bighitbiker3 نفس الشيء بالنسبة لي. لقد جربت العديد من الأشياء واضطررت إلى الرجوع إلى الإصدار 3.1.4 لجعله يعمل مرة أخرى مع React Navigation (RN 0.55.4).
@ Nightsd01 الخطأ الذي أحصل عليه عند محاولة تشغيل OneSignal.configure()
للحصول على المعرفات هو You must initialize OneSignal before getting tags! Moving this tag operation to a pending queue.
. يأتي هذا من Android SDK هنا .
لقد حاولت وضعه في مهلة للتأكد من تشغيل رمز بدء Android قبل أن أتصل بأي شيء ولكني ما زلت أحصل على الخطأ أعلاه.
أواجه صعوبة في تصحيح الأخطاء من هناك لأنني مبتدئ جدًا عندما يتعلق الأمر باستيراد المكتبات الخارجية في Android و RN 😅.
@ bighitbiker3 يرجى محاولة التحديث إلى 3.2.4 من SDK
أنا في الإصدار 3.2.4 وأتلقى نفس رسالة الخطأ بالضبط عندما أتصل بـ OneSignal.init()
أنا أستخدم 3.2.4 وأواجه نفس الخطأ مع Onesignal.init()
في الوقت الحالي ، إنه يعمل بالنسبة لي:
لقد قمت بتحديث build.gradle
لاستخدام إصدار أحدث (3.0.1) مثل: ... / أمثلة / RNOneSignal / android / build.gradle
وقم أيضًا بتحديث gradle-wrapper.properties
الخاص بي لـ gradle-4.1 كما في: ... / أمثلة / RNOneSignal / android / gradle / wrapper / gradle-wrapper.properties
بعد ذلك بدأت تظهر لي بعض الأخطاء ، ثم قمت بتغيير app/build.gradle
:
...
dependencies {
...
compile (project(':react-native-onesignal')){
exclude group: "com.google.android.gms"
}
compile ("com.google.android.gms:play-services-base:12.0.1") {
force = true;
}
}
...
ramonsenadev التي عملت ، شكرا!
لأي شخص لا يزال يواجه مشكلة في هذا الأمر ، لاحظ أنه تم تحديث تعليمات إعداد React Native مؤخرًا. هذا القسم الجديد على وجه الخصوص هو ما جعل كل شيء يعمل بالنسبة لي في 3.2.4. لا يزال لديّ compileSdkVersion
و buildToolsVersion
تم ضبطهما على الإعدادات الافتراضية لـ React Native.
ramonsenadev شكرا جزيلا. نجح الحل الخاص بك.
بضع خطوات أخرى قمت بها بعد الانتقال إلى الإصدار 3.2.4 من oneignal هي:
الإصدار 26
buildToolsVersion "26.0.1"
الإصدار 26
تأكد أيضًا من تحديث إصدار مكتبة دعم android
ترجمة "com.android. support: appcompat-v7 : 26.0.1"
اضطررت أيضًا إلى إضافة ما يلي في الجزء السفلي من app / build.gradle
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.android.support') {
if (!requested.name.startsWith("multidex")) {
details.useVersion '26.0.1'
}
}
}
}
شكرا لفريق OneSignal! يبدو أنه ثابت في 3.2.4. يرجى مراجعة الرابط الموجود في تعليق @ jsouza181 . عملت بشكل رائع بالنسبة لي
التعليق الأكثر فائدة
في الوقت الحالي ، إنه يعمل بالنسبة لي:
لقد قمت بتحديث
build.gradle
لاستخدام إصدار أحدث (3.0.1) مثل: ... / أمثلة / RNOneSignal / android / build.gradleوقم أيضًا بتحديث
gradle-wrapper.properties
الخاص بي لـ gradle-4.1 كما في: ... / أمثلة / RNOneSignal / android / gradle / wrapper / gradle-wrapper.propertiesبعد ذلك بدأت تظهر لي بعض الأخطاء ، ثم قمت بتغيير
app/build.gradle
: