مثال ساده در اندروید
اجازه دهید ساخت برنامه های کاربردی واقعی در چارچوب اندروید را شروع کنیم. قبل از شروع به نوشتن اولین مثال با استفاده از Android SDK، باید اطمینان حاصل کنید که محیط توسعه اندروید را همان گونه که در بخش نصب محیط برنامه نویسی اندروید توضیح داده شد، به درستی نصب و پیکربندی کرده اید. همچنین فرض می کنیم که شما دانش لازم برای شروع کار با اندروید استودیو را دارید.
اجازه دهید ما یک برنامه ساده اندرویدی بنویسیم که عبارت «Hello World» را چاپ می کند.
ایجاد برنامه اندرویدی
اولین قدم این است که یک برنامه ساده اندروید با استفاده از اندروید استودیو ایجاد کنید. هنگامی که روی آیکون Android studio کلیک میکنید، صفحه ای مانند شکل زیر نمایش داده خواهد شد.
شما می توانید توسعه برنامه اندرویدی خود را با ایجاد یک پروژه جدید در اندروید استودیو آغاز کنید. بعد از آن در یک صفحه دیگر از شما نام برنامه، اطلاعات بسته یا پکیج برنامه و محل ایجاد شدن پروژه را درخواست می کند.
بعد از مشخص کردن نام برنامه، باید مشخص کنید که برنامه شما قرار است بر روی چه دستگاهی اجرا شود و سپس باید Minimum SDK را مشخص کنید که در این آموزش ما از API23 یعنی Android 6.0 (Mashmallow) استفاده می کنیم.
در مرحله بعد باید یک Activity را برای برنامه خود انتخاب کنید که طرح بندی پیش فرض برنامه شما را مشخص می کند
در مرحله نهایی ابزار توسعه برای نوشتن کد های برنامه باز می شود.
ساختار و آناتومی یک برنامه اندرویدی
قبل از اینکه برنامه خود را اجرا کنید، باید در مورد چند دایرکتوری و فایل موجود در پروژه اندروید اطلاعاتی کسب کنید.
ردیف | دایرکتوری، پوشه و توضیحات |
1 | Java این پوشه شامل فایل های منبع جاوا برای پروژه شما می باشد. به طور پیش فرض، شامل یک فایل منبع به نام MainActivity.java می باشد که دارای یک کلاس activity است و زمانی که برنامه شما با استفاده از آیکون برنامه راه اندازی می شود (یعنی زمانی که کاربر آن را لمس می کند) اجرا می شود. |
2 | res/drawable-hdpi این دایرکتوری برای اشیاء قابل رسم است که برای صفحه های با چگالی بالا طراحی شده اند. |
3 | res/layout این دایرکتوری برای فایل هایی است که رابط کاربری برنامه شما را تعریف می کنند. |
4 | res/values این دایرکتوری برای سایر فایل های مختلف XML می باشد که حاوی مجموعه ای از منابع، مانند تعاریف رشته ها و رنگ ها است. |
5 | AndroidManifest.xml این فایل Manifest است که ویژگی های اساسی برنامه را توصیف و هر یک از اجزای آن را تعریف می کند. |
6 | Build.gradle این فایل به صورت خود کار هنگام ایجاد پروژه تولید می شود و حاوی compileSdkVersion، buildToolsVersion، applicationId، minSdkVersion، targetSdkVersion، versionCode و versionName است. |
بخش زیر یک دید کلی از فایل های مهم و کاربردی یک برنامه اندرویدی را نشان می دهد.
فایل Main Activity
کد Main Activity یک فایل جاوا MainActivity.java است. این فایل برنامه کاربردی شما می باشد که در نهایت به یک Dalvik قابل اجرا تبدیل می شود و برنامه شما را اجرا می کند. در زیر کد پیش فرض تولید شده توسط اندروید استودیو برای برنامه Hello World را مشاهده می کنید:
1 2 3 4 5 6 7 8 9 10 | package com.example.helloworld; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } } |
در اینجا R.layout.activity_main به فایل activity_main.xml واقع در پوشه res / layout اشاره دارد. متد onCreate() یکی از متدهایی است که هنگام بازگذاری یک activity، شکل گرفته است.
فایل Manifest
هر بخشی از برنامه خود را که توسعه می دهید، باید همه اجزای آن را در فایل manifest.xml موجود در دایرکتوری ریشه پروژه، اعلام کنید. این فایل به عنوان رابطی بین سیستم عامل اندروید و برنامه شما عمل می کند، بنابراین اگر شما جزء خود را در این فایل اعلام نکنید، سیستم عامل آن را در نظر نمی گیرد. در زیر محتوای پیش فرض یک فایل Manifest را مشاهده می کنید:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.tutorialspoint7.myapplication"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest> |
در کد بالا اجزای مربوط به برنامه درون تگ
برچسب
بخش android.intent.action.MAIN در intent-filter نشان می دهد که این فعالیت به عنوان نقطه ورود برای برنامه عمل می کند و بخش android.intent.category.LAUNCHER نشان دهنده این است که برنامه را می توان از بخش آیکن ها اجرا کرد.
@string به فایل string.xml که در زیر توضیح داده شده است، اشاره دارد. از این رو @string/app_name به app_name تعریف شده در فایل اشاره می کند که Hello World است. رشته های دیگر برنامه کاربردی هم به همین شکل ذخیره می شوند.
در زیر لیستی از برچسب هایی را که برای مشخص کردن اجزای مختلف برنامه اندرویدی در فایل Manifest استفاده می شوند را مشاهده می کنید:
عناصر مربوط به activity ها عناصر مربوط به service ها عناصر مربوط به broadcast receiver ها عناصر مربوط به content provider ها
فایل Strings
فایل strings.xml در پوشه res/values قرار دارد و شامل تمام متن هایی است که برنامه شما از آن ها استفاده می کند. به عنوان مثال، نام دکمه ها، برچسب ها، متن پیش فرض و انواع مشابه رشته ها به این فایل اضافه می شوند. این فایل مسئول محتوای متنی شما است. محتوای پیش فرض فایل Strings به صورت زیر است:
1 2 3 4 5 6 | <resources> <string name="app_name">HelloWorld</string> <string name="hello_world">Hello world!</string> <string name="menu_settings">Settings</string> <string name="title_activity_main">MainActivity</string> </resources> |
فایل Layout
activity_main.xml یک فایل طرح بندی می باشد که در پوشه res/layout قرار دارد. هنگام ساخته شدن رابط کاربری برنامه شما از این فایل استفاده می شود. شما می توانید به منظور تغییر رابط کاربری برنامه خود، این فایل را تغییر دهید. محتوای این فایل برای برنامه “Hello World” به صورت زیر است:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <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" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:padding="@dimen/padding_medium" android:text="@string/hello_world" tools:context=".MainActivity" /> </RelativeLayout> |
این مثال ساده در مورد RelativeLayout می باشد که در یک فصل دیگر به بررسی آن پرداخته می شود. TextView یک کنترل اندروید است که به منظور ساخت GUI استفاده می شود و صفات مختلفی مانند android:layout_width، android:layout_height و غیره را دارد. @string به فایل strings.xml موجود در پوشه res/values اشاره می کند. بنابراین @string/hello_world به رشته hello تعریف شده در فایل strings.xml اشاره می کند که “Hello World” است.
اجرای برنامه
اجازه دهید برنامه Hello World را که ایجاد کرده ایم، اجرا کنیم. ما فرض می کنیم شما AVD (Android Virtual Device) خود را حین تنظیم محیط برنامه نویسی اندروید ایجاد کرده اید. به منظور اجرای برنامه در اندروید استودیو، یکی از فایل های activity برنامه را باز کنید سپس بر روی نماد اجرا کلیک کنید. اندروید استودیو این برنامه را در AVD نصب کرده و آن را اجرا می کند و اگر همه چیز به درستی تنظیم شده باشد، یک پنجره شبیه ساز مانند شکل زیر نمایش داده خواهد شد:
شما اولین برنامه اندرویدی خود را توسعه داده اید و حالا برای تبدیل شدن به یک توسعه دهنده حرفه ایی اندروید، باید آموزش های ما را به صورت گام به گام دنبال کنید.
سلام خسته نباشید، من یه مشکلی در اندروید استودیو دارم اینکه فایل های png نمیتونم به پروژه ادد کنم. اگر هم با کپی پیست بیارمشون داخل پروژه بصورت ناخوانا هستند. چطور می تتونم به صورت صحیح انجام بدم ؟
سوالتو تو انجمن سایت مطرح کنید تا کسانی که می تونن کمک کنند.