javascript شرح react - خطأ في استدعاء Appregistry.runApplication في رد فعل الأصلي




6 Answers

واجهت نفس المشكلة التي لديك حاليًا منذ بضعة أيام. بالنسبة لي كان جهاز حقيقي.

من كل بحثي ، كان الحل الذي نجح بالنسبة لي هو ما يلي:

عند تشغيل تطبيقك عن طريق كتابة react-native run-android ، يظهر الخطأ.

لذلك ، الوصول إلى الدليل الذي يحتوي على "adb.exe" (بالنسبة لي كان C: \ Users \ username \ AppData \ Local \ Android \ Sdk \ platform-tools \)

افتح محطة من هنا. واكتب adb reverse tcp:8081 tcp:8081

بعد ذلك ، من خلال إعادة تحميل التطبيق على الهاتف ، يجب أن يعمل.

آمل أن يكون هذا سيساعدك !! (إن لم يكن ، عار علي)

في صحتك ؛)

تصحيح :

لقد وجدت حلًا أكثر ملاءمة لحل هذه المشكلة.

عندما تبدأ تشغيل "react-android-react-android" ، قد يكون لديك تعليق يقول "adb لم يتم التعرف عليه كأمر داخلي أو خارجي ..."

حسنًا ، بدلاً من استخدام الأمر adb يدويًا ، يمكنك إضافة متغير بيئة يؤدي إلى adb.exe.

ما عليك سوى الانتقال إلى "لوحة التحكم"> "النظام والأمان"> "النظام"> "إعدادات النظام المتقدمة".

من هنا ، انقر فوق "متغيرات البيئة". ابحث عن متغير "المسار" في قسم "متغيرات النظام". اضغط عليها واضغط على زر "تحرير".

هناك يمكنك إضافة مسار جديد لهذا المتغير. ما عليك سوى النقر على الزر "جديد" وكتابة مسار adb.exe. للإعفاء C: \ Users \ username \ AppData \ Local \ Android \ Sdk \ platform-tools \

(بالنسبة إلى أقدم إصدارات Windows ، يجب إضافة "؛ C: \ Users \ username \ AppData \ Local \ Android \ Sdk \ platform-tools \" إلى المحتوى.)

هذا هو ، الآن adb reverse tcp:8081 tcp:8081 سيتم تشغيل adb reverse tcp:8081 tcp:8081 القيادة تلقائيا بناء.

آمل أن يساعدك هذا أكثر!

native download

أحاول تشغيل تطبيق react-native على محاكي android ، لكنني أتلقى خطأً مثل

خطأ في استدعاء Appregistry.runApplication

AVD: 'Nexus_5X_API_23 (AVD) - 6.0 نظام التشغيل: Windows 10

الرجاء المساعدة في هذا؟




وفقا لي هذا الخطأ يأتي عندما:

1) لم تقم بتشغيل جهاز الرزم في المكان المناسب ، أي أن تضغط على المجلد الخطأ لتشغيل جهاز رد فعل أصلي ، لذا عليك فقط الانتقال إلى دليل مشروعك وتشغيل react-native start .

2) عند رمز شيء خاطئ فيما يتعلق بوحدة Appregistry.

3) اغلاق كل شيء Xcode ، packager ، محاكاة وغيرها وإعادة تشغيله مرة أخرى.

4) من الخطأ شيء واحد في ذهني هو اسم الوحدة

AppRegistry.registerComponent('AppName', () => componentName)

matches with the @"AppName" on your AppDelegate.m on the call for

[[RCTRootView alloc] initWithBundleUrl:...
                            moduleName:@"AppName"
                         launchOptions:...

5) نظرًا لأننا نستخدم مكون رد الفعل ، فنحن نحتاج إلى إعطاء الحرف الأول من اسم الصف مع وضع الحروف.

6) دعونا نرى ما هو الخطأ في index.android.js و index.ios.js

في صحتك :)




واجهت نفس المشكلة وتمكنت من حلها عن طريق تعيين جهاز الكمبيوتر المحلي كخادم التصحيح في محاكي android. افتح محاكي android ، Command + M لإحضار قائمة ، ثم انقر فوق "Dev Settings" ثم انقر فوق "Debug server host and port" واضبطه على 127.0.0.1:8081. ثم من داخل لك مشروع دليل المدى المدى يعمل على react-native run-android . آمل أن يساعد هذا.




تأكد من توفر المنفذ 8081. في حالتي يتم تشغيل أحد خدماتي على Port 8081 (web web server).




كنت أواجه نفس المشكلة بالضبط (لأن هذه رسالة عامة جدا) لكن المشكلة كانت مختلفة. في حالتي ، كان مشروعًا تم إنشاؤه حديثًا ، فالمحاكي لا يعمل ولكن جهازًا حقيقيًا يعمل.

كانت مشكلتي الحد الذي يمكن أن يتعامل inotify المراقبون على نظام لينكس بشكل افتراضي ، وهو نظام لينوكس kernel الفرعي الذي يعمل على توسيع أنظمة الملفات inotify التغييرات في نظام الملفات ، والإبلاغ عن هذه التغييرات مرة أخرى إلى التطبيقات واستخدامها على نطاق واسع ، بما في ذلك استوديو android والتفاعل محلي؛ في الوقت الذي كنت أحاول فيه تنفيذ react-native run-android تفاعلية ، تم تخصيص جميع المراقبين على نظامي ، مما أدى إلى فشل العملية على هذه الرسالة نفسها.

لتغيير الحد الأقصى من المراقبين الذين يمكن أن يتعاملوا معهم ، يجب عليك تحرير الملف sysctl.conf ، والذي سيكون موجودًا عادةً في /etc/sysctl.conf أو /etc/sysctl.d/custom_name.conf وأضف السطر التالي:

 fs.inotify.max_user_watches = 5242881

بعد كتابة الملف تحتاج إلى تنفيذ sysctl -p filename.conf حيث 'filename.conf' هو المسار والاسم أينما قمت بحفظ ملف .conf لـ sysctl. بمجرد تطبيق التغييرات يجب أن يعمل كل شيء كما هو متوقع.




بالنسبة لي ، كنت بحاجة فقط إلى إضافة أدوات النظام الأساسي إلى متغير بيئة المسار الخاص بي بحيث يمكن أن يبدأ التفاعل الأصلي في خادم adb.

كنت أحصل على:

'adb' is not recognized as an internal tool or program

لإصلاح هذا ، أضفت التالي إلى متغير بيئة Path بي.

C:\Users\<Username>\AppData\Local\Adnroid\sdk\platform-tools

ثم تشغيل react-native run-android !




Related