chabok-io / chabok-client-rn

Chabok react native wrapper
https://doc.chabokpush.com/react-native-bridge/introducing.html
3 stars 0 forks source link

مشکل در نصب اولیه چابک #5

Closed blueitco closed 4 years ago

blueitco commented 4 years ago

سلام. وقت بخیر

من نسخه 1.1.1 چابک رو از طریق لینک زیر قدم به قدم پیش رفتم و نصب کردم

https://doc.chabok.io/react-native-bridge/sdk-setup-old.html

توی نسخه اندروید موقعی که پروژه رو میخوام بیلد کنم با ارور زیر مواجه میشم:

> Task :app:compileDebugJavaWithJavac FAILED
G:\React Native\BlueApp\android\app\src\main\java\com\blueapp\MainApplication.java:65: error: cannot find symbol
        ChabokReactPackage.notificationOpened(message, notificationAction);
                          ^
  symbol:   method notificationOpened(ChabokNotification,ChabokNotificationAction)
  location: class ChabokReactPackage
1 error

طبق آموزشی که داده شده باید قطعه کد زیر رو توی متد onCreate در فایل MainApplication.java قرار بدم. منم همین کارو کردم. ولی از همین یه تیکه کد داره ایراد میگیره. اینو که برمیدارم پروژه بیلد میشه

 AdpPushClient.get().addNotificationHandler(new NotificationHandler() {
      @Override
      public boolean notificationOpened(ChabokNotification message, ChabokNotificationAction notificationAction) {
        ChabokReactPackage.notificationOpened(message, notificationAction);
        return super.notificationOpened(message, notificationAction);
      }
    });
Husseinhj commented 4 years ago

من نسخه 1.1.1 چابک رو از طریق لینک زیر قدم به قدم پیش رفتم و نصب کردم

دلیل خاصی داره که از این نسخه استفاده می‌کنین؟

پیشنهاد می‌کنیم حتما از نسخه ۲ کتابخانه ریکت‌نیتو چابک استفاده کنین.

مستندات راه‌اندازی نسخه ۲ کتابخانه ریکت‌نیتو چابک:

https://doc.chabok.io/react-native-bridge/sdk-setup.html#%DB%B1--%D9%86%D8%B5%D8%A8-%DA%A9%D8%AA%D8%A7%D8%A8%D8%AE%D8%A7%D9%86%D9%87

blueitco commented 4 years ago

یکی از دوستانم مدت هاست داره از نسخه 1 استفاده میکنه و خیلی هم راضیه و میگه باگی نداره این نسخه

اتفاقا نسخه ی 2 رو هم نصب کردم. ولی بعد از نصب دیگه کلا پروژه بیلد نمیشه با این ارور مواجه میشم

Execution failed for task ':app:generateDebugBuildConfig'.
> org.xml.sax.SAXParseException; systemId: file:/G:/React%20Native/BlueApp/android/app/src/main/AndroidManifest.xml; lineNumber: 5; columnNumber: 97; The prefix "tools" for attribute "tools:node" associated with an element type "uses-permission" is not bound.

اینو طبق آموزش خودتون گذاشته بودم توی فایل اندروید مانیفست. البته مشخص نکردبن کجای اون فایل باید قرار بدم ولی هرجاش باشه ارور میده.بعد که این قسمت رو از فایل اندروید مانیفست حذف میکنم پروژه بیلد میشه

ولی این بار با پیغام keeps stopping مواجه میشم و از اپلیکیشن میپره بیرون

لازم به ذکره که بنده از ری اکت نسخه 59.9 استفاده میکنم

Husseinhj commented 4 years ago

یکی از دوستانم مدت هاست داره از نسخه 1 استفاده میکنه و خیلی هم راضیه و میگه باگی نداره این نسخه

باعث افتخارمون هست.

برای مشکلی در بالا اشاره کردید مربوط به import های پکیج چابک هست که در صورت اضافه کردن importهای چابک مشکل شما حل خواهد شد برای این موضوع می‌تونین نمونه کد ما رو مشاهد کنین:

https://github.com/chabok-io/chabok-starter-rn/blob/81c20a4b9b7e860fbb06dbc7f43e15351c343355/android/app/src/main/java/com/chabokstarterrnbridge/MainApplication.java#L3-L19

اتفاقا نسخه ی 2 رو هم نصب کردم. ولی بعد از نصب دیگه کلا پروژه بیلد نمیشه با این ارور مواجه میشم

این موضوع به فایل AndroidManifest پروژه‌اتون هست که در این اissue در stackoverflow بهش اشاره شده

https://stackoverflow.com/questions/55334431/facing-below-error-toolsnode-associated-with-an-element-type-uses-permission

blueitco commented 4 years ago

توی نسخه 1 که نصب کردم عینا نمونه فایلی رو لینک دادین کپی کردم تو پروژه.. منظورم MainApplication.java هست ایمپورت های قبلی پروژه خودمو هم باز اضافه کردم بهش مجدد به همون ارور قبلی خوردم

G:\React Native\BlueApp-chabok1\android\app\src\main\java\com\blueapp\MainApplication.java:98: error: cannot find symbol
          ChabokReactPackage.notificationOpened(message, notificationAction);
                            ^
  symbol:   method notificationOpened(ChabokNotification,ChabokNotificationAction)
  location: class ChabokReactPackage
Note: G:\React Native\BlueApp-chabok1\android\app\src\main\java\com\blueapp\MainApplication.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
1 error
Husseinhj commented 4 years ago

@mmdarzi آیا import زیر در این فایل وجود دارد؟

import com.adpdigital.push.rn.ChabokReactPackage;

لطفا در صورت امکان و حفظ مسائل امنیتی کدهای این فایل رو برای ما ارسال کنین.

blueitco commented 4 years ago

بله تمام import هارو عینا کپی کردم از لینکی که فرستادین

بله حتما. بفرمایید چه جوری بفرستم خدمت تون؟

blueitco commented 4 years ago

من یه دونه پروژه جدید ری اکت نسخه 59.9 نصب کردم. گفتم شاید چابک با ماژول هایی که روی پروژه م نصبه مشکل داره. ولی باز هم به همین ارور خوردم. الان شما یه تست بکنید ببینید میتونید روی نسخه 59 نصب کنید چابک رو یا نه؟

برای نصب از این لینک رفتم: https://doc.chabok.io/react-native-bridge/sdk-setup-old.html

دستور نصب هم این شکلی وارد کردم : npm install react-native-chabok@1.1.1 --save

Husseinhj commented 4 years ago

پیرو تماس تلفنی که باهم داشتیم. مشکل شما به خاطر استفاده از importهای غیر مرتبط به چابک در فایل MainApplication.java بود که در مستندات به اون اشاره شده بود. پس از حذف این importها مشکل حل شد.