درخواست های ارتباط
جستجو
    لیست دوستان من
    صندوق پیام
    همه را دیدم
    • در حال دریافت لیست پیام ها
    صندوق پیام
    رویدادها
    همه را دیدم
    • در حال دریافت لیست رویدادها
    همه رویدادهای من
    اطلاعات مطلب
      مدرس/نویسنده
      مهدی عادلی فر
      امتیاز: 242797
      رتبه:6
      111
      196
      285
      1456
      مهدی عادلی، بنیان گذار TOSINSO. کارشناس ارشد نرم افزار کامپیوتر از دانشگاه صنعتی امیرکبیر و #C و جاوا و اندروید کار می کنم. در زمینه های موبایل و وب و ویندوز فعالیت دارم و به طراحی نرم افزار و اصول مهندسی نرم افزار علاقه مندم. پروفایل کاربر
      دوره های مرتبط
      دوره های توسینسو دوره آموزشی مقدماتی برنامه نویسی جاوا به زبان ساده
      دوره آموزشی مقدماتی برنامه نویسی جاوا به زبان ساده
      مدرس: مهدی عادلی فر
      این دوره را در 17 قسط خریداری کنید
      با خرید این دوره مبلغ 5,445 تومان هدیه بگیرید
      دوره آموزشی اسکریپت نویسی Batch یا Batch Scripting در ویندوز به زبان ساده
      دوره آموزشی اسکریپت نویسی Batch یا Batch Scripting در ویندوز به زبان ساده
      مدرس: حسین احمدی
      این دوره را در 11 قسط خریداری کنید
      دوره آموزشی مقدماتی برنامه نویسی به زبان سی شارپ
      دوره آموزشی مقدماتی برنامه نویسی به زبان سی شارپ
      مدرس: حسین احمدی
      این دوره را در 17 قسط خریداری کنید
      با خرید این دوره مبلغ 8,470 تومان هدیه بگیرید
      دوره آموزشی برنامه نویسی به زبان پرل بصورت پروژه محور
      دوره آموزشی برنامه نویسی به زبان پرل بصورت پروژه محور
      مدرس: ایمان جوادی
      این دوره را در 13 قسط خریداری کنید
      ساخت و مدیریت ربات تلگرام از صفر با زبان سی شارپ
      ساخت و مدیریت ربات تلگرام از صفر با زبان سی شارپ
      مدرس: مهدی عادلی فر
      این دوره را در 2 قسط خریداری کنید
      دوره آموزشی برنامه نویسی WPF در ویژوال استودیو
      دوره آموزشی برنامه نویسی WPF در ویژوال استودیو
      مدرس: امیر حسین فضلیخانی
      این دوره را در 12 قسط خریداری کنید
      دوره آموزشی برنامه نویسی اندروید با زبان جاوا به زبان ساده
      دوره آموزشی برنامه نویسی اندروید با زبان جاوا به زبان ساده
      مدرس: مهدی عادلی فر
      این دوره را در 27 قسط خریداری کنید
      با خرید این دوره مبلغ 8,110 تومان هدیه بگیرید
      دوره آموزشی برنامه نویسی حرفه ای پایتون به زبان ساده
      دوره آموزشی برنامه نویسی حرفه ای پایتون به زبان ساده
      مدرس: حسین احمدی
      این دوره را در 23 قسط خریداری کنید
      با خرید این دوره مبلغ 7,425 تومان هدیه بگیرید
      دوره آموزشی برنامه نویسی پیشرفته زبان سی شارپ
      دوره آموزشی برنامه نویسی پیشرفته زبان سی شارپ
      مدرس: حسین احمدی
      این دوره را در 78 قسط خریداری کنید
      با خرید این دوره مبلغ 82,245 تومان هدیه بگیرید
      دوره آموزشی پردازش متن با زبان برنامه نویسی پایتون
      دوره آموزشی پردازش متن با زبان برنامه نویسی پایتون
      مدرس: کاظم تقندیکی
      این دوره را در 20 قسط خریداری کنید
      با خرید این دوره مبلغ 7,040 تومان هدیه بگیرید
      دوره آموزشی ساخت ربات تلگرام
      دوره آموزشی ساخت ربات تلگرام
      مدرس: کاظم تقندیکی
      این دوره را در 8 قسط خریداری کنید
      دوره آموزشی طراحی رابط کاربری با JavaFX
      دوره آموزشی طراحی رابط کاربری با JavaFX
      مدرس: حسام رسولیان
      این دوره را در 13 قسط خریداری کنید
      دوره آموزشی Exploit نویسی به زبان Perl
      دوره آموزشی Exploit نویسی به زبان Perl
      مدرس: ایمان جوادی
      این دوره را در 7 قسط خریداری کنید
      دوره تخصصی آموزش متن کاوی با ابزار NLTK
      دوره تخصصی آموزش متن کاوی با ابزار NLTK
      مدرس: کاظم تقندیکی
      این دوره را در 11 قسط خریداری کنید

      نحوه برقراری تماس تلفنی در اندروید

      تاریخ 18 ماه قبل
      نظرات 2
      بازدیدها 335
      سلام به ITPROهای عزیز. به خاطر این که اکثر دستگاه های اندرویدی از سیم کارت پشتیبانی می کنند و قابلیت تماس دارند اندروید کتابخانه های مفید و پراستفاده ای را برای کار با تماس در اختیار برنامه نویسان قرار داده است. همچنین اندروید یک برنامه داخلی برای انجام تماس ها دارد. با توجه به این که ممکن است در برنامه هایی که در اندروید می نویسیم نیاز به تماس صوتی و تماس تلفنی داشته باشیم پس در این مطلب در مورد تماس گرفتن در اندروید صحبت می کنیم. برای تماس تلفنی می توانیم از intent های ضمنی تماس و ورودی ها و اکشن های مناسب استفاده کرد. همچنین راه دیگر تماس استفاده از تماس تلفنی استفاده از کلاس های PhoneStateListener و TelephonyManager استفاده کنیم. این کلاس ها برای نظارت بر تماس ها و تغییرات هنگام تماس در دستگاه استفاده می شود. در ادامه این روش ها را توضیح می دهیم و می گوییم که با هر کدام به چه شکل کار می کنیم.

      استفاده از intentهای ضمنی


      در مطالب قبل نحوه ی کار با intent ها را توضیح داده ایم. و گفته ایم که برای این که از یک activity به اکتیویتی دیگری منتقل شویم از intent ها استفاده می کنیم. همچنین گفتیم که برای انتقال به اکتیویتیهای مخصوص مانند ارسال و پیامک و تماس هم از intent ها استفاده می کنیم. اکشنی که برای کار با intent ها به کار می رود و برای تماس استفاده می شود ACTION_CALL می باشد. این اکشن اکتیویتی مربوط به تماس را لود می کند. برای ساخت این intent از کد زیر استفاده می شود.
      Intent phoneIntent = new Intent(Intent.ACTION_CALL);
      
      در کد بالا یک شماره به intent پاس داده می شود که در صورت استارت کردن اکتیویتی شماره مورد نظر توسط دستگاه شماره گیری می شود. حال در کد بالا می توان به جای اکشن ACTIONCALL از اکشن ACTIONDIAL استفاده کرد. در این صورت به جای این که مستقیم شماره گیری شود قسمت شماره گیری دستگاه ظاهر می شود و شماره را نیز در صفحه شماره گیری نشان می دهد. حال اگر کاربر قصد داشته باشد که شماره را تغییر بدهد می تواند این کار را به راحتی انجام بدهد. زیرا که هنوز شماره گرفته نشده و فقط صفحه شماره گیری ظاهر شده و شماره گرفته شده است. حال نحوه شماره گیری و مقداردهی به intent هم مهم است. برای مقداردهی شماره به intent باید از متد setData استفاده کنیم و ورودی آن را در قالب یک URI می باشد. نحوه آدرس دهی این URI به شکل زیر است.
      phoneIntent.setData(Uri.parse("tel:09121234567"));
      
      در کد بالا شماره تلفن باید جلوی کلمه tel آمده باشد. برای این که قسمت تماس گرفتن شروع به کار کند باید از متد زیر استفاده شود
      startActivity(phoneIntent);
      
      -

      مثالی از برقراری تماس تلفنی در اندروید

      -
      برای این که یک مثال از برقراری تماس تلفنی بزنیم یک پروژه جدید اندرویدی می سازیم و مشخصات آن را به شکل زیر مشخص می کنیم. ابتدا در اکتیویتی main یک دکمه قرار می دهیم. مانند کد زیر
      <?xml version="1.0" encoding="utf-8"?>
      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
         android:layout_width="fill_parent"
         android:layout_height="fill_parent"
         android:orientation="vertical" >
      
         <Button
            android:id="@+id/buttonCall"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="call 09121234567" />
      
      </LinearLayout>
      
      
      حال باید در قسمت androidManifest.xml باید مجوز تماس تلفنی را دریافت کنیم. به همین دلیل خط کد زیر را در این فایل بنویسیم.
      <uses-permission android:name="android.permission.CALL_PHONE" />
      
      
      حال باید در کد جاوای اکتیویتی کد زیر را بنویسید.
      public class MainActivity extends AppCompatActivity {
         private Button button;
      
         @Override
         protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            button = (Button) findViewById(R.id.buttonCall);
                      
            button.setOnClickListener(new View.OnClickListener() {
               public void onClick(View arg0) {
                  Intent callIntent = new Intent(Intent.ACTION_CALL);
                  callIntent.setData(Uri.parse("tel:۰۹۱۲۱۲۳۴۵۶۷"));
                                      
                  if (ActivityCompat.checkSelfPermission(MainActivity.this,
                     Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
                        return;
                     }
                     startActivity(callIntent);
               }
            });
      
         }
      }
      
      در کد بالا نگاه می کنیم که اگر مجوز تماس به ما داده شده باشد پس تماس را شروع می کنیم. حال اگر این برنامه را اجرا کنیم یک دکمه در صفحه دیده می شود که اگر بر روی آن کلیک کنیم شماره مورد نظر گرفته خواهد شد. ITPRO باشید.

      نویسنده: مهدی عادلی فر
      منبع: Itpro
      هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد.
      برچسب ها
      مطالب مرتبط

      در حال دریافت اطلاعات

      نظرات
      • با سلام اینکه گفته میشه با زبان های برنامه نویسی c# و c++ و جاوا میشه اندروید رو توسعه داد یعنی نسخه سیستم عامل اندروید ؟؟یا منظورشون اپلیکیشن های اندرویدی هست؟؟؟
      • سلام برای توسعه سیستم عامل اندروید به دلیل این که این سیستم عامل یک نسخه از لینوکس است شما تنها با استفاده از زبان سی و سی پلاس پلاس قادر خواهید بود خود سیستم عامل را توسعه و تغییر بدهید ولی برای توسعه اپلیکیشن در اندروید شما می تونید از زبان های سی شارپ و سی پلاس پلاس و جاوا و حتی html , js با هم استفاده کنید.

      برای ارسال نظر ابتدا به سایت وارد شوید

      arrow