دانلود پروژه سایت دبیرخانه آنلاین با php
دانلود پروژه سایت دبیرخانه آنلاین با php
2016-06-16
آموزش برنامه نویسی اندروید فصل سوم
آموزش اندروید فصل سوم قسمت اول – Notification bar
2016-06-20

اجرای برنامه های بومی اندروید با اینتنت ها – برنامه نویسی اندروید – قسمت هجدهم

آموزش برنامه نویسی اندروید

آموزش برنامه نویسی اندروید

در قسمت هجدهم آموزش برنامه نویسی اندروید در ادامه مبحث فرگمنت ها و کاربرد اینتنت ها اقدام به اجری برنامه های بومی دستگاه های اندروید (مثل مرورگر , map و …) کرده ایم که دربسیاری از برنامه های آینده کاربرد خواهد داشت.

اجرای برنامه های بومی اندروید با اینتنت ها – برنامه نویسی اندروید – قسمت هجدهم

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

اجرای برنامه های بومی اندروید با از اینتنت ها

یکی دیگر از قابلیت های اینتنت ها (کاربرد اینتنت ها) قابلیت فراخوانی اکتیویتی هایی است که در برنامه های بومی دستگاه شما هستند.برای مثال اگر در برنامه خود نیاز دارید تا یک صفحه وب را بارگزاری کنید میتوانید این کار را به وسیله شی Intent انجام دهید بجای اینکه خودتان یک مرورگر وب بنویسید این شی web browser بومی اندروید را در اختیار شما قرار میدهد.

برنامه زیر نحوه عملکرد را نشان میدهد.

پروژه جدیدی با نام UsingIntentsPrj ایجاد کرده و در قسمت main_activity.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="com.example.usingintentsprj.MainActivity" >

<Button

android:id="@+id/btn_makecalls"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_centerHorizontal="true"

android:layout_centerVertical="true"

android:text="make calls"

android:onClick="onClickMakeCalls" />

<Button

android:id="@+id/btn_webbrowser"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignLeft="@+id/btn_showmap"

android:layout_alignParentTop="true"

android:layout_marginTop="48dp"

android:text="web browser"

android:onClick="onClickWebBrowser" />

</RelativeLayout>

و سپس در MainActivity.java نیز عملکرد رویدادهای کلیک button را به شکل زیر قرار میدهیم

package com.example.usingintentsprj;

import android.os.Bundle;

import android.app.Activity;

import android.content.Intent;

import android.net.Uri;

import android.view.View;

public class MainActivity extends Activity {

        int request_code=1;

        //--called when the activity is first created--

        @Override

        protected void onCreate(Bundle savedInstanceState) {

                 super.onCreate(savedInstanceState);

                 setContentView(R.layout.activity_main);

        }

        public void onClickWebBrowser(View view)

        {

                 Intent i= new Intent(android.content.Intent.ACTION_VIEW,
                 Uri.parse("https://www.tejariapp.com"));

                                    startActivity(i);
        }

        public void onClickMakeCalls(View view)

        {

                 Intent i = new Intent(android.content.Intent.ACTION_DIAL,

                 Uri.parse("tel:+989215904839"));

                 startActivity(i);

        }

}

سپس میتوان نتیجه را به شکل زیر مشاهده کرد

اجرای برنامه های بومی اندروید با اینتنت ها

اجرای برنامه های بومی اندروید با اینتنت ها

اجرای برنامه های بومی اندروید با اینتنت ها

اجرای برنامه های بومی اندروید با اینتنت ها

روش کار

در این مثال مشاهده کردید که میتوان از شی Intent برای استفاده از برنامه های بومی اندروید مثل نقشه و تلفن و مرورگر و … استفاده کرد.

در اندروید اینتنت ها معمولا به صورت جفت action و data به کار میروند.قسمت action توضیح میدهد که چه کاری قرار است صورت گیرد مثلا ویرایش , نمایش , محتوا و… قسمت data مشخص میکند که چه چیزهایی متاثر شده است مثلا یکی از مخاطبان در بانک اطلاعاتی مخاطب ها. Data به صورت یک شی Uri میباشد.

چند نوع action به صورت زیر است :

  • ACTION_VIEW
  • ACTION_DIAL
  • ACTION_PCK

نمونه ای از data نیز به شکل زیر است :

در کل هردو بخش data و action عملیاتی که باید انجام گیرد را مشخص میکند.برای مثال برای نمایش لیستی از مخاطبان از دو عبارت ACTION_VIEW/content://contacts و برای برقراری تماس از دو عبارت ACTION_DIAL/tel:+65412523 و برای انتخاب یک مخاطب از لیست از دو عبارت ACTION_PICK/content://contacts بهره میبریم.

در دکمه اول یک شی Intent ایجاد شده است که دو آرگومان را به سازنده خود ارسال میکند که این دو آرگومان همان action و data هستند

public void onClickWebBrowser(View view)

    {

         Intent i= new Intent(android.content.Intent.ACTION_VIEW,
         Uri.parse("https://www.tejariapp.com"));

                                    startActivity(i);

    }

در اینجا action به وسیله متغیر ثابت android.content.Intent.ACTION_VIEW مشخص شده. از متد ()parse کلاس Uri نیز برای تبدیل یک رشته URL به شی Uri استفاده میکنیم همچنین از این کلاس معمولا برای صدا زدن content provider برای دسترسی به چیزی که ما میخواهیم با ارجاع به آن .()Uri.parse یک شی Uri جدیدی را با فرمت رشته ای درستی ایجاد میکند.

content درواقع ارائه دهنده محتوی  نرم افزار به دیگر نرم افزار ها براساس درخواست است. و برای دسترسی به اطلاعات پایگاه های داده نیز استفاده میشود.

برای دکمه دوم یک شماره را شماره گیری میکنیم. این کار را به وسیله ارسال شماره تلفن در بخش data انجام میدهیم

Intent i = new Intent(android.content.Intent.ACTION_DIAL,
Uri.parse("tel:+989379840165"));

                 startActivity(i);

در این حالت قبل از شماره گیری شماره مورد نظر ه کاربر نمایش داده میشود و تا وقتی که کاربر کلید call را نزند شماره کیری صورت نمیگیرد. اما اگر مایلید بدون دخالت کاربر تماس با شماره برقرار شود باید دستورات را به شکل زیر تغییر دهیم.

Intent i = new Intent(android.content.Intent.ACTION_CALL,
Uri.parse("tel:+989379840165"));

                 startActivity(i);

برای نمایش شماره گیری بدون درج شماره بخش data را به صورت زیر درآورید:

Intent i = new Intent(android.content.Intent.ACTION_DIAL);

                 startActivity(i);

مدرس : خانم مهندس منطق

ارتباط بین فرگمنت ها در اندروید – برنامه نویسی اندروید – قسمت هفدهم

آموزش اندروید فصل سوم قسمت اول

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *