Vibrate در اندروید

Vibrate در اندروید
در این مقاله طریقه کار با Vibrate در اندروید را یاد خواهیم گرفت، استفاده از Vibrate در اندروید بسیار مهم میباشد و یکی از بهترین راه ها برای اطلاع رسانی رویدادهای مختلف به کاربران میباشد، در این مقاله یاد میگیریم که چطور با استفاده از سرویس در اندروید از Vibrate استفاده کنیم.
 
دارالترجمه رسمی
دارالترجمه رسمی پارسیس شامل خدمات ترجمه رسمی و تخصصی در بیش از 60 زبان زنده دنیا
جای بروشور دیواری
خرید جای بروشور دیواری و رومیزی
افزونه های سئو وردپرس
بهترین افزونه های سئو وردپرس به صورت کاملا فارسی
تعمیر لوازم خانگی
تعمیر جاروبرقی، مایکروفر، بخارشوی، ظرفشویی، لباسشویی، سولاردام، کولرگازی
خودتان را اینجا معرفی کنید

ابتدا باید در فایل manifest اجازه ی استفاده از Vibrate را کسب کنیم و همچنین سرویس خود را معرفی کنیم، کد فایل manifest به صورت زیر خواهد شد :

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

    <uses-sdk android:minSdkVersion="8" />
    <uses-permission android:name="android.permission.VIBRATE"/>
    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:name=".PhonevibrateActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <service android:name=".VibrateService"/>
    </application>

</manifest>
سپس باید لایه ی xml مورد نظر خود را طراحی کنیم، در این لایه یک دکمه قرار میدهیم که با کلیک روی آن دستگاه ما دچار ارتعاش یا ویبره شود. کد و ظاهر لایه xml به صورت زیر خواهد شد :
<LinearLayout 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:background="#99C2D6"
    android:orientation="vertical">
    
    

    <TextView
        android:layout_marginTop="140dp"
        android:layout_gravity="center_horizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="20dp"
        android:text="Android Vibrate Service Example" />

    <Button
        android:id="@+id/buttonVibrate"
        android:layout_marginTop="20dp"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Vibrate" />
    
</LinearLayout>

سپس در اکتیویتی اصلی، دکمه ای که طراحی کردیم را تعریف میکنیم و میگوییم زمانی که روی دکمه کلیک شد، سرویس در اندروید فراخوانی بشود، کد ساده ای دارد که به صورت زیر میباشد :

package phonevibrate.me.here;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;


public class PhonevibrateActivity extends Activity {

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Button btnVibrate = (Button) findViewById(R.id.buttonVibrate);

        // Set on click listener and start vibrate service when clicked on Button Vibrate

        btnVibrate.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub

                // Create a New Intent and start the service
                Intent intentVibrate = new Intent(getApplicationContext(), VibrateService.class);
                startService(intentVibrate);

            }
        });
    }
}
و سپس یک کلاس به اسم VibrateService میسازیم که در آن طریقه لرزش دستگاه را مشخص میکنیم. با استفاده از v.vibrate مشخص میکنیم که دستگاه چند ثانیه بلرزد، برای مثال در این قسمت 2 ثانیه میلرزد، همچنین با توجه به قسمت کامنت شده میتونیم از
long pattern[]={0,800,200,1200,300,2000,400,4000};

استفاده کنیم و به این معنی میباشد که دستگاه برای 0 میلی ثانیه نمیلرزد، 800 میلی ثانیه میلرزد، 200 میلی ثانیه نمیلرزد، 1200 میلی ثانیه میلرزد و .... این نوع لرزش برای برنامه هایی که هنگام ویبره چندین لرزش پشت سر هم دارند به کار میرود.
package phonevibrate.me.here;

import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.os.IBinder;
import android.os.Vibrator;
import android.widget.Toast;


public class VibrateService extends Service
{

    @Override
    public void onStart(Intent intent, int startId)
    {
        // TODO Auto-generated method stub
        super.onStart(intent, startId);

        Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);

        // pass the number of millseconds fro which you want to vibrate the phone here we
        // have passed 2000 so phone will vibrate for 2 seconds.

        v.vibrate(2000);

        // If you want to vibrate  in a pattern
        //  long pattern[]={0,800,200,1200,300,2000,400,4000};
        // 2nd argument is for repetition pass -1 if you do not want to repeat the Vibrate
        // v.vibrate(pattern,-1);

        Toast.makeText(getApplicationContext(), "Phone is Vibrating", Toast.LENGTH_LONG).show();
    }


    @Override
    public IBinder onBind(Intent intent)
    {
        // TODO Auto-generated method stub
        return null;
    }

}

 


نتیجه گیری شما میتوانید عمل اصلی ویبره را درون یک سرویس، کلاس اصلی برنامه یا حتی Thread بنویسید، اما پیشنهاد میشود که درون سرویس این کار را انجام دهید زیرا در همه حالت میتوانید کدهای خود را اجرا در بیاورید.

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

نظرات و سوالات کاربران

هنوز دیدگاه و یا سوالی ارسال نشده است.
هم اکنون شما اولین دیدگاه را ارسال کنید.