نصب چشمک

۱. دریافت کتابخانه چشمک

ابتدا نیاز است تا کتابخانه چشمک را از اینجا دریافت کنید.

۲. افزودن کتابخانه چشمک

دانلود پروژه نمونه ( نصب – ارسال پوش)

شما باید کتابخانه چشمک را، به کتابخانه های B4A اضافه کنید. برای این موضوع کتابخانه دانلود شده را در مسیر کتابخانه های اضافی (Additional libraries) کپی کنید.

* توصیه می شود از آخرین ادیتور بیسیک (B4A v9.0 و یا بالاتر)، آخرین نسخه JDK ( سری 1.8 به بالا – 64 بیتی )، و اخرین سری SDK اندریود (به همراه کتابخانه های  support و  Google Play Services ) استفاده شود. شما می توانید SDK پیشنهادی ما را، از آخر این صفحه دانلود کنید.

۳. افزودن Manifest

از منوی Project گزینه Manifest Editor را انتخاب کرده و در پنجره باز شده مقادیر زیر را به محتوای فایل Manifest خود اضافه کنید. و متناسب با توضیحات بعدی فایل Manifest خود را شخصی سازی کنید. مقدار APP_KEY را در تنظیمات پنل چشمک و در منوی برنامه ها دریافت کنید و با MY_APP_KEY در رشته زیر، جایگزین نمایید.

AddApplicationText(<meta-data android:name="AppKey" android:value="MY_APP_KEY" />)
CreateResourceFromFile(Macro, b4aCheshmak-3_4_2.Cheshmak)

در صورتی که بخواهید از فایربیس به صورت مستقیم و در کنار چشمک استفاده کنید، بجای خط بالا این کد را اضافه کنید:

AddApplicationText(<meta-data android:name="AppKey" android:value="MY_APP_KEY" />)
CreateResourceFromFile(Macro, b4aCheshmak-3_4_2.Cheshmak_with_firebase)

۴. فراخوانی چشمک

ابتدا از لیست ماژول ها، ماژول b4aCheshmak و FirebaseNotifications  و FirebaseAdMob را فعال کنید. ( در صورتی که نمی خواهید از درآمد دلاری چشمک استفاده کنید می توانید، FirebaseAdMob را حذف کنید)

مراحل نصب پایان یافت. شما می‌توانید اپلیکیشن خود را بیلد گرفته و بر روی گوشی خود نصب کنید. با رفرش کردن صفحه پنل چشمک پس از یک دقیقه، دستگاه شما باید در صفحه “لیست کاربران” پنل چشمک اضافه شده باشد و شما می توانید به آن پوش نوتیفیکیشن ارسال نمایید.

ارسال داده JSON

دانلود پروژه نمونه ( ارسال داده جیسون)

سرویس زیر را دانلود کنید و در پروژه خود اضافه کنید:

دانلود سرویس دریافت جیسون – cheshmakService

در قسمت ارسال پوش، تیک ارسال JSON را بزنید


 

مطابق عکس زیر می توانید به داده جیسون، دسترسی داشته باشید:

 

باز شدن برنامه با کلیک بر پوش

باز شدن اکتیویتی بعد از ارسال پوش

جهت باز شدن اکتیویتی بعد از ارسال پوش از منوی Project روی Manifest Editor را انتخاب کرده و خط زیر را به آن اضافه کنید.

​AddActivityText(REPLACE_WITH_ACTIVITY_NAME,<meta-data android:name="cheshmakPush" android:value="openActivityOnPush"/>​)

نام اکتیویتی مورد نظر را با REPLACE_WITH_ACTIVITY_NAME عوض نمایید. برای نمونه می توانید از Main استفاده کنید.
با کمک از کد زیر میتوانید دیتای ارسالی ( جیسون) از پنل چشمک را، در اکتیویتی مورد نظر را دریافت کنید.

​Sub Activity_Create(FirstTime As Boolean)

 Activity.LoadLayout("Layout1")

 Dim intent As Intent
 intent =Activity.GetStartingIntent()
 Log(intent.GetExtra("me.cheshmak.data")) 'Read Cheshmak Data

End Sub
 

 

 

ریموت کانفیگ

با استفاده ریموت کانفیگ چشمک شما می‌توانید یک JSON را به صورت key-value از طریق پنل چشمک تنظیم نموده و هر یک از کلیدها و مقادیر آن را در  اپ خود دریافت نمایید. این سرویس مستقل از ریموت کانفیگ فایر بیس می باشد.

این امکان، به اپلیکیشن شما این قابلیت را می‌دهد تا بتوانید قسمت‌های قابل تنظیم اپلیکیشن خود را از طریق چشمک تنظیم نمایید. به عنوان مثال می‌توانید یک آپشن با نام bgColor در برنامه خود قرار داده و آن را در پنل چشمک خود در منوی کانفیگ تنظیم نمایید و هر بار که مایل بودید رنگ پس‌زمینه اپلیکیشن خود را تغییر دهید.

 

Dim remoteConfig As RemoteConfig

remoteConfig.getDouble("myNumber", 0.0)
remoteConfig.getInt("myInt", 105)
remoteConfig.getLong("myLong", 222222222)
remoteConfig.getString("bgColor", "#FFFFFF")
remoteConfig.getBoolean("myBool", False)

پارامتر دوم هر یک از متدها مقدار پیش‌فرض آن می‌باشد. به عبارتی در صورتی که کانفیگ مربوطه در سرور چشمک وجود نداشته باشد خروجی این متد پارامتر دوم تعیین شده می‌باشد.

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

 

سوال: آیا نیاز است کدی را پیاده سازی کنم تا کانفیگ را از سرورهای چشمک دریافت شود؟
پاسخ: خیر. sdk چشمک این کار را انجام داده و در صورت تغییر کانفیگ آن را دریافت می‌کند.

خطاهای رایج

اقدامات اولیه

 نسخه ادیتور بیسیک  9.0 یا بالاتر باشد. ادیتور خود را از سایت های معتبر دانلود کنیم چرا که نسخه های آزمایشی ادیتور بیسیک باعث ایجاد اشکال خواهد شد.

نصب JDK 1.8 ، سری 64 بیتی

نصب SDK آندروید سری 28 به صورت کامل. در صورتی که به دلیل تحریم ها در نصب مشکل دارید می توانید در جست وجو در سایت های ایرانی، SDK را به صورت افلاین، نصب کنید. 

در آخر چک کنید که در مسیر ( tool — Configure paths ) به مسیر درست اشاره می شود

توصیه های سایت اصلی

 

اطمینان از نصب بودن کتابخانه های ضروری

در صورتی که برای اپدیت کتابخانه های بیسیک (منوی Tools و  SDK Manager) با خطا رو به رو می شوید، می توانید راهکار زیر را دنبال کنید.

نصب کتابخانه های لازم

 

اطمینان از به روز بودن SDK اندروید

دانلود SDK

برای اطمینان از کامل بودن و به روز بودن SDK آندروید خود، بهتر است فایل زیر را دانلود کنید و در تنظیمات ادیتور، مسیر SDK اندریود را عوض کنید. پروژه خود را کلین کنید و دوباره خروجی بگیرید.

 

Maven artifact not found

ممکن است بعد از اضافه کردن کتابخانه چشمک، با خطای  Maven artifact not found مواجه شوید. این خطا به این معنا است که نرم افزار b4a نمی تواند کتابخانه های لازم را برای کامپایل برنامه شما پیدا کند. برای حل این مشکل  به منوی Tools و سپس SDK Manager بروید ( به دلیل تحریم آی پی های ایران بهتر است از نرم افزار های لازم استفاده کنید) و کتابخانه های لازم را جستجو و نصب کنید.

 

 

java.lang.IllegalArgumentException: already added

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

 

خطای تایم اوت

در صورت رخ دادن خطای تایم اوت در زمان کامپایل،  مقدار تایم اوت پروژه خود را بیشتر کنید . (مثلا 1200)

 

 

java.lang.OutOfMemoryError: GC overhead limit exceeded

پیشنهاد اول: مطمئن شویم ادیتور بیسیک بسته باشد. 

 به پوشه
C:\Users\<Your user name>\AppData\Roaming\Anywhere Software\Basic4android
برویم. ( کلید Windows+R رو فشار بدید و %appdata% رو تایپ کنید، به مسیر Anywhere Software\Basic4android می رویم)

فایلی  با پسوند ini را پیدا کنید، این فایل رو باز می کنیم. عبارت MaxRamForDex رو جست و جو و به جای عدد مقابلش  عدد 4096 ( یا بیشتر) را قرار بدهید و تغییرات را ذخیره کنید.( این مقدار را می توانید مناسب با رم کامپیوتر خود بیشتر یا کمتر بگذارید)