مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

آموزش ایجاد notification در اندروید همراه با مثال


قبل از شروع آموزش تخصصی ، بهتر است با مفهوم اعلان یا همان نوتیفیکیشن به صورت دقیق آشنا شوید .

اعلان (یا نوتیفیکیشن)  پیامی است که می توانید به کاربر خارج از UI اپلیکیشن خود فرستاده و برای او نمایش دهید. هنگامی که موضوع اعلان را به سیستم می گویید و سیستم را از این اعلان مطلع می کنید  ،سیستم  ابتدا اعلان را به عنوان یک آیکون در ناحیه اطلاع رسانی تلفن همراه ظاهر می کند، اما کاربر  برای دیدن جزئیات اعلان، باید آن را باز کند.

کلاس Toast یک روش دستی مفید را برای نمایش هشدارها (alert) به کاربران ایجاد می کند، ولی مشکل این است که این هشدار ها ماندگار نیستند، این بدین معناست که این هشدار به مدت چند ثانیه بر روی صفحه ظاهر شده و سپس ناپدید می شوند.

برای اعلام پیام های مهم به کاربر نیاز است از روش های ماندگار تری استفاده شود. یک اعلان (notification) پیغامی است که می تواند به عنوان یک آیکون در بالای صفحه دستگاه که ما آن را نوار اعلان یا نوار وضعیت می نامیم، نمایش داده شود. (همانطور که در تصویر بالا می بینید)

برای دیدن جزئیات اعلان (notification) باید آیکون مربوط به آن را انتخاب کنید. این کار منوی کشویی مربوط به اعلان را برای شما نمایش می دهد که شامل جرئیاتی در مورد محتوای اعلان است.
در حالی که با امولاتور ماشین مجازی کار می کنید، باید با کلیک بر روی نوار وضعیت و کشیدن آن رو به پایین (drag down) ، آن را توسعه دهید تا جزییات بیشتری از آن را ببینید . این کار جزئیاتی به صورت زیر را به شما نمایش می دهد. (طول صفحه باز شده فقط 64 dp است و view نرمال نامیده می شود.)

فرم گسترش یافته بالا ، می تواند دارای یک view بزرگ باشد که دارای جزئیات بیشتری در مورد اعلان (notification) است.  شما می توانید تا 6 خط اطلاعات اضافی را به اعلان (notification) اضافه کنید.

ایجاد و ارسال اعلان ها:

ایجاد یک اعلان (notification) ، پروسه ی بسیار ساده ای دارد . برای ایجاد یک اعلان در اپلیکیشن خود ، مراحل زیر را دنبال کنید.

مرحله 1) ایجاد سازنده ­ی اعلان (Notification Builder )

اولین گام ایجاد یک سازنده ­ی اعلان با استفاده از متد NotificationCompat.Builder.build() است. از Notification Builder  برای تنظیم ویژگی های مختلف اعلان مانند آیکن های بزرگ و کوچک آن، عنوان، اولویت آن و غیره استفاده می شود.

NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)

مرحله 2 ) تنظیم ویژگی های اعلان :

با داشتن شی Builder، می توانید بسته به نیاز خود ، ویژگی های اعلان را با استفاده از شی Builder تنظیم کنید. اما تنظیم حداقل ویژگی های زیر الزامی است .

  • یک آیکون کوچک، که به وسیله setSmallIcon() تنظیم می شود.
  • یک عنوان، که به وسیله setContentTitle() تنطیم می شود.
  • متن جزئیات، که به وسیله setContentText() تنطیم می شود.
mBuilder.setSmallIcon(R.drawable.notification_icon);
mBuilder.setContentTitle("Notification Alert, Click Me!");
mBuilder.setContentText("Hi, This is Android Notification Detail!");

 

ویژگی های اختیاری زیادی وجود دارد که شما می توانید آن ها را برای اپلیکیشن خود تنظیم کنید. برای یادگیری مطالب بیشتر در مورد آن ها مستندات مرجع مربوط به NotificationCompat.Builder  را ببینید.

مرحله 3) پیوست اکشن ها (Attach Actions )

این یک بخش اختیاری است و در صورتی لازم است که شما بخواهید یک اکشن (action)  را به اعلان (Notification ) مورد نظر ضمیمه کنید. یک action به کاربران اجازه می دهد که مستقیما از اعلان به اکتیویتی مورد نظر در اپلیکیشن شما بروند، و بتوانند در آن ها یک یا تعداد بیشتری از رویداد ها را دیده و یا کار های دیگری را انجام دهند.

Action مورد نظر به وسیله­ ی یک PendingIntent تعریف می شود که شامل Intent ای است که یک اکتیویتی را در اپلیکیشن شما آغاز می کند.
برای مرتبط کردن PendingIntent با یک وضعیت خاص ، متد مناسب را از NotificationCompat.Builder فراخوانی کنید.
برای مثال، اگر شما می خواهید زمانی که کاربر بر روی متن اعلان در منوی کشویی اعلان کلیک می کند، یک اکتیویتی آغاز شود، باید با فراخوانی setContentIntent()، شی PendingIntent  را اضافه کنید.

شی PendingIntent  به شما کمک می کند که اغلب در زمان های بعدی و بدون توجه به اینکه اپلیکیشن شما در حال اجر است یا نه، عملی از طرف اپلیکشن شما انجام شود.

ما از شی سازنده پشته (stack builder) که شامل یک پشته بازگشتی مجازی برای اکتیویتی (Activity) است برای استارت اکتیویتی استفاده می کنیم.  این کار تضمین می کند که مرور عقب گرد ( navigating backward ) اکتیویتی ، باعث می شود که اکتیویتی شما به صفحه نخستین (Home ) برگردد.

Intent resultIntent = new Intent(this, ResultActivity.class);
TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
stackBuilder.addParentStack(ResultActivity.class);

// Adds the Intent that starts the Activity to the top of the stack
stackBuilder.addNextIntent(resultIntent);
PendingIntent resultPendingIntent = stackBuilder.getPendingIntent(0,PendingIntent.FLAG_UPDATE_CURRENT);
mBuilder.setContentIntent(resultPendingIntent);

 

مرحله 4) صدور اعلان :

در نهایت برای ارسال اعلان خود، با فراخوانی NotificationManager.notify شی Notification  را به سیستم بفرستید. اطمینان حاصل کنید که شما قبل از انتشار اعلان ، متد NotificationCompat.Builder.build موجود در شی سازنده را فراخوانی کرده ایداین متد  تمام گزینه های تنظیم شده را با هم ترکیب می کند و یک شی Notification جدید را بر می گرداند.

NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
    
// notificationID allows you to update the notification later on.
mNotificationManager.notify(notificationID, mBuilder.build());

 

کلاس NotificationCompat.Builder

کلاس NotificationCompat.Builder امکان کنترل راحت تر بر روی flag ها را فراهم می کند و به ساخت layout های اعلان کمک می کند. در بخش زیر مهم ترین و رایج ترین متد های موجود در کلاس NotificationCompat.Builder  ارائه شده است :

Notification build() : تمام گزینه های تنظیم شده شما را با هم ترکیب می کند و یک شی Notification  جدید را بر می گرداند.

NotificationCompat.Builder setAutoCancel (boolean autoCancel)  : تنطیم این flag  باعث می شود  زمانیکه کاربر بر روی صفحه اعلان (Notification ) کلیک می کند، اعلان به صورت اتوماتیک کنسل شود.

NotificationCompat.Builder setContent (RemoteViews views)  : به جای  RemoteViews استاندارد، یک RemoteViews  سفارشی را برای استفاده ، ایجاد می کند.

NotificationCompat.Builder setContentInfo (CharSequence info) : متن بزرگ سمت راست اعلان (Notification ) را تنظیم می کند.

NotificationCompat.Builder setContentIntent (PendingIntent intent) : زمانی که بر روی اعلان کلیک می شود، یک PendingIntent  را ایجاد می کند.

NotificationCompat.Builder setContentText (CharSequence text) : در یک اعلان (Notification ) استاندارد ، متن سطر دوم اعلان را تنظیم می کند.

NotificationCompat.Builder setContentTitle (CharSequence title) : در یک اعلان استاندارد (standard notification) متن سطر اول اعلان را تنظیم می کند. 

NotificationCompat.Builder setDefaults (int defaults) : گزینه های پیش فرض اعلان مورد استفاده را تنظیم می کند.

NotificationCompat.Builder setLargeIcon (Bitmap icon) : آیکون بزرگی را تنظیم می کند که در ساعت و اعلان نمایش داده می شود.

NotificationCompat.Builder setNumber (int number) : عدد بزرگ سمت راست اعلان را تنظیم می کند.

NotificationCompat.Builder setOngoing (boolean ongoing) : تعیین می کند که اعلان مورد نظر یک اعلان مداوم (ongoing) هست یا نه.

NotificationCompat.Builder setSmallIcon (int icon): آیکون کوچک برای استفاده در layout های اعلان را تنظیم می کند.

NotificationCompat.Builder setStyle (NotificationCompat.Style style) : یک style برای اعلان را برای اعمال در زمان ساخت اضافه می کند.

NotificationCompat.Builder setTicker (CharSequence tickerText) : متنی را تنظیم می کند که در زمان اولین ظاهر شدن اعلان، در نوار وضعیت نمایش داده می شود.

NotificationCompat.Builder setVibrate (long[ ] pattern) : الگوی لرزش (vibration) مورد استفاده را تنظیم می کند.

NotificationCompat.Builder setWhen (long when) : زمان وقوع رویداد (event) را تنظیم می کند. اعلان های موجود در پنل با توجه به این زمان مرتب می شوند.

 

مثال:

مثال زیر نحوه عملکرد یک اعلان (Notification) اندرویدی را با استفاده از یک کلاس NotificationCompat.Builder  که در اندروید نسخه 4.1 معرفی شده است، نمایش می دهد.

1) از Android studio IDE برای ایجاد یک اپلیکیشن اندرویدی استفاده کنید و آن را با نام clicksite تحت پکیج .example.notificationdemo ایجاد کنید .

2) فایل src/MainActivity.java را تغییر دهید و کدهایی را برای تعریف سه متدstartNotification() ()، startNotification و ()updateNotification برای پوشش حداکثر قابلیت مربوط به اعلان های اندرویدی اضافه کنید. 

3) یک فایل جاوای جدید src/NotificationView.java را ایجاد کنید که برای نمایش یک layout جدید به کار می رود. این layout جدید به عنوان بخشی از اکتیویتی جدیدی است که در زمان کلیک کاربر بر روی هر یک از اعلان ها آغاز می شود.

4) تصویر man.png را در پوشه res/drawable-* کپی کنید. این تصویر به عنوان آیکن اعلان مورد استفاده قرار می گیرد. در صورتی که می خواهید تصاویر را برای دستگاه های مختلف به کار ببرید، می توانید از تصاویری با وضوح مختلف استفاده کنید.

5) فایل layout XML در مسیر ، res/layout/activity_main.xml  را ، برای اضافه کردن دکمه با relative layout تغییر دهید.

6) یک فایل layout جدید res/layout/notification.xml را تعریف کنید. این فایل به عنوان فایل layout برای اکتیویتی جدیدی که با کلیک بر روی اعلان آغاز می شود، به کار می رود.

7) فایل res/values/strings.xml را برای تعریف مقادیر ثابت های مورد نیاز تغییر دهید.

8) برای راه اندازی امولاتور اندروید اپلیکیشن را اجرا کنید و نتایج تغییرات اعمال شده در اپلیکیشن را بررسی کنید.

 

در بخش زیر محتوای تعییر یافته ­ی فایل اکتیویتی اصلی  src/com.example.notificationdemo/MainActivity.java  ارائه شده است.
این فایل می تواند شامل هر کدام از متدهای چرخه­ ی حیات اصلی باشد.

package com.example.notificationdemo;

import android.app.Activity;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.support.v4.app.NotificationCompat;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends Activity {
   Button b1;
   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);

      b1 = (Button)findViewById(R.id.button);
      b1.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            addNotification();
         }
      });
   }

   private void addNotification() {
      NotificationCompat.Builder builder =
         new NotificationCompat.Builder(this)
         .setSmallIcon(R.drawable.abc)
         .setContentTitle("Notifications Example")
         .setContentText("This is a test notification");

      Intent notificationIntent = new Intent(this, MainActivity.class);
      PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent,
         PendingIntent.FLAG_UPDATE_CURRENT);
      builder.setContentIntent(contentIntent);

      // Add as notification
      NotificationManager manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
      manager.notify(0, builder.build());
   }
}

 

محتوای فایل  res/layout/notification.xml :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:orientation="vertical"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent" >
   
   <TextView
      android:layout_width="fill_parent"
      android:layout_height="400dp"
      android:text="Hi, Your Detailed notification view goes here...." />
</LinearLayout>

 

محتوای تغییر یافته ی فایل اکتیویتی اصلی src/com.example.notificationdemo/NotificationView.java : 

package com.example.notificationdemo;

import android.os.Bundle;
import android.app.Activity;

public class NotificationView extends Activity{
   @Override
   public void onCreate(Bundle savedInstanceState){
      super.onCreate(savedInstanceState);
      setContentView(R.layout.notification);
   }
}

 

محتوای فایل res/layout/activity_main.xml :

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:paddingBottom="@dimen/activity_vertical_margin"
   android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   tools:context="MainActivity">
   
   <TextView
      android:id="@+id/textView1"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Notification Example"
      android:layout_alignParentTop="true"
      android:layout_centerHorizontal="true"
      android:textSize="30dp" />
      
   <TextView
      android:id="@+id/textView2"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Tutorials point "
      android:textColor="#ff87ff09"
      android:textSize="30dp"
      android:layout_below="@+id/textView1"
      android:layout_centerHorizontal="true"
      android:layout_marginTop="48dp" />
      
   <ImageButton
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/imageButton"
      android:src="@drawable/abc"
      android:layout_below="@+id/textView2"
      android:layout_centerHorizontal="true"
      android:layout_marginTop="42dp" />
      
   <Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Notification"
      android:id="@+id/button"
      android:layout_marginTop="62dp"
      android:layout_below="@+id/imageButton"
      android:layout_centerHorizontal="true" />
      
</RelativeLayout>

 

محتوای فایل res/values/strings.xml برای تعریف دو ثابت جدید :

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <string name="action_settings">Settings</string>
   <string name="app_name">tutorialspoint </string>  
</resources>

 

جزییات محتوای فایل AndroidManifest.xml :

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.notificationdemo" >
   
   <application
      android:allowBackup="true"
      android:icon="@drawable/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
      
      <activity
         android:name="com.example.notificationdemo.MainActivity"
         android:label="@string/app_name" >
         
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
            
      </activity>
      
      <activity android:name=".NotificationView"
         android:label="Details of notification"
         android:parentActivityName=".MainActivity">
         <meta-data
         android:name="android.support.PARENT_ACTIVITY"
         android:value=".MainActivity"/>
      </activity>
      
   </application>
</manifest>

حالا می خواهیم اپلیکیشن با نام  clicksite را اجرا کنیم. فرض می ­کنیم که AVD خود را در زمان نصب محیط ایجاد کرده باشید.
برای اجرای اپلیکیشن از Android Studio ، یکی از فایل های اکتیویتی پروژه­ ی خود را باز کنید و بر روی آیکن Run از نوار ابزار کلیک کنید. Android Studio ، اپلیکیش را بر روی AVD شما نصب می کند و آن را آغاز می کند.

حالا روی دکمه کلیک کنید ؛ در قسمت بالا یک پیام "New Message Alert!" ظاهر می شود. این پیام تنها برای لحظه ای ظاهر می شود و بعد از آن آیکنی کوچک در گوشه سمت چپ خواهید دید ؛ 
می توانید روی آیکن کوچک کلیک کنید ، بعد از چند ثانیه اطلاعات مربوط به تاریخ نمایش داده می شود.

 

اعلان با View بزرگ (Big View Notification):

 قطعه کد زیر نشان می دهد که چگونه اعلان (Notification ) ایجاد شده در قطعه قبلی را تغییر دهیم که از استایل نمایش بزرگ Inbox استفاده کند. من قصد دارم که متد () displayNotification را برای نشان دادن این قابلیت به روز رسانی کنم :

protected void displayNotification() {
   Log.i("Start", "notification");

   /* Invoking the default notification service */
   NotificationCompat.Builder  mBuilder = new NotificationCompat.Builder(this);
   
   mBuilder.setContentTitle("New Message");
   mBuilder.setContentText("You've received new message.");
   mBuilder.setTicker("New Message Alert!");
   mBuilder.setSmallIcon(R.drawable.woman);
   
   /* Increase notification number every time a new notification arrives */
   mBuilder.setNumber(++numMessages);
   
   /* Add Big View Specific Configuration */
   NotificationCompat.InboxStyle inboxStyle = new NotificationCompat.InboxStyle();
   
   String[] events = new String[6];
   events[0] = new String("This is first line....");
   events[1] = new String("This is second line...");
   events[2] = new String("This is third line...");
   events[3] = new String("This is 4th line...");
   events[4] = new String("This is 5th line...");
   events[5] = new String("This is 6th line...");
   
   // Sets a title for the Inbox style big view
   inboxStyle.setBigContentTitle("Big Title Details:");
   
   // Moves events into the big view
   for (int i=0; i < events.length; i++) {
      inboxStyle.addLine(events[i]);
   }
   
   mBuilder.setStyle(inboxStyle);
   
   /* Creates an explicit intent for an Activity in your app */
   Intent resultIntent = new Intent(this, NotificationView.class);
   
   TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
   stackBuilder.addParentStack(NotificationView.class);

   /* Adds the Intent that starts the Activity to the top of the stack */
   stackBuilder.addNextIntent(resultIntent);
   PendingIntent resultPendingIntent =stackBuilder.getPendingIntent(0,PendingIntent.FLAG_UPDATE_CURRENT);
   
   mBuilder.setContentIntent(resultPendingIntent);
   mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
   
   /* notificationID allows you to update the notification later on. */
   mNotificationManager.notify(notificationID, mBuilder.build());
}
فصلِ: 20 , تعداد قسمت ها: 238 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل رایگان مربوط به مفاهیم php و api نویسی …

توضیحات کلی مجموعه: دوره متخصص اندروید کلیک سایت کامل ترین دوره جامع برنامه نویسی اندروید(حتما دمو دوره را ببینید)   چرا دوره متخصص جایگزین دوره صفرتاصد اندروید شد؟ کلیک سایت تصمیم گرفت …
فصلِ: 30 , تعداد قسمت ها: 182 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ساخت اپلیکیشن علی بابا-آموزش کالبک ها-…

دوره "متخصص" جایگزین دوره صفرتاصد اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دوره صفرتاصد شده است؟چرا باید دوره متخص…
فصلِ: 11 , تعداد قسمت ها: 121 , سطح: صفر تا صد

این فصل در یک نگاه:

عملیات شبیه فیلتر-ساخت الرت دیالوگ وچیدمان براساس فروش-مرتب سازی-نحوه خطایابی-استفاده از bottom sheet در اندروید-سبد خری…

آموزش ساخت اپلیکیشن اندروید دیجی کالا  : ساخت برنامه اندروید یکی از پر طرفدارترین آموزش های کلیک سایت می باشد. با توجه به فراگیر شدن سیستم اندروید و آشنایی افراد با این سیستم ، برنامه های ک…
فصلِ: 3 , تعداد قسمت ها: 179 , سطح: صفر تا صد

این فصل در یک نگاه:

در این دوره آموزشی ، برنامه نویسی اندروید و ios را با استفاده از زامارین خواهیم آموخت. همچنین به صورت کاملا پروژه محور ، اپلیکیشن فروشگاهی مشابه دیجی کالا را پیاده سازی خواهیم کرد. در انته…
فصلِ: 2 , تعداد قسمت ها: 58 , سطح: صفر تا صد

این فصل در یک نگاه:

توضیحات کلی مجموعه: سرفصل های دوره آموزش ساخت اپلیکیشن فیلیمو معرفی اهداف دوره مقدمه و بررسی پیش نیازهای دوره بررسی جزئی و …
فصلِ: 1 , تعداد قسمت ها: 9 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ساخت api key-آموزش استفاده از GPS گوشی ونمایش مکان شخص برروی نقشه-متصل کردن چند نقطه برروی نقشه با خط-رسم چند ضلعی…

حتما دمو دوره رو ببینید اولین دوره کامل کار با نقشه گوگل ومسیریابی در نقشه گوگل(این اموزش مشابه فارسی ندارد) اموزش کار با نقشه گوگل در برنامه نویسی اندروید یکی از مهم ترین مباحث هست که …
فصلِ: 1 , تعداد قسمت ها: 14 , سطح: صفر تا صد

این فصل در یک نگاه:

ساخت انواع نوتیفیکیشن ها -کار با وب سرویس پوشه-ارسال نوتیفیکیشن با سرویس پوشه-ارسال نوتیفیکیشن با one signal-اموزش کار ب…

با این مجموعه همه چیز در مورد نوتیفیکیشن و فایربیس رو خواهید اموخت یکی از مواردی که در استخدام کاربران در شرکت های برنامه نویسی بسیار موثر هست مبحث کار با firebase هست که ما دراین دوره ام…
فصلِ: 1 , تعداد قسمت ها: 16 , سطح: صفر تا صد

این فصل در یک نگاه:

لیست کردن فایل های صوتی ویدیویی گوشی-طاحی متریال وزیبا-استفاده از تب بندی-حرکت سیک بار همراه با اهنگ وزمان-ست کردن زمان …

توضیحات کلی مجموعه: اموزش ساخت یک موزیک پلیر و ویدیو پلیر ح رفه ای که کاملا کاربردی است و قابلیت نصب روی گوشی های مختلف را دارد از جمله امکانات این اپلیکیشن: لیست کردن فایل های صوتی وید…
فصلِ: 1 , تعداد قسمت ها: 61 , سطح: صفر تا صد

این فصل در یک نگاه:

اموزش ساخت اپلیکیشن کافه بازار-اشتراک گذاری اپلیکیشن-کار با رتروفیت-کاربا ران تیم پرمیشن- کار با فرگمنت ها-کار با sqlite…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دو…
فصلِ: 1 , تعداد قسمت ها: 9 , سطح: صفر تا صد

این فصل در یک نگاه:

پرداخت درون برنامه ای بازار-اموزش فروش سکه-اموزش فروش اشتراک-اموزش فروش نسخه پولی-اموزش چک کردن خرید کردن کاربر-اموزش کا…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 1 , تعداد قسمت ها: 20 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش کامل پیکربندی mvp-اموزش اتصال با سرور با رتروفیت و rxjava-اموزش کار با دیتابیس-آموزش کار با bottom navigation-اموز…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 1 , تعداد قسمت ها: 35 , سطح: متوسط

این فصل در یک نگاه:

این آموزش در یک فصل شامل 35 جلسه آموزش تصویری به همراه سورس کد ارائه شده است.…

سرفصل ها مقدمه و معرفی متد آموزشی بررسی جزئی و خلاصه موارد موردنیاز پیش از آموزش شامل: کار با ویوها،  کار با کتابخانه های مختلف و ... …
فصلِ: 1 , تعداد قسمت ها: 1 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ارسال پیامک با سامانه مدیر پیامک-ارسال کد فعال سازی برنامه با پیامک-اعتبارسنجی کد فعال سازی-ثبت نام در اپلیکیشن با…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 2 , تعداد قسمت ها: 19 , سطح: صفر تا صد

این فصل در یک نگاه:

آموزش ارسال توکن در اندروید -اموزش امنیت در برنامه نویسی اندروید-اموزش ارسال توکن در هدر در اندروید-اموزش ساخت token -ام…

توضیحات کلی مجموعه: دموی دوره را حتما ببینید دوره امنیت و دیزاین پترن در برنامه نویسی اندروید که شامل دو فصل هست. فصل اول شامل اموزش singletone design patern-builder design patern-command …
فصلِ: 2 , تعداد قسمت ها: 44 , سطح: صفر تا صد

این فصل در یک نگاه:

در فصل دوم این دوره بیشتر میپردازیم به کار با کتابخانه ها و موارد پیشرفته تر مانند دوربین ، ضبط صدا، دیتا بیس ، و .....…

توضیحات کلی مجموعه: سلام خدمت کلیک سایتی های عزیز مجموعه آموزشی صفر تا صد برنامه نویسی اندروید در محیط بیسیک 4 اندروید (basic 4 android) معرفی محیط بیسیک 4 اندروید محیط b4a  تحت کمپانی A…
فصلِ: 3 , تعداد قسمت ها: 61 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل جدید و اپدیت های جدید-آموزش کار با برودکست ریسیور در کاتلین-آموزش چک کردن اتصال به اینترنت در کاتلین-اموزش اپلود کرد…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 5 , تعداد قسمت ها: 21 , سطح: متوسط

این فصل در یک نگاه:

نحوه ارورگیری-رفع ایراد-رفع مشکل-اشتراک گذاری مطالب-ساخت اکتیویتی تنظیمات-اشتراک گذاری مطالب-جستجو کردن…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 5 , تعداد قسمت ها: 128 , سطح: صفر تا صد

این فصل در یک نگاه:

پرداخت درون برنامه ای بازار با کاتلین…

دوره "متخصص" جایگزین دوره های اندروید شد. برای دیدن دوره متخصص اندروید بر روی لینک زیر کلیک کنید : https://b2n.ir/d36082 چرا دوره متخصص جایگزین دیگر دوره های اندروید شده است؟چرا باید دوره…
فصلِ: 8 , تعداد قسمت ها: 62 , سطح: صفر تا صد

این فصل در یک نگاه:

اپلود تصاویر روی سرور نود جی اس-کار با کانال در چت- ساخت کانال-ساخت گروه-تفاوت کانال و گروه-انلاین بودن-ارسال تصاویر در …

  توضیحات کلی مجموعه آموزش اندروید اپلیکیشن چت مشابه تلگرام( با استفاده از Socket IO ): دموی مجموعه را حتما ببینید دراین دوره سعی میشود بسیاری از اپشن هایی که اپلیکیشن موبوگرام داراست ر…
فصلِ: 6 , تعداد قسمت ها: 194 , سطح: صفر تا صد

این فصل در یک نگاه:

در این فصل آپدیت های مربوط به دوره را قرار میدهیم…

با سلام و خسته نباشد خدمت کلیک سایتی های عزیز در ادامه با توضیحات مختصری درمورد دوره ی react native با ما همراه باشید: React Native چیست؟ قطعا یکی از آرزوهای برنامه نویسان این میباشد که ب…

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید