chabokpush / chabok-client-rn

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

سازگاری با نسخه 0.59 #43

Closed ahmadina closed 5 years ago

ahmadina commented 5 years ago

وقت بخیر آیا اس دی کی چابک با ری اکت نیتیو 0.59 سازگار است؟

رویه رو طبق داکیومنت جلو رفتم اما با خطای error: package android.support.v4.content does not exist import android.support.v4.content.LocalBroadcastManager; ^ error: cannot find symbol import android.support.v4.app.NotificationCompat; ^ symbol: class NotificationCompat

مواجه شدم. از کد نمونه ای که گذاشته بودید چندین بار بررسی کردم و دقیقا همه چیز یکسان بود.

Husseinhj commented 5 years ago

آیا اس دی کی چابک با ری اکت نیتیو 0.59 سازگار است؟

بله سازگار هست.

برای اینکه در نسخه 0.59 از چابک بتونین استفاده کنین از دستور زیر استفاده کنین:

yarn add https://github.com/chabokpush/chabok-client-rn.git#dev
ahmadina commented 5 years ago

طبق چیزی که عرض کردید انجام دادم اما همچنان خطا بالا وجود دارد با نمونه کد نیز مقایسه شد یکسان بود همه چی. دلیل خاصی داره این خطا؟

Husseinhj commented 5 years ago

طبق چیزی که عرض کردید انجام دادم اما همچنان خطا بالا وجود دارد با نمونه کد نیز مقایسه شد یکسان بود همه چی. دلیل خاصی داره این خطا؟

امکانش هست نسخه gradle plugin و gradle رو در اختیار ما قرار بدید؟

همچنین با حفظ مسائل امنیتی گریدل اپلیکیشن خودتون رو برای ما ارسال کنید تا نسخه com.android.support:appcompat و همچنین buildTools رو بررسی کنیم

ahmadina commented 5 years ago

build.gradle:

classpath 'com.android.tools.build:gradle:3.3.0'

app/build.gradle:

compileSdkVersion = 28 buildToolsVersion = '28.0.3'

implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}" implementation 'com.android.support:support-v4:27.0.3'

compile 'me.leolin:ShortcutBadger:1.1.22@aar' compile 'com.adpdigital.push:chabok-lib:2.17.1' compile "com.google.android.gms:play-services-gcm:15.0.1" implementation 'com.android.installreferrer:installreferrer:1.0'

این اطلاعات کافیه؟

ahmadina commented 5 years ago

مشکلی که هست به طور دقیق در فایل AdpPushClientModule این قسمت خطا داره

import android.support.v4.app.NotificationCompat;
import android.support.v4.content.LocalBroadcastManager;

و پیدا نمیشه

Husseinhj commented 5 years ago

باید نسخه‌های این دو dependency یکسان باشه:

implementation 'com.android.support:appcompat-v7:28.+'
implementation 'com.android.support:support-v7:28.+'

همچنین dependancyهای خودتون رو با نسخه گریدلی که دارین به implementation تغییر بدید:

implementation 'me.leolin:ShortcutBadger:1.1.22@aar'
implementation 'com.adpdigital.push:chabok-lib:2.17.1'
implementation 'com.google.android.gms:play-services-gcm:16.0.0'
implementation 'com.android.installreferrer:installreferrer:1.0'
ahmadina commented 5 years ago

درباره implementation 'com.android.support:support-v7:28.+' مطمئن هستید؟

چون توی داک https://developer.android.com/topic/libraries/support-library/packages#v4 نداره همچین چیزی؟ و نصبشم نمیکنه

Husseinhj commented 5 years ago

شما از این dependency استفاده می‌کنین؟

نمونه کد ریکت‌نیتو چابک

ahmadina commented 5 years ago

بله دقیقا. مشکل از یک فایل داخلی داخل لایبرریه. من احتمال میدم سیستم شما از قبل داره نصب به همین دلیل مشکلی پیش نمیاد روی ۵۹ import android.support.v4.app.NotificationCompat; import android.support.v4.content.LocalBroadcastManager; که این دو کلاس در androidx موجود هستن الان

ahmadina commented 5 years ago

مشکل حل شد. داخل فایل AdPushClientModule.java لایبرری های اندروید ایکس را جایگزین دو فایل زیر کردم و خطا حل شد import android.support.v4.app.NotificationCompat; import android.support.v4.content.LocalBroadcastManager;