آموزش برنامه نویسی اندروید (Android)
دسته بندی ( ۴۸۲ آموزش )
نمایش دسته بندی ها (۴۸۲ آموزش)
مباحث اولیه، در برنامه نویسی اندروید
مباحث اولیه، در برنامه نویسی اندروید 28
کار با Activity ها ، در برنامه نویسی اندروید
کار با Activity ها ، در برنامه نویسی اندروید 21
طراحی فایل های xml متناظر با Activity ها و ... (لایه گرافیکی Activity ها و ...)، در برنامه نویسی اندروید
طراحی فایل های xml متناظر با Activity ها و ... (لایه گرافیکی Activity ها و ...)، در برنامه نویسی اندروید 11
کار با برنامه Eclipse (یا همان ADT Bundle)، در برنامه نویسی اندروید
کار با برنامه Eclipse (یا همان ADT Bundle)، در برنامه نویسی اندروید 11
خطاهای رایج در برنامه Eclipse و در برنامه نویسی اندروید
خطاهای رایج در برنامه Eclipse و در برنامه نویسی اندروید 10
کار با برنامه Android Studio ، در برنامه نویسی اندروید
کار با برنامه Android Studio ، در برنامه نویسی اندروید 9
خطاهای رایج در برنامه Android Studio و در برنامه نویسی اندروید
خطاهای رایج در برنامه Android Studio و در برنامه نویسی اندروید 3
تبدیل متغیرها و سایر تبدیل ها، در برنامه نویسی اندروید
تبدیل متغیرها و سایر تبدیل ها، در برنامه نویسی اندروید 9
نمایش عکس و کار با ImageView ، در برنامه نویسی اندروید
نمایش عکس و کار با ImageView ، در برنامه نویسی اندروید 23
نمایش متن و کار با رشته ها (strings) و TextView ، در برنامه نویسی اندروید
نمایش متن و کار با رشته ها (strings) و TextView ، در برنامه نویسی اندروید 38
ساخت دکمه (Button) ، در برنامه نویسی اندروید
ساخت دکمه (Button) ، در برنامه نویسی اندروید 7
ساخت لیست (فهرست) با ListView ، در برنامه نویسی اندروید
ساخت لیست (فهرست) با ListView ، در برنامه نویسی اندروید 12
ساخت EditText، در برنامه نویسی اندروید
ساخت EditText، در برنامه نویسی اندروید 6
مجموعه ویدئوهای آموزش طراحی متریال (Material Design)، در برنامه نویسی اندروید
مجموعه ویدئوهای آموزش طراحی متریال (Material Design)، در برنامه نویسی اندروید 13
طراحی متریال (Material Design)، در برنامه نویسی اندروید
طراحی متریال (Material Design)، در برنامه نویسی اندروید 3
پخش موسیقی، در برنامه نویسی اندروید
پخش موسیقی، در برنامه نویسی اندروید 5
نمایش انیمیشن، در برنامه نویسی اندروید
نمایش انیمیشن، در برنامه نویسی اندروید 3
تغییر ویژگی های کلی برنامه اندروید
تغییر ویژگی های کلی برنامه اندروید 3
ذخیره اطلاعات با SharedPreferences ، در برنامه نویسی اندروید
ذخیره اطلاعات با SharedPreferences ، در برنامه نویسی اندروید 2
پایگاه داده (SQLite Database)، در برنامه نویسی اندروید
پایگاه داده (SQLite Database)، در برنامه نویسی اندروید 10
تبادل اطلاعات بین برنامه اندروید و سرور اینترنتی (اینترنت)، در برنامه نویسی اندروید
تبادل اطلاعات بین برنامه اندروید و سرور اینترنتی (اینترنت)، در برنامه نویسی اندروید 21
نمایش یک صفحه اینترنتی یا کدهای HTML (کار با WebView) و ساخت لینک، در برنامه نویسی اندروید
نمایش یک صفحه اینترنتی یا کدهای HTML (کار با WebView) و ساخت لینک، در برنامه نویسی اندروید 8
حلقه ها (for و while و ...)، در برنامه نویسی اندروید
حلقه ها (for و while و ...)، در برنامه نویسی اندروید 2
نمایش پیام به کاربر (Dialog و AlertDialog و Toast و Notification و ...)، در برنامه نویسی اندروید
نمایش پیام به کاربر (Dialog و AlertDialog و Toast و Notification و ...)، در برنامه نویسی اندروید 11
ویژگی های صفحه نمایش و چرخش آن، در برنامه نویسی اندروید
ویژگی های صفحه نمایش و چرخش آن، در برنامه نویسی اندروید 10
به دست آوردن ویژگی های کلی برنامه اندروید، در برنامه نویسی اندروید
به دست آوردن ویژگی های کلی برنامه اندروید، در برنامه نویسی اندروید 4
به دست آوردن ویژگی های گوشی کاربر، در برنامه نویسی اندروید
به دست آوردن ویژگی های گوشی کاربر، در برنامه نویسی اندروید 5
بازی سازی، در برنامه نویسی اندروید
بازی سازی، در برنامه نویسی اندروید 1
به اشتراک گذاری (share)، در برنامه نویسی اندروید
به اشتراک گذاری (share)، در برنامه نویسی اندروید 5
کار با فایل ها و فولدرها در حافظه خارجی (External Storage)، در برنامه نویسی اندروید
کار با فایل ها و فولدرها در حافظه خارجی (External Storage)، در برنامه نویسی اندروید 15
کار با پوشه های raw و assets ، در برنامه نویسی اندروید
کار با پوشه های raw و assets ، در برنامه نویسی اندروید 2
عملیات های ریاضی، در برنامه نویسی اندروید
عملیات های ریاضی، در برنامه نویسی اندروید 13
کار با دوربین (Camera)، در برنامه نویسی اندروید
کار با دوربین (Camera)، در برنامه نویسی اندروید 3
کار با action bar ، در برنامه نویسی اندروید
کار با action bar ، در برنامه نویسی اندروید 4
کار با کلاس ها (class) ، در برنامه نویسی اندروید
کار با کلاس ها (class) ، در برنامه نویسی اندروید 4
کار با package ها ، در برنامه نویسی اندروید
کار با package ها ، در برنامه نویسی اندروید 2
نرم افزارهای شبیه ساز برای اجرای برنامه های اندروید بر روی سیستم عامل کامپیوتر (مثل ویندوز)
نرم افزارهای شبیه ساز برای اجرای برنامه های اندروید بر روی سیستم عامل کامپیوتر (مثل ویندوز) 2
امنیت، در برنامه نویسی اندروید
امنیت، در برنامه نویسی اندروید 1
Thread ها، در برنامه نویسی اندروید
Thread ها، در برنامه نویسی اندروید 3
سرویس ها (Service)، در برنامه نویسی اندروید
سرویس ها (Service)، در برنامه نویسی اندروید 9
BroadcastReceiver ، در برنامه نویسی اندروید
BroadcastReceiver ، در برنامه نویسی اندروید 0
تاریخ و زمان و تمامی موارد مرتبط با زمان (عملیات های زمان بندی شده و ...)، در برنامه نویسی اندروید
تاریخ و زمان و تمامی موارد مرتبط با زمان (عملیات های زمان بندی شده و ...)، در برنامه نویسی اندروید 11
AsyncTask ، در برنامه نویسی اندروید
AsyncTask ، در برنامه نویسی اندروید 2
آرایه ها (Arrays)، در برنامه نویسی اندروید
آرایه ها (Arrays)، در برنامه نویسی اندروید 3
لیست آرایه ای (ArrayList)، در برنامه نویسی اندروید
لیست آرایه ای (ArrayList)، در برنامه نویسی اندروید 6
رنگ ها (Colors)، در برنامه نویسی اندروید
رنگ ها (Colors)، در برنامه نویسی اندروید 3
Fragment ها و Tab بندی، در برنامه نویسی اندروید
Fragment ها و Tab بندی، در برنامه نویسی اندروید 8
معرفی کتابخانه ها (Libraries)، در برنامه نویسی اندروید
معرفی کتابخانه ها (Libraries)، در برنامه نویسی اندروید 1
ساخت ProgressDialog یا ProgressBar برای نمایش میزان پیشرفت اجرای یک سری عملیات، در برنامه نویسی اندروید
ساخت ProgressDialog یا ProgressBar برای نمایش میزان پیشرفت اجرای یک سری عملیات، در برنامه نویسی اندروید 3
نسخه اندروید (Android version) و API level (نسخه API) ، در برنامه نویسی اندروید
نسخه اندروید (Android version) و API level (نسخه API) ، در برنامه نویسی اندروید 1
لرزاندن گوشی (vibrate)، در برنامه نویسی اندروید
لرزاندن گوشی (vibrate)، در برنامه نویسی اندروید 2
پرداخت درون برنامه ای، در برنامه نویسی اندروید
پرداخت درون برنامه ای، در برنامه نویسی اندروید 1
 پروژه های اندروید Open Source کاربران کلیدستان
پروژه های اندروید Open Source کاربران کلیدستان 2
ساخت امکانات جانبی (جستجو، لیست علاقه مندی، لوگو، منو و ...) برای برنامه اندروید
ساخت امکانات جانبی (جستجو، لیست علاقه مندی، لوگو، منو و ...) برای برنامه اندروید 5
مباحث عمومی، در برنامه نویسی اندروید
مباحث عمومی، در برنامه نویسی اندروید 35

استفاده از سرویس (Service) برای اجرای یک سری کد به صورت مستقل از خود برنامه اندروید (حتی هنگام بسته بودن برنامه اندروید)

با استفاده از سرویس (Service) در برنامه نویسی اندروید، می توانیم یک سری عملیات ها (یک سری کد) را مستقل از خود برنامه اندروید، اجرا کنیم. یعنی دیگر حتی هنگامی که برنامه اندروید ما، در گوشی کاربر در حال اجرا نیست (بسته است) نیز می توانیم یک سری عملیات را اجرا کنیم، مثل دانلود فایل، نمایش پیام هایی به کاربر و ... .

در واقع، کدهای سرویس (Service)، در یک Thread مجزا از خود برنامه اندروید (application) اجرا می شوند و بنابراین نیازی نیست که حتما کاربر در حال اجرای برنامه اندروید (application) باشد و ظاهر گرافیکی تعاملی (user interface) آن را ببیند. مثلا کاربر وارد برنامه اندروید می شود، بر روی دکمه دانلود یک فایل از اینترنت اشاره می کند و در حین دانلود فایل، از برنامه اندروید خارج می شود، اگر کدهای دانلود فایل، به صورت معمولی نوشته شده باشند، دانولد فایل متوقف می شود، اما اگر کدها را با استفاده از سرویس (Service) اجرا کرده باشیم، دیگر مستقل از برنامه اندروید، دانلود فایل ادامه می یابد.

اکنون نحوه ساخت یک سرویس (Service) برای برنامه اندروید را شرح می دهیم.

ابتدا باید در پروژه اندروید، یک کلاس (class) برای سرویس بسازیم که بر اساس توسعه کلاس service خواهد بود. ساختار کدهای این کلاس (class) را به صورت زیر می نویسیم :


public class MyService extends Service {
   
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        // your code
        return Service.START_FLAG_REDELIVERY;
    }
 
    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }
 
}

در کد بالا، نام کلاس (class) را برابر MyService در نظر گرفته ایم که بر اساس توسعه (extends) کلاس Service ساخته می شود :


public class MyService extends Service {

کدهایی که قصد داریم توسط سرویس (Service) اجرا شود (حتی در زمانی که برنامه اندروید، باز نباشد) را باید به جای عبارت // your code بنویسید.

سپس باید در فایل AndroidManifest.xml اعلام کنیم که برنامه شامل این سرویس (Service) می باشد. بنابراین باید کدهای زیر را در فایل AndroidManifest.xml و درون تگ application قرار بدهیم (نام سرویس را باید در این کدها ذکر کنیم) :


<service android:name="MyService" >
</service>

به عنوان مثال، موقعیت قرارگیری آن را در کدهای زیر نمایش داده ایم (مثالی برای کدهای فایل AndroidManifest.xml) :


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.kelidestan.com_2"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />
   
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.kelidestan.com_2.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="com.kelidestan.com_2.NextActivity"
            android:label="@string/title_activity_next" >
        </activity>
        <service android:name="MyService" >
        </service>
    </application>

</manifest>

اکنون در محلی از برنامه اندروید (در هر Activity دلخواه) و یا بعد از هر عملی که کاربر انجام می دهد و قصد داریم که بعد از آن، کدهای سرویس (Service) اجرا شوند، باید با کدهای زیر، اعلام کنیم که سرویس (Service) اجرا شود :


Context context = getApplication();
Intent intent = new Intent(context, MyService.class);
context.startService(intent);

و یا به شکل ساده تر زیر :


Intent intent = new Intent(this, MyService.class);
startService(intent);

بنابراین کدهای سرویس (Service) اجرا می شوند و حتی با خروج کاربر از برنامه اندروید نیز، اجرای کدهای سرویس، متوقف نخواهد شد.

نویسنده علیرضا گلمکانی
شماره کلید 2609
گزینه ها
به اشتراک گذاری (Share) در شبکه های اجتماعی
نظرات 4 4 0
silentScream
۱۳۹۷/۰۳/۱۴
۱۹:۰۱

در سرویسی که شما تعریف کردید سرویس در ترد اصلی برنامه اجرا خواهد شد و در نتیحه با بسته شدن برنامه سرویس نیز خاتمه خواهد یافت

jef313
۱۳۹۷/۰۶/۰۹
۲۱:۰۵

متوقف نمیشه
اگه هر 10 ثانیه یه لاگ بگیری متوجه میشید.

ناشناس2
۱۳۹۷/۰۷/۰۶
۱۸:۱۶

ممنون مفید بود 

محمد
۱۳۹۷/۰۹/۱۶
۱۶:۰۹

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

ارسال نظر جدید (بدون نیاز به عضو بودن در وب سایت)

جستجو در کلیدستان، توسط گوگل

جستجو در عنوان کلیدها

دسترسی سریع

کلید
×

شماره کلید


دسته بندی
×

شماره دسته کلید


جستجو
×

جستجو


کلمات کلیدی

راهنمای کلمات کلیدی (کلاس ها، توابع، عناصر و ...) در برنامه نویسی اندروید، بر اساس حرف اول کلمه کلیدی :

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

developer.android.com