آموزش برنامه نویسی اندروید (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

اجرای یک سری کد، در آینده و در زمانی که حتی برنامه اندروید در حال اجرا نمی باشد، با کلاس AlarmManager ، در برنامه نویسی اندروید

کلاس AlarmManager ، به شما این امکان را می دهد که یک سری کد را در آینده اجرا کنید، حتی اگر برنامه اندروید در حالت اجرا نباشد.

کلاس AlarmManager ، دسترسی به system alarm را در اختیار شما قرار می دهد.

به عنوان مثالی برای چگونگی استفاده از کلاس AlarmManager ، قصد داریم یک پروژه اندروید بسازیم که به این صورت عمل می کند که بعد از اشاره کاربر بر روی یک دکمه (Button)، دقیقا 20 ثانیه بعد، یک آهنگ هشدار پخش شده و همچنین یک پیام متنی توسط کلاس Toast به کاربر نمایش داده می شود و البته اهمیتی نداشته باشد که در آن زمان 20 ثانیه بعد، آیا برنامه اندروید در حالت اجرا است یا خیر (در هر دو صورت، عملیات مورد نظر به درستی اجرا گردد).

نکته

کدهای این پروژه اندروید بر اساس کدهای منبعی می باشد که لینک آن در انتهای مبحث ذکر شده است.

در برنامه eclipse ، ابتدا یک پروژه اندروید با نام Kelidestan.com_AlarmManager می سازیم (نام package را برابر com.kelidestan.alarmmanager انتخاب می کنیم. نام activity اصلی را برابر MainActivity انتخاب می نماییم و فایل xml متناظر آن را هم برابر activity_main.xml قرار می دهیم).

کپی کردن فایل مربوط به آهنگ در پروژه اندروید :

ابتدا در پوشه res ، یک پوشه با نام raw ساخته و فایل alarm.mp3 که باید برای پخش آهنگ به کار رود را در آن کپی می کنیم :

اجرای یک سری کد، در آینده و در زمانی که حتی برنامه اندروید در حال اجرا نمی باشد، با کلاس AlarmManager ، در برنامه نویسی اندروید

ساخت یک BroadcastReceiver که برای پخش آهنگ و نمایش یک متن به کار خواهد رفت :

باید در پروژه اندروید، یک BroadcastReceiver بسازیم و در کدهای آن، کدهای مربوط به پخش آهنگ و همچنین نمایش پیام متنی (با استفاده از کلاس Toast) را بنویسیم.

برای این منظور، در پروژه اندروید، یک کلاس (Class) جدید با نام MyBroadcastReceiver می سازیم :

اجرای یک سری کد، در آینده و در زمانی که حتی برنامه اندروید در حال اجرا نمی باشد، با کلاس AlarmManager ، در برنامه نویسی اندروید

و کدهای آن را به صورت زیر می نویسیم :


package com.kelidestan.alarmmanager;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.media.MediaPlayer;
import android.widget.Toast;

public class MyBroadcastReceiver extends BroadcastReceiver {
       
        MediaPlayer mp;  
    @Override  
    public void onReceive(Context context, Intent intent) {  
        mp = MediaPlayer.create(context, R.raw.alarm);  
        mp.start();  
        Toast.makeText(context, "Kelidestan Alarm ....", Toast.LENGTH_LONG).show();  
    }  

}

بخش زیر از کدها برای پخش آهنگ به کار می رود :


mp = MediaPlayer.create(context, R.raw.alarm);  
mp.start();

و بخش زیر نیز برای نمایش یک پیام متنی، با استفاده از کلاس Toast ، می باشد :


Toast.makeText(context, "Kelidestan Alarm ....", Toast.LENGTH_LONG).show();

که پیام متنی زیر را نمایش خواهد داد :


Kelidestan Alarm ....

اکنون باید این BroadcastReceiver ساخته شده را در فایل AndroidManifest.xml از پروژه اندروید، ذکر نماییم (به عنوان یک receiver) :

اجرای یک سری کد، در آینده و در زمانی که حتی برنامه اندروید در حال اجرا نمی باشد، با کلاس AlarmManager ، در برنامه نویسی اندروید

بنابراین باید کد زیر به کدهای فایل AndroidManifest.xml افزوده شود :


<receiver android:name="MyBroadcastReceiver" >  
</receiver>

و علاوه بر آن، اجازه دسترسی (permission) مربوط به لرزیدن گوشی (VIBRATE) را نیز در فایل AndroidManifest.xml ذکر می کنیم (در صورت نیاز برای VIBRATE) :


<uses-permission android:name="android.permission.VIBRATE" />

بنابراین کل کدهای فایل AndroidManifest.xml به صورت زیر خواهد بود :


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

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />
   
    <uses-permission android:name="android.permission.VIBRATE" />  

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.kelidestan.alarmmanager.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>
       
        <receiver android:name="MyBroadcastReceiver" >  
        </receiver>  
    </application>

</manifest>

Activity اصلی پروژه اندروید :

پروژه اندروید دارای یک Activity (همان Activity اصلی) با نام MainActivity می باشد :

اجرای یک سری کد، در آینده و در زمانی که حتی برنامه اندروید در حال اجرا نمی باشد، با کلاس AlarmManager ، در برنامه نویسی اندروید

ابتدا فایل xml متناظر با آن (activity_main.xml) را باز کرده و یک دکمه (Button) را در آن قرار می دهیم :


<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" >
   
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button" />

</RelativeLayout>

سپس کدهای فایل MainActivity.java را به صورت زیر می نویسیم :


package com.kelidestan.alarmmanager;

import android.app.Activity;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;

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.button1);  
         
            b1.setOnClickListener(new OnClickListener() {  
                 
                @Override  
                public void onClick(View v) {  
                    // TODO Auto-generated method stub  
                    startAlert();  
                }  
            });
        }

        public void startAlert() {  
            int time_second = 20;  
            Intent intent = new Intent(this, MyBroadcastReceiver.class);  
            PendingIntent pendingIntent = PendingIntent.getBroadcast(  
                                          this.getApplicationContext(), 234324243, intent, 0);  
            AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);  
            alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()  
                                          + (time_second * 1000), pendingIntent);  
            Toast.makeText(this, "Alarm set in " + time_second + " seconds",Toast.LENGTH_LONG).show();  
        }  

}

اجرای پروژه اندروید :

اکنون با اجرای پروژه اندروید بر روی یک گوشی واقعی، ابتدا Activity اصلی برنامه اندروید به صورت زیر نمایش داده می شود :

اجرای یک سری کد، در آینده و در زمانی که حتی برنامه اندروید در حال اجرا نمی باشد، با کلاس AlarmManager ، در برنامه نویسی اندروید

با اشاره بر روی دکمه (Button)، پیامی به صورت زیر را مشاهده می کنیم که بیان می کند تا 20 ثانیه دیگر، یک Alarm اجرا خواهد شد :

اجرای یک سری کد، در آینده و در زمانی که حتی برنامه اندروید در حال اجرا نمی باشد، با کلاس AlarmManager ، در برنامه نویسی اندروید

اکنون حتی اگر بخواهیم می توانیم از برنامه اندروید خارج شویم و 20 ثانیه صبر می کنیم. سپس یک پیام نمایش داده شده و آهنگ مورد نظرمان نیز پخش می شود :

اجرای یک سری کد، در آینده و در زمانی که حتی برنامه اندروید در حال اجرا نمی باشد، با کلاس AlarmManager ، در برنامه نویسی اندروید

دانلود پروژه اندروید :

دانلود فایل apk مربوط به پروژه اندروید :

دانلود پروژه اندروید (برای Eclipse) :

منابع و لینک های مفید
نویسنده علیرضا گلمکانی
شماره کلید 20019
گزینه ها
به اشتراک گذاری (Share) در شبکه های اجتماعی
نظرات 0 0 0

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

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

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

دسترسی سریع

کلید
×

شماره کلید


دسته بندی
×

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


جستجو
×

جستجو


کلمات کلیدی

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

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