جستجو در تالار

در حال نمایش نتایج برای برچسب های 'آموزش'.



تنظیمات بیشتر جستجو

  • جستجو بر اساس برچسب

    برچسب ها را با , از یکدیگر جدا نمایید.
  • جستجو بر اساس نویسنده

نوع محتوا


تالار ها

  • اخبار سایت
    • قوانین انجمن
    • اخبار و اطلاعیه ها
    • انتقادات و پیشنهادات
  • بیسیک فور اندروید
    • آموزش ها
    • کتابخانه ها
    • سورس کد ها
    • قطعه کد ها
    • سوالات عمومی
    • معرفی برنامه های شما
    • دانلود نسخه های مختلف
  • اندروید استدیو
    • کتابخانه ها
    • سورس کد ها
    • قطعه کد ها
    • سوالات عمومی
    • معرفی برنامه های شما
  • زبان های برنامه نویسی دیگر
    • PHP
  • بخش گرافیک
    • ابزار های طراحی
    • طرح های لایه باز
    • نمونه رابط کاربری (UI)
  • بخش VIP
    • سورس کد ها
    • کتابخانه ها
    • آموزش ها
    • بخش پشتیبانی
  • متفرقه
    • بحث آزاد

دسته ها

  • بیسیک فور اندروید
    • کتابخانه ها
    • سوس کدها
    • نسخه های مختلف b4a

دسته ها

  • Articles

6 نتیجه پیدا شد

  1. Batch یکی از پیشگامان ارتباطات و اطلاع رسانی پوش است که برای iOS, Android & mobile websites طراحی شده است. مناسب برای آمارگیری دقیق از تعداد نصب . حداقل نسخه : Android 4.0.3 (API Level 15) و بالاتر قبل از هرکاری : 1- وارد Batch's dashboard شده و اپ اندرویدی جدیدی بسازید 2- حالا بگذارید کلید های پوش شما ساخته بشن ؛ بعد اون هارو توی Batch's dashboard قرار بدید *کلید Server API Key رو دریافت کنید* اینجا برای یافتن Server Api Key دو مرحله پیش رو دارید ابتدا با فیلترشکن وارد Firebase console بعد از اینکه وارد حسابتون شدید ، در صورت وجود ، پروژه ای رو انتخاب یا ایجاد کنید. سپس روی + یا نام پروژه ی موجود کلیک کرده و وارد "Project settings" شوید. روی عنوان "Cloud Messaging" کلیک کرده و Server API Key رو کپی کنید. * فایل google-services.json خودتون رو که از فایربیس دانلود کردید رو کنار پروژه قرار بدید (عین تصویر زیر) *پیکربندی پوش بچ* حالا به ⚙ Settings → General در Batch's dashboard رفته ، زبان پیش فرض را انتخاب کرده و Server API Key را در⚙️ Settings → Push settings وارد کنید . * دقت داشته باشید که پکیج نیم باید در برنامه شما ، بچ و فایربیس یکسان باشد * * گام بعدی : بعد از کپی کردن محتویات فایل فشرده ی خریداری شده ، کتابخونه ی Hitex_Batch رو تیک بزنید . در Basic4Android وارد Project → Manifest Editor شده و پنج خط زیر رو به آخر کد اضافه کنید : (بجای YOUR_API_KEY یکی از کلید های Live یا Dev را وارد کنید) CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase) CreateResourceFromFile(Macro, FirebaseAnalytics.Firebase) CreateResourceFromFile(Macro, FirebaseAnalytics.FirebaseAnalytics) CreateResourceFromFile(Macro, Hitex_Batch.Manifast) AddReplacement($BatchApiKey$, YOUR_API_KEY) Dev API key: برای توسعه یا اهداف تستی استفاده می شود ، این نوع کلید شامل ثبت آمار نمی شود ، مراقب باشید اپ خود را با این کلید توی مارکت ها منتشر نکنید . Live API key: باید فقط در محیط تولید و در نسخه نهایی برنامه شما در مارکت استفاده شود . Batch's dashboard → Settings → General * اضافه کردن پشتیبانی از پوش نوتیفیکیشن * برای اضافه کردن پشتیبانی از پوش نوتیفیکیشن ، بچ به firebase-core و firebase-messaging نسخه ی 11.0.0 و بالاتر نیاز دارد . ما به شدت استفاده از آخرین نسخه ی موجود رو پیشنهاد میکنیم (درحال حاضر 12.0.1) کد های زیر رو به پروژتون اضافه کنید : #AdditionalJar: com.google.firebase:firebase-core #AdditionalJar: com.google.firebase:firebase-messaging اگر میخواهید بچ به شناسه ی تبلیغاتی شما (Advertising ID) و دیباگ اشکال زدایی شما دسترسی داشته باشد ، استفاده کنید ، این شامل firebase-analytics هم می شود . نگران نباشید این گزینه ها کاملاً اختیاری هستند. #AdditionalJar: com.google.firebase:firebase-analytics #AdditionalJar: com.google.android.gms:play-services-ads-identifier در آخر مالتی دکس رو فعال کنید : #MultiDex: True چنانچه بعد از اضافه کردن موارد بالا با خطای Maven Artifact مواجه شدید ، پس از اطمینان از نصب آخرین نسخه ی Basic4Android نسخه ی ساپورت SDK خود را بروز رسانی کنید (به شدت پیشنهاد میشود از SDK خود ِبیسیک که توسط ارل ، ارائه شده استفاده کنید.) * نمایی از sdk خود بیسیک : * نتیجه را آزمایش کنید : * تبریک میگم شما بخشی از این آموزش رو انجام دادید. بعد از اینکه برنامه رو روی شبیه ساز یا دستگاه اندرویدی که گوگل پلی روی آن فعال است اجرا کردید ، باید کد زیر رو توی Log بیسیک مشاهده کنید : مورد دوم ممکن است بسته به انتخاب نوع Api Key یا استفاده نکردن از دیپندنسی های فایربیس Core و Messaging نمایش داده نشود . پس از انجام مراحل بالا در قسمت Settings → Debug میتوانید با Installation ID که توی لاگ دریافت کردید به مشخصات دستگاه اندرویدی رجیستر شده دسترسی داشته باشید و پوش تستی بفرستید . (پوش تستی را بر روی Dev Api تست کنید ، توکن ممکن است کمی با تأخیر ظاهر شود) * تصاویری از آمار نصب و پوش : سوالات متداول : آیا سرویس بچ رایگان است ؟ بچ طرح های رایگان و پولی با قابلیت های متفاوتی دارد که میتوان از طریق این صفحه به اون ها دسترسی داشت . (آمار نصب دقیق و تایید ارسال 500 پوش در دقیقه رایگان است) آیا میتوانم بچ را در چندین برنامه استفاده کنم ؟ بله میتوانید هر تعداد که خواستید ، برنامه اضافه کنید. آیا اعضای تیم من میتوانند برنامه های من را مدیریت کنند ؟ به عنوان سرپرست یا ادمین میتوانید افرادی از اعضای تیم تان را برای مدیریت برنامه هایتان ، ایجاد یا ویرایش کمپین های اعلان پوش تعیین کنید. آیا بچ امن است ؟ امنیت بالاترین الویت ماست ، تمامی فعالیت های ما از طریق دو روش encryption + SSL انجام می شود . آیا بچ در ایران کار می کند ؟ بله ، شما میتوانید با بچ به کاربران ایرانی تان نیز پوش ارسال کنید . چرا آمار برنامه یا برنامه های من در داشبرد بچ مشاهده نمی شود ؟ ابتدا مطمئن شوید که از کلید Live API key در برنامه تان استفاده کرده اید ، اگر باز هم مشکل دارید به این صفحه مراجعه کنید . یا به تیم پشتیبانی ما support@batch.com. ایمیل بزنید. به خاطر داشته باشید که آمار نصب و غیره با تأخیر حداکثر 24 ساعت ثبت می شوند . (به طور معمول نصب ها ساعت 12 هر ظهر و توکن ها در همان لحظه بروز رسانی می شوند.) توجه : 24 ساعت تأخیر در نمایش آمار نصب ، توی خود سایت Batch مطرح شده و برای نسخه ی Studio هم به همین صورته . چنانچه پس از گذشت 24 ساعت ، همچنان آماری را مشاهده نکردید ، مراحل ابتدایی نصب Hitex_Batch را مجدداً انجام دهید تا اشتباه هایتان را برطرف کنید.
  2. Sub Process_Globals Dim TAG_1 = "TAG_1", TAG_2 = "TAG_2" As Object End Sub Sub Globals Dim Volley As Hitex_VolleyX End Sub Sub Activity_Create(FirstTime As Boolean) Volley.Initialize("Volley") ' *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*- First Request Dim Params As Map Params.Initialize Params.Put("Key1", "Value1") Params.Put("Key2", "Value2") StartRequest("http://yourFirstSite.com", Volley.POST, TAG_1, Params) ' *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*- Second Request StartRequest("http://yourSecondSite.com", Volley.GET, TAG_2, Null) End Sub Sub StartRequest (Url As String, Method As Int, TAG As Object, Params As Map) Dim Request = Volley.StringRequest(Method,Url) As Hitex_Request If Params.IsInitialized Then Request.SetParams(Params) Request.SetTag(TAG) Volley.AddToRequestQueue(Request) End Sub Sub Volley_onResponse (Response As String) Dim Request = Sender As Hitex_Request Select Request.Tag Case TAG_1 : Log(TAG_1 & " - " & Response) Case TAG_2 : Log(TAG_2 & " - " & Response) End Select End Sub Sub Volley_onErrorResponse (Error As VolleyError) Log(Error) End Sub
  3. مثال ساده اول : Sub Globals Dim RVP As Hitex_RecyclerViewPager End Sub Sub Activity_Create(FirstTime As Boolean) RVP.Initialize("RVP") Activity.AddView(RVP,0,0,100%x,100%y) RVP.Orientation = RVP.HORIZONTAL RVP.SinglePageFling = True RVP.Show End Sub Sub RVP_onCreateViewHolder (Parent As Panel, ViewType As Int) '💎 onCreate 💎' Dim lbl As Label : lbl.Initialize("lbl") lbl.Gravity = Gravity.CENTER Parent.AddView(lbl,0,0,100%x,100%y) Parent.Color = Colors.RGB(Rnd(0,256),Rnd(0,256),Rnd(0,256)) End Sub Sub RVP_onBindViewHolder (Parent As Panel, Position As Int) '💠 onBind 💠' Dim lbl = Parent.GetView(0) As Label lbl.Text = "Text " & Position End Sub Sub RVP_GetItemCount As Int '💯 ItemCount 💯' Return 10 '/ItemList.Size End Sub مثال پیشرفته دوم : Sub Process_Globals Public TYPE_IMAGE = 0, TYPE_TEXT = 1, TYPE_BUTTON = 2 As Int End Sub Sub Globals Dim RVP As Hitex_RecyclerViewPager Type Layout(ViewType As Int, Text As String) Dim ItemList As List End Sub Sub Activity_Create(FirstTime As Boolean) RVP.Initialize("RVP") Activity.AddView(RVP,0,0,100%x,100%y) ItemList.Initialize RVP.Orientation = RVP.HORIZONTAL RVP.SinglePageFling = True RVP.Show AddNewPage(TYPE_IMAGE, "smart1.jpg") AddNewPage(TYPE_TEXT, "Hitex Recycler View") AddNewPage(TYPE_BUTTON, "GOTO Page 1") End Sub Sub RVP_onCreateViewHolder (Parent As Panel, ViewType As Int) '💎 onCreate 💎' Select (ViewType) Case TYPE_IMAGE : Dim img As ImageView : img.Initialize("img") img.Gravity = Gravity.FILL Parent.AddView(img,0,0,100%x,100%y) Case TYPE_TEXT : Dim lbl As Label : lbl.Initialize("lbl") lbl.Gravity = Gravity.CENTER : lbl.TextSize = 22 lbl.Typeface = Typeface.DEFAULT_BOLD Parent.AddView(lbl,0,0,100%x,100%y) Parent.Color = Colors.RGB(Rnd(0,256),Rnd(0,256),Rnd(0,256)) Case TYPE_BUTTON : Dim btn As Button : btn.Initialize("btn") btn.Gravity = Gravity.CENTER Parent.AddView(btn,10%x,30%y,80%x,30%y) Parent.Color = Colors.RGB(Rnd(0,256),Rnd(0,256),Rnd(0,256)) End Select End Sub Sub RVP_onBindViewHolder (Parent As Panel, Position As Int) '💠 onBind 💠' Dim Item = ItemList.Get(Position) As Layout Select (Item.ViewType) Case TYPE_IMAGE : Dim img = Parent.GetView(0) As ImageView img.Bitmap = LoadBitmap(File.DirAssets,Item.Text) Case TYPE_TEXT : Dim lbl = Parent.GetView(0) As Label lbl.Text = Item.Text Case TYPE_BUTTON : Dim btn = Parent.GetView(0) As Button btn.Text = Item.Text End Select End Sub Sub RVP_GetItemCount As Int '💯 ItemCount 💯' Return ItemList.Size End Sub Sub RVP_GetItemViewType (Position As Int) As Int '🎭 GetItemViewType 🎭' Dim Item = ItemList.Get(Position) As Layout Return Item.ViewType End Sub Sub AddNewPage (ViewType As Int, Text As String) Dim Item As Layout Item.ViewType = ViewType Item.Text = Text ItemList.Add(Item) RVP.notifyItemAdded End Sub Sub btn_Click RVP.GotoPage(0,True) End Sub
  4. فقط برای نسخه ی 7.0 به بالا برای حالت ListView : Sub SmoothScrollToPosition(Position As Int, Factor As Float) Dim Vertical = 1, Horizontal = 0 As Int Dim ReverseLayout = False As Boolean Dim RTL = False As Boolean Dim R As Reflector Dim CustomLinearLayout As JavaObject CustomLinearLayout = CustomLinearLayout.InitializeNewInstance("layout.b4a.view.CustomLinearLayout",Array(R.GetContext,Vertical,ReverseLayout,Factor,RTL)) LV.RecyclerView.RunMethod("setLayoutManager",Array(CustomLinearLayout)) LV.SmoothScrollToPosition(Position) End Sub نحوه استفاده SmoothScrollToPosition(itemList.Size -1, 100) برای حالت GirdView : در مثال قبلی CustomLinearLayout را به CustomGridLayout تغییر بدید بعد از آرگومان R.GetContext ، آرگومان جدیدی به نام spanCount به منظور تعداد ستون های گرید اضافه کنید
  5. نحوه ی استفاده از Refresh برای ریسایکلر ویو (نسخه 6+) Sub Globals Dim LV As Hitex_LayoutView Dim RL As Hitex_RefreshLayout End Sub Sub Activity_Create(FirstTime As Boolean) LV.Initializer("LV").ListView.RefreshLayout.ReverseLayout.Build Activity.AddView(LV,0,0,100%x,100%y) RL.Initialize(LV, "RL") RL.Direction = RL.DIRECTION_TOP RL.SchemeColors = Array As Int (Colors.Red, Colors.Black, Colors.Blue) LV.Show End Sub Sub RL_onRefresh (Direction As Int) Select (Direction) Case RL.DIRECTION_TOP: Log("TOP") Case RL.DIRECTION_BOTTOM: Log("BOTTOM") End Select End Sub Sub LV_onCreateViewHolder (Parent As Panel, ViewType As Int) '# onCreate #' Dim lbl As Label: lbl.Initialize("lbl") lbl.TextColor = -2 : lbl.TextSize = 18 Parent.AddView(lbl,0,0,100%x,10%y) End Sub Sub LV_onBindViewHolder (Parent As Panel, Position As Int) '* onBind *' Dim lbl = Parent.GetView(0) As Label lbl.Text = "Hello World ! " & Position End Sub Sub LV_GetItemCount As Int '$ ItemCount $' Return 100 'ItemList.Size End Sub
  6. Sub Globals Dim WebpView As Hitex_WebpImageView Dim Decoder As Hitex_WebpDecoder End Sub Sub Activity_Create(FirstTime As Boolean) #Region استفاده از ایمیج ویو شخصی کتابخونه WebpView.Initialize("") Activity.AddView(WebpView,0,0,100%x,100%y) WebpView.ImageWebp(File.DirAssets,"image.webp") #End Region #Region چک کردن دستگاه برای پشتیبانی از فرمت وب پی 'این گزینه فقط برای چک کردنه ، وگرنه این کتابخونه روی تمام نسخه های اندروید وب پی رو نمایش میده Log("Support : " & Decoder.IsDeviceSupportsWebp) #End Region #Region تبدیل اینپات استریم به بیتمپ ' Dim bitmap As Bitmap = Decoder.InputStreamToBitmap(File.OpenInput(File.DirAssets,"image.webp")) #End Region #Region تبدیل مستقیم وب پی از آدرس به بیتمپ ' Dim bitmap As Bitmap = Decoder.WebpToBitmap(File.DirAssets,"image.webp") #End Region #Region تبدیل وب پی به درائیبل ' Activity.Background = Decoder.WebpToDrawable(File.DirAssets,"image.webp",Gravity.FILL) #End Region #Region تبدیل بیتمپ به وب پی و ذخیره روی دیسک ' If Decoder.BitmapToWebp(bitmap, File.DirRootExternal,"pic2.webp", 30) Then ' Msgbox("Saved Successfully .","BitmapToWebp") ' Else ' Msgbox("Saved Failed ! check write external permission or disk space !","BitmapToWebp") ' End If #End Region End Sub