این مقاله مشکلات اصلی ایجاد برنامه های کاربردی برای اندروید را شرح می دهد.
مفاهیم اولیه برنامه نویسی اندروید پوشش داده شده است.
به عنوان نمونه ساخت بازی سودوکو از کتاب Hello, Android - Ed Burnette شرح داده شده است.
مراقب باشید اسکرین شات های زیادی وجود دارد.
1. مشکلات توسعه
اندروید یک سیستم عامل منحصر به فرد است. توسعهدهنده برنامه باید ویژگیها و تفاوتهای ظریف آن را بداند تا به نتیجه خوبی برسد. چالش هایی وجود دارد که باید در هنگام طراحی () در نظر گرفته شوند. بیایید آنها را به اختصار فهرست کنیم:
1) برنامه به دو (یا حتی چهار) فضای بیشتر برای نصب نسبت به اندازه اصلی برنامه نیاز دارد.
2) با کاهش فضای خالی سرعت کار با فایل ها در درایو فلش داخلی ده ها برابر کاهش می یابد.
3) هر فرآیند می تواند تا 16 مگابایت (گاهی اوقات 24 مگابایت) رم استفاده کند.
2. اصول توسعه برنامه های کاربردی برای اندروید
برای کار به Android SDK و Eclipse نیاز دارید. در مورد نحوه نصب همه چیز و شروع کار نوشته شده است.
برای بارگذاری یک پروژه در Eclipse، مراحل زیر را دنبال کنید:
1) پروژه را در یک پوشه جداگانه در فضای کاری Eclipse از حالت فشرده خارج کنید.
2) آیتم منو File->New->Android Project را انتخاب کنید.
3) در گفتگوی New Android Project، گزینه Create project from exist source را انتخاب کنید.
4) در قسمت Location مسیر پوشه دارای پروژه را مشخص کنید. روی Next کلیک کنید.
منوی برنامه
منوی بازی در فایل res/layout/main.xml توضیح داده شده است. توضیحات رابط را می توان به صورت XML یا به عنوان یک رابط رندر شده ویرایش کرد. برای جابهجایی، از برگههای پایین ناحیه نمایش محتوا استفاده کنید.
معمولاً کنترلها در یک ظرف، در مورد ما LinearLayout قرار میگیرند. تمام عناصر را در یک ستون مرتب می کند.
منابع
لطفاً توجه داشته باشید که همه برچسبهای متنی (android:text) دادهها را از منابع دریافت میکنند. به عنوان مثال، ورودی android:text="@string/main_title" مشخص می کند که متن باید در فایل res/values/string.xml در گره ای به نام main_title (اندروید سودوکو) جستجو شود. رنگ پس زمینه نیز در منابع (android:background="@color/background") اما در فایل color.xml (#3500ffff) موجود است. هنگام باز کردن فایل های منبع در ویرایشگر ممکن است خطایی رخ دهد. اما همیشه می توانید به صفحه نمایش XML بروید.
کنترل هایی که باید از طریق کد به آنها دسترسی داشت باید دارای شناسه باشند. دکمه ها دارای شناسه (android:id="@+id/continue_button") هستند تا بتوان یک کنترل کننده کلیک را به دکمه متصل کرد. علامت مثبت نشان می دهد که باید یک شناسه برای دکمه در فایل /gen/org.example.sudoku/R.java ایجاد کنید (public static final int continue_button=0x7f0b000b;). این فایل به صورت خودکار تولید می شود و تغییر آن توصیه نمی شود. فایل حاوی کلاس R است که از طریق آن می توانید به هر عنصر رابط و سایر منابع دسترسی داشته باشید.
ایجاد ویندوز
بیایید ایجاد یک پنجره با اطلاعات مربوط به برنامه را در نظر بگیریم. طرح این پنجره در فایل /res/layout/about.xml است. کلاس Activity در فایل /src/org.example.sudoku/About.java توضیح داده شده است. فعالیت با نشانه گذاری در فایل AndroidManifest.xml مرتبط است. این فایل را می توان از طریق ویرایشگر یا به صورت XML مشاهده کرد. می توانید بخش های مختلف فایل را در تب های ویرایشگر مختلف انتخاب کنید. بخش Application شامل پارامترهای Activity است. توجه داشته باشید که پارامتر Theme :style/Theme.Dialog است. این باعث می شود سبک پنجره بیشتر شبیه یک گفتگوی مدال باشد.
پنجره حاوی اطلاعات برنامه از کلاس سودوکو با کلیک بر روی دکمه About فراخوانی می شود. کلاس سودوکو به گونهای نوشته شده است که خود رویداد Click را مدیریت میکند (کلاس عمومی سودوکو اجراهای Activity OnClickListener را گسترش میدهد). متد public void onClick(View v) تعیین می کند که کدام دکمه رویداد را راه اندازی کرده و کد مربوطه را اجرا می کند. برای نمایش پنجره About، Intent مربوطه فراخوانی می شود.
مورد R.id.about_button:
Intent i = New Intent(this, About.class);
startActivity(i);
زنگ تفريح؛
کنترل کننده های رویداد را می توان بر روی کنترل های خاص نیز نصب کرد. به عنوان مثال، در کلاس Keypad، زمانی که کلاس ایجاد می شود، کنترل کننده های دکمه های جداگانه در متد setListeners () نصب می شوند.
دیالوگ ساده
باید به کاربر فرصت داده شود تا سطح دشواری را انتخاب کند. این یک گفتگوی کوچک است که در آن باید یکی از چندین گزینه را انتخاب کنید. من بسیار خوشحالم که نیازی به ایجاد یک Intent جداگانه برای این کار ندارید، بلکه فقط از کلاس AlertDialog استفاده کنید.
بیایید به روند شروع یک بازی جدید نگاه کنیم. کاربر روی دکمه New Game کلیک می کند. کنترل کننده کلیک روشی از کلاس سودوکو - onClick است. سپس متد openNewGameDialog فراخوانی می شود که دیالوگ انتخاب سختی را نشان می دهد و بازی را با درجه سختی انتخاب شده شروع می کند. این گفتگو با استفاده از کلاس AlertDialog ساخته شده است.
Private void openNewGameDialog() ( جدید AlertDialog.Builder(this).setTitle(R.string.new_game_title).setItems(R.array.difficulty, new DialogInterface.OnClickListener() ( public void onClick(Dialogceaterface,Dialogeaterface) (من نشان می دهم()؛ )
لطفاً توجه داشته باشید که محتویات گفتگو (مجموعه ای از دکمه ها) از آرایه ای از رشته ها R.array.difficulty ساخته شده است. یک کنترل کننده کلیک دکمه دیالوگ بلافاصله اختصاص داده می شود که بر اساس تعداد دکمه فشرده شده، با فراخوانی متد startGame، بازی جدیدی را با سطح دشواری مشخص شروع می کند.
هنرهای گرافیک
کلاس Game مسئولیت منطق بازی را بر عهده دارد. در اینجا کارها بارگیری می شوند و شرایط برنده شدن بررسی می شود. کلاس Game یک Activity است، اما رابط در XML توضیح داده نشده است، بلکه توسط کد ایجاد می شود. متد onCreate یک View ایجاد می کند:
PuzzleView = PuzzleView جدید (این);
setContentView(puzzleView);
puzzleView.requestFocus();
PazzleView کلاسی است که از View مشتق شده است، زمین بازی را ترسیم می کند و رویدادهای لمسی صفحه (روش onTouchEvent) و فشار دادن کلیدها (روش onKeyDown) را پردازش می کند.
بیایید به روند ترسیم در اندروید نگاه کنیم. برای ترسیم باید متد onDraw را اضافه بار کنید. متد شی Canvas را دریافت می کند که از طریق آن طراحی انجام می شود. برای تنظیم رنگ ها، آبجکت هایی از کلاس Paint ایجاد می شوند. رنگ با فرمت ARGB مشخص شده است. بهتر است رنگ به عنوان منابع (فایل colors.xml) ذخیره شود. Paint فقط یک کلاس برای ذخیره اطلاعات رنگ نیست. به عنوان مثال، هنگام ترسیم متن، حاوی اطلاعاتی در مورد روش سایه، فونت و تراز متن است.
Canvas شامل مجموعه ای از روش ها برای ترسیم گرافیک (drawRect، drawLine، drawPath، drawText و غیره) است.
برای بهینه سازی گرافیک بهتر است از ایجاد اشیا و محاسبات غیر ضروری در داخل متد onDraw خودداری شود (مثال در نظر گرفته شده اجرای گرافیک بهینه نیست).
موسیقی
کلاس MediaPlayer برای پخش موسیقی استفاده می شود. موسیقی بازی به منابع اضافه شده است. شما فقط باید فایل های لازم را در پوشه /res/raw کپی کنید (فرمت های WAV، AAC، MP3، WMA، AMR، OGG، MIDI).
ابتدا باید یک نمونه از کلاس MediaPlayer ایجاد کنید:
mp = MediaPlayer.create (زمینه، منبع)؛
در اینجا زمینه معمولاً کلاسی است که راه اندازی موسیقی را آغاز می کند، منبع شناسه منبع با موسیقی است. برای کنترل پخش، از روش های شروع، توقف و انتشار استفاده کنید.
در بازی، موسیقی در منوی اصلی (راه اندازی شده از کلاس سودوکو) و در گیم پلی (راه اندازی شده از کلاس Game) پخش می شود. کلاس موسیقی برای کنترل پخش ایجاد شده است. کلاس شامل یک نمونه ثابت از MediaPlayer است که نیاز به ایجاد یک پروژه جداگانه برای هر راه اندازی منبع صوتی را از بین می برد.
در کلاسهای سودوکو و بازی، متدهای onResume و onPause لغو میشوند که در آنها موسیقی با شروع فعالیت شروع میشود و پس از غیرفعال شدن متوقف میشود.
نتیجه گیری
مثال مورد بحث در مقاله خیلی پیچیده نیست، که به شما امکان می دهد بدون تلاش زیاد آن را درک کنید. در عین حال، جنبه های مختلف توسعه اندروید را لمس می کند.
P.S. با تشکر فراوان از کاربر
فرآیند توسعه اندروید چگونه کار می کند؟ بیایید چند اصل اساسی را برجسته کنیم:
- در فایلهای جاوا، منطق برنامه را توضیح میدهید – کاری که میخواهید برنامه شما انجام دهد.
- در فایلهای XML شما طرحبندیها را توسعه میدهید - ظاهر.
- هنگامی که برنامه نوشته شد، باید از ابزار ساخت برای کامپایل همه فایلها و بستهبندی آنها در یک فایل .apk استفاده کنید که میتواند در دستگاههای Android اجرا شود و/یا در Google Play منتشر شود.
- تمام ابزارها و فایل هایی که برای ایجاد یک برنامه اندروید استفاده می شوند در یک محیط توسعه یکپارچه (IDE) ترکیب می شوند. IDE برنامه ای است که برای ویرایش فایل های کد خود باز می کنید و آنها را کامپایل و اجرا می کنید.
- پیش از این، IDE استاندارد برای توسعه اندروید Eclipse بود، اما اکنون با اندروید استودیو کاربردی تر، محصول گوگل، جایگزین شده است.
مطمئناً فرآیندهای عمیق تری را خواهید یافت که در پشت صحنه مراحل بالا در حال انجام است. به عنوان مثال، کاربران پیشرفته می خواهند نقش ماشین مجازی دالویک را بدانند. در پایان مقاله پیوندهایی به منابع مفیدی وجود دارد که هر توسعه دهنده اندروید باید با آنها آشنا باشد. اولین مورد اسناد رسمی گوگل است.
- بیایید اندروید استودیو را دانلود و نصب کنیم.
- بیایید با راه اندازی و آزمایش برنامه ها در دستگاه ها و شبیه سازهای اندرویدی آشنا شویم.
- بیایید یک برنامه اندروید ساده بسازیم که "Hello World" را روی صفحه یک دستگاه تلفن همراه نمایش دهد.
در پایان مقاله، می توانید توصیه های مفید این شرکت را برای توسعه دهندگان تازه کار بخوانید.
نصب محیط توسعه اندروید استودیو
واقعاً وسوسه انگیز است که شروع به خواندن اسناد و کدنویسی کنید تا بفهمید این پلتفرم چه توانایی هایی دارد. و ما به زودی آن را انجام خواهیم داد! با این حال، برای شروع کار با پلتفرم اندروید، باید یک محیط توسعه راه اندازی کنید.
برای کسانی که تازه وارد برنامه نویسی اندروید شده اند، بسیار مهم است که وقت خود را صرف کرده و هر مرحله را به طور روشمند دنبال کنند. حتی اگر مراحل را به درستی دنبال کنید، ممکن است نیاز به عیب یابی یک مشکل کوچک در تنظیم محیط بسته به پیکربندی سیستم یا نسخه محصول داشته باشید. برای این کار از خدمات جستجو استفاده کنید. می توان به ویژه منبع StackOverflow را برجسته کرد.
مهم است که اجازه ندهید هیچ مشکلی مانع از رسیدن به هدف نهایی شما برای یادگیری برنامه نویسی اندروید شود. مشخص است که حتی متخصصان نیز گاهی اوقات مشکلات خاصی را در راه اندازی محیط کاری خود تجربه می کنند. در چنین مواردی، دانش خط فرمان مهم است. اگر می خواهید با این ابزار بیشتر آشنا شوید، پیوندی به یک مقدمه خوب در زیر وجود دارد.
در کنار آموزش نحو، مهم است که خود را طوری آموزش دهید که ذهنیت یک برنامه نویس موفق را داشته باشید، که پیام خطای فایل X یافت نشد را به عنوان حکم نهایی نمی پذیرد. این نوع تفکر در مواردی که تسلیم نشوید و به دنبال راه حلی برای مشکل پیش آمده باشید به راحتی توسط شما آموزش داده می شود.
به Android Studio developer.android.com/studio/index.html بروید و به دنبال دکمه ای برای دانلود آخرین نسخه برای پلتفرم خود بگردید.
بر روی دکمه دانلود کلیک کنید و از شما خواسته می شود تا شرایط و ضوابط استفاده از محصول نرم افزار را مطالعه کنید. پس از مطالعه دقیق (مثل همیشه) و پذیرش، دانلود شروع می شود. این احتمالا چند دقیقه طول می کشد. پس از این کار می توانید اندروید استودیو را مانند هر برنامه دیگری نصب کنید. صفحه دانلود اولیه حاوی دستورالعمل های نصب برای مک و ویندوز است.
اکنون که اندروید استودیو را نصب کرده اید، بیایید آن را راه اندازی کنیم! اندروید استودیو را راه اندازی کنید. برنامه از شما می پرسد که آیا می خواهید تنظیمات خود را وارد کنید. از آنجایی که از صفر شروع می کنید، کافیست گزینه دوم را انتخاب کرده و ادامه دهید.
شما باید یک صفحه بارگذاری زیبا در سبک طراحی متریال ببینید.
پس از اتمام دانلود، به صفحه خوش آمدگویی هدایت خواهید شد.
حتی اگر به تازگی اندروید استودیو را دانلود کرده باشید، ممکن است آخرین نسخه را نداشته باشید. برای جلوگیری از بروز مشکل در نسخهها در آینده، روی دکمه «اکنون برای بهروزرسانیها بررسی شود» کلیک کنید و در صورت لزوم، تمام دستورالعملها را برای دریافت آخرین نسخه دنبال کنید. گاهی اوقات استودیو به طور خودکار به شما اطلاع می دهد که یک به روز رسانی با صفحه ای مانند این وجود دارد:
در این حالت همیشه Update و Restart را انتخاب کنید. عالی! ما نصب محیط توسعه را با موفقیت به پایان رساندیم.
ساخت اولین پروژه اندروید
زمان ایجاد اولین پروژه فرا رسیده است. بیایید با یک چیز ساده شروع کنیم. برنامه نویسان معمولاً اولین برنامه را "Hello World" می نامند. بیایید این سنت را دنبال کنیم و سپس چند تغییر کوچک ایجاد کنیم تا برنامه از نام شما به عنوان تبریک استفاده کند. در پایان می توانید آن را در دستگاه خود دانلود کرده و به دوستان خود نشان دهید. Android Studio یک ابزار کوچک گام به گام دارد که به شما در ایجاد پروژه کمک می کند. روی «پروژه جدید» در صفحه شروع کلیک کنید:
اینجوری پر کن به راحتی می توانید "مثال" را در نام بسته با چیز دیگری جایگزین کنید تا هشدار در پایین صفحه حذف شود. همچنین می توانید مکان پروژه را با اشاره به هر پوشه ای در هارد دیسک خود تنظیم کنید
برای نسخههای SDK کشویی، به بخش توضیحات در پایین کادر محاورهای توجه کنید. توضیح می دهد که هر تنظیم چه کاری انجام می دهد.
همانطور که در تصویر نشان داده شده است، حداقل SDK مورد نیاز را نصب کنید. این حداقل نسخه اندروید مورد نیاز برای اجرای برنامه را تنظیم می کند. انتخاب این مقدار برای پروژههای خود به ایجاد تعادل بین قابلیتهای SDK مورد نظر با دستگاههایی است که پشتیبانی میشوند.
برای کسب اطلاعات بیشتر در مورد نسخه های API و استفاده از آنها، صفحه داشبوردهای ویژه در وب سایت برای توسعه دهندگان اندروید https://developer.android.com/about/dashboards/index.html وجود دارد.
پس از انتخاب نسخه، صفحه شروع انتخاب قالب باز می شود. میتوانید برنامهای ایجاد کنید که از قبل با Google maps api تعامل داشته باشد و نقشه را نمایش دهد. در مثال آزمایشی ما، Empty Activity را انتخاب کرده و روی دکمه «بعدی» کلیک کنید.
و اکنون در آخرین مرحله از فرآیند ایجاد اپلیکیشن هستید. قبل از اینکه روی Finish کلیک کنید، به چند نکته توجه کنید. این اولین باری است که با ارجاعاتی به اجزای اصلی معماری هر اپلیکیشنی مواجه می شوید.
- - این اولین، اما نه آخرین ذکر کلمه Activity است. در زمینه اندروید، یک Activity معمولاً به عنوان یک "صفحه نمایش" در برنامه شما در نظر گرفته می شود. این عنصر بسیار انعطاف پذیر است. وقتی Android Studio کلاس MainActivity را ایجاد می کند، آن را از کلاس Activity در Android SDK به ارث می برد. کسانی که با برنامه نویسی شی گرا آشنا هستند این مفهوم را درک خواهند کرد، اما برای مبتدیان، این اساساً به این معنی است که MainActivity شما یک نسخه سفارشی شده از Activity خواهد بود.
- نام طرح- طرح بندی آنچه به کاربر نشان داده می شود در فرم خاصی از Android XML تعریف شده است. به زودی نحوه خواندن و ویرایش این فایل ها را خواهید آموخت.
روی Finish کلیک کنید. ایجاد و دانلود پروژه مدتی طول می کشد. پس از مدتی اندروید استودیو ساخت پروژه شما را تکمیل خواهد کرد. البته، پروژه هنوز خالی است، اما همه چیزهایی که برای اجرا در دستگاه یا شبیه ساز اندرویدی نیاز دارید را دارد.
پس از بارگذاری پروژه، فایل layout را با فرمت XML مشاهده می کنید. قبل از اینکه به سراغ برنامه نویسی اندروید برویم، بیایید در مورد نحوه اجرای این اپلیکیشن صحبت کنیم. زمان گفتن "سلام دنیا!"
اجرای برنامه روی شبیه ساز
حالا وقت آن است که چند کلمه در مورد شبیه ساز بگوییم. Android Studio دارای نرم افزاری است که می تواند یک دستگاه اندروید را برای اجرای برنامه ها، مرور وب سایت ها، اشکال زدایی و هر چیز دیگری شبیه سازی کند.
این ویژگی توسط مدیر دستگاه مجازی اندروید (AVD) ارائه شده است. در صورت تمایل، می توانید چندین شبیه ساز راه اندازی کنید، اندازه صفحه نمایش و نسخه پلتفرم را برای هر شبیه ساز جدید تنظیم کنید. این عملکرد بسیار مفید است زیرا توسعه دهندگان را از خرید چندین دستگاه برای آزمایش برنامه ها نجات می دهد.
روی دکمه Run به شکل فلش سبز کلیک کنید.
شما باید کمی صبر کنید تا شبیه ساز بارگیری شود و پس از آماده شدن، چیزی شبیه به این را مشاهده خواهید کرد:
تبریک می گویم! شما اولین برنامه اندروید خود را ساخته اید!
و بنابراین ... چرا و چگونه کار کرد؟
برای شروع تغییرات و افزودن ویژگیهای جالب، باید دانش کاری در مورد آنچه در پشت صحنه میگذرد به دست آورید. به بخش پروژه Android Studio با فایل ها و پوشه ها در سمت چپ صفحه نگاهی بیندازید. اگر کاوشگر پروژه در حال حاضر قابل مشاهده نیست، ممکن است لازم باشد روی زبانه کوچک لبه کلیک کنید (به زیر مراجعه کنید).
ساختار پوشه خود را برای چند دقیقه مرور کنید و روی فایل ها دوبار کلیک کنید تا محتوای آنها را در پنجره اصلی ببینید. اگر همه اینها مرموز به نظر می رسد، نگران نباشید!
ساختار پروژه اندروید: تیم
هر تیم خوبی متشکل از افرادی است که نقش های تعیین شده خود را انجام می دهند. آیا می خواهید کار را به درستی انجام دهید؟ شما به تیم مناسب نیاز دارید. پروژه های اندروید دارای چندین عنصر کلیدی هستند و هر یک از آنها نقش خاصی را ایفا می کنند:
جاوا: حرفه ای
این بخشی از کد شما است که مسئولیت منطق برنامه را بر عهده دارد. کد شما در دایرکتوری src\main\java در پوشه اصلی پروژه قرار خواهد گرفت. برای یادگیری جاوا، کتاب بروس اکل "فلسفه جاوا" را توصیه می کنم.
منابع: هنرمند
فقط ساختن یک اپلیکیشن اندرویدی کافی نیست، بلکه باید شیک هم باشد. اگر برنامه شما نمادها و تصاویر واضح، طرحبندیهای خوب و شاید حتی انیمیشنهای روان نداشته باشد، هرگز متمایز نخواهد شد.
پس از مقداردهی اولیه، پوشه حاوی پوشه های زیر است:
- drawable که آیکون ها را ذخیره می کند. اکنون فقط نماد برنامه استاندارد وجود دارد.
- طرح بندی با فایل های XML که طرح های صفحه نمایش را نشان می دهد.
- منو با فایل های XML از لیست عناصری که در پانل اکشن نمایش داده می شود.
- مقادیر با فایل های XML حاوی اندازه، رنگ، ثابت رشته و سبک.
AndroidManifest.xml: رئیس
این فایل XML سیستم شما را از سخت افزار و نرم افزار مورد نیاز برنامه مطلع می کند و حاوی نام و نماد نسخه آن است. مانیفست همچنین حاوی اطلاعاتی درباره تمام فعالیتهای برنامه است. آیا به کار انجام شده توسط برنامه خود نیاز دارید؟ ابتدا با رئیس خود صحبت کنید.
تغییر
به res/values/strings.xml بروید و روی فایل دوبار کلیک کنید. وقتی فایل را باز می کنید، دو منبع رشته ای را در XML خواهید دید.
این منابع در مکان های مختلف استفاده می شوند، اما بسیار راحت است که تمام متن های استفاده شده در برنامه خود را در یک فایل داشته باشید. اگر نیاز به ترجمه آن دارید، یا اگر همکارتان از شما بخواهد که همه پیوندهای غیرضروری را حذف کنید، انجام همه تغییرات در اینجا آسان است.
رشته hello_world را که برنامه روی صفحه نمایش می دهد تغییر دهید. محتوا را به چیزی شخصی تر تغییر دهید، مانند استفاده از نام خود. چیزی شبیه به:
روی Run کلیک کنید. برنامه باید دوباره راه اندازی شود و یک پیام شخصی را مشاهده خواهید کرد:
ما به شما تبریک می گوییم - شما اولین پروژه خود را تکمیل کردید و یاد گرفتید که چگونه کد منبع را ویرایش کنید. اولین قدم در برنامه نویسی اندروید برداشته شده است. ما برای شما آرزوی موفقیت در این مسیر دشوار اما فوق العاده جالب داریم! اگر به توسعه حرفه ای اپلیکیشن اندروید نیاز دارید، با متخصصان اینفوشل تماس بگیرید.
ژانویه 6, 2013 در 07:36 ب.ظبرنامه نویسی اندروید برای مبتدیان. قسمت 1
- توسعه اپلیکیشن موبایل،
- توسعه اندروید
- آموزش
سلام. امروز در سایت بنیاد لینوکس با یک دوره آموزشی برنامه نویسی برای اندروید مواجه شدم و در کنار آن نظرات زیادی که دوست دارم ترجمه این درس ها را ببینم. از الان بعد از چهار سال توسعه برای میکروکنترلرها شروع به مطالعه برنامه نویسی برای دستگاه های موبایل کردم، همزمان تصمیم گرفتم قسمت اول درس را ترجمه کنم.
برنامه نویسی اندروید برای مبتدیان. قسمت 1
تلفن های هوشمند و تبلت های اندرویدی به طور فزاینده ای در کیف و جیب ما یافت می شوند و برنامه نویسی اندروید نیز محبوبیت بیشتری پیدا می کند. این یک پلتفرم توسعه عالی است - API به خوبی مستند شده و استفاده از آن آسان است، و ایجاد چیزی که بتوانید روی گوشی هوشمند خود اجرا کنید بسیار سرگرم کننده است. در ابتدا، با ایجاد و آزمایش کد با استفاده از شبیه ساز در رایانه شخصی لینوکس، می توانید بدون آن کار کنید. اولین قسمت از یک مقدمه دو قسمتی نحوه ایجاد یک برنامه تایمر ساده را توضیح میدهد و به شما مقدمهای با API اندروید میدهد. این دوره درک پایه ای از جاوا، XML و فن آوری های برنامه نویسی را در نظر می گیرد، اما حتی اگر درک بسیار مبهمی از آن دارید، با خیال راحت امتحان کنید.شروع کار و محیط توسعه
کمی در مورد نسخه ها: آخرین نسخه اندروید 4.2 (Jelly Bean) است، اما همانطور که از این نمودار می بینید، هنوز فراگیر نشده است. بهتر است توسعه را روی یکی از نسخههای 4.0 (Ice Cream Sandwich) یا 2.3 (Gingerbeard) شروع کنید، به خصوص که نسخههای Android با نسخههای قبلی سازگار هستند (یعنی کد شما برای نسخه 2.3 روی 4.2 کار میکند)، و برنامههای توسعهیافته برای نسخههای بعدی. همیشه روی یک قدیمی تر کار نمی کند. کد نشان داده شده در اینجا باید روی نسخه های 4.0 و 2.3 کار کند.ساده ترین راه برای دریافت یک محیط توسعه، نصب Android Bundle است که می توانید آن را دانلود کنید. همچنین به JDK 6 (نه فقط JRE) نیاز خواهید داشت. فراموش نکنید که اندروید با gcj سازگار نیست. اگر قبلاً از Eclipse یا IDE دیگری استفاده میکنید، میتوانید آن را برای Android تنظیم کنید. نحوه انجام این کار توضیح داده شده است. اکنون با استفاده از Eclipse یا از خط فرمان پروژه ای به نام Countdown ایجاد کنید. تنظیمات را روی BuildSDK 4.0.3 و حداقل SDK 2.2 قرار دادم و (در Eclipse) از قالب BlankActivity استفاده کردم.
اولین پروژه من برای اندروید: رابط
اولین برنامه ما برای اندروید یک تایمر خواهد بود که پس از فشار دادن یک دکمه، شمارش معکوس را از 10 ثانیه نشان می دهد. قبل از نوشتن کد، باید یک رابط ایجاد کنیم - آنچه کاربر هنگام راه اندازی برنامه ما می بیند. شما باید res/layout/activity_countdown.xml را باز کنید و یک الگوی XML ایجاد کنید - با استفاده از ویرایشگر Eclipse یا یک ویرایشگر متن/XML، موارد زیر را وارد کنید:به /start و /__00_30 توجه کنید. مقادیر آنها در res/values/strings.xml قرار خواهند گرفت:
این یک روش رایج برای دسترسی به منابع در اندروید است: بهتر است از منابع متغیر رشته ای استفاده کنید تا رشته های کدگذاری شده سخت.
اولین پروژه اندروید من: کد
حالا بیایید فایل CountdownActivity.java را در ویرایشگر باز کنیم - و آماده نوشتن کد برنامه خود هستیم. شما باید یک "خرد" تولید شده به طور خودکار برای متد onCreate() ببینید. همیشه به محض ایجاد شی Activity فراخوانی می شود و می توانید هر تابعی را که باید هنگام شروع برنامه اجرا شود در آن قرار دهید. (Eclipse همچنین میتواند یک متد ()onCreateOptionsMenu خالی ایجاد کند، اما فعلاً آن را نادیده میگیریم.) کد زیر را وارد کنید:کلاس عمومی CountdownActivity فعالیت را گسترش می دهد (int نهایی استاتیک خصوصی MILLIS_PER_SECOND = 1000؛ خصوصی استاتیک نهایی نهایی SECONDS_TO_COUNTDOWN = 30؛ خصوصی TextView countdownDisplay؛ خصوصی تایمر CountDownTimer؛ @Override public void onCreateInsatetancet (SuperCreateInsatetancet. setContentView(R .layout.activity_countdown)؛ countdownDisplay = (TextView) findViewById(R.id.time_display_box)؛ Button startButton = (Button) findViewById(R.id.startbutton)؛ startButton.setOnClickListener(new Public View.OnC) مشاهده نمای) ( امتحان کنید ( showTimer(SECONDS_TO_COUNTDOWN * MILLIS_PER_SECOND)؛ ) catch (NumberFormatException e) (// متد ورودی نامعتبر (غیر عدد صحیح) را نادیده می گیرد و منتظر می ماند // برای چیزی که می تواند استفاده کند) ))؛ ))
می توانید ببینید که ایجاد اولین پروژه ما چقدر آسان بود: API Android شامل یک CountDownTimer است که می توانیم از آن استفاده کنیم. ما آن و قسمت نمایش شمارش معکوس را به عنوان ویژگی های خصوصی کلاس Activity اعلام کردیم. در متد onCreate() از متد setContentView برای گنجاندن قالب XML خود استفاده کردیم. این نحو R.foo.bar راه استاندارد برای دسترسی به منابع XML در اندروید است و ما بارها آن را خواهیم دید.
findViewById روش دیگری است که اغلب از آن استفاده خواهید کرد. در اینجا ارجاعاتی را به فیلد خروجی تایمر و دکمه Start که در قالب XML توضیح داده شده است، برمی گرداند. برای یک دکمه، تا بتوانیم کلیک آن را پردازش کنیم، باید یک OnClickListener “Interceptor” و متد onClick() آن مشخص شود. در اینجا به سادگی متد showTimer() را با تعداد میلی ثانیه داده شده فراخوانی می کند (اکنون در کد هاردکد شده است).
پس کاری که showTimer() انجام می دهد:
خصوصی void showTimer(int countdownMillis) ( if(timer != null) ( timer.cancel(); ) timer = new CountDownTimer(countdownMillis, MILLIS_PER_SECOND) ( @Override public void onTick(long millisUntilFinished) (countdownplay.countdownTextnDi : " + millisUntilFinished / MILLIS_PER_SECOND); ) @Override public void onFinish() (countdownDisplay.setText("KABOOM!"); ) ).start(); )
کلاس CountDownTimer تقریبا تمام کارها را برای ما انجام می دهد که بسیار خوب است. در ابتدا بررسی می کنیم که آیا تایمر از قبل وجود دارد یا خیر و اگر وجود داشته باشد، آن را بازنشانی می کنیم. در مرحله بعد، یک تایمر جدید با تعداد میلی ثانیه مشخص شده برای شمارش معکوس (از پارامتر متد showTimer()) و با تعداد میلی ثانیه مشخص شده بین فواصل شمارش معکوس ایجاد می کنیم. وقتی زمان بین فواصل سپری شد، متد onTick() فراخوانی می شود.
CountDownTimer یک کلاس انتزاعی است و متدهای __onTick() و __onFinish() باید در زیر کلاس آن پیاده سازی شوند. متد onTick() را باطل می کنیم که بعد از هر بازه یک عدد خروجی را کاهش می دهد و متد onFinish() که پس از پایان شمارش معکوس پیامی را نمایش می دهد. سپس start() تایمر را شروع می کند.
با استفاده از دستور Run در Eclipse می توانید اپلیکیشن ایجاد شده را اجرا کنید که به طور خودکار شبیه ساز اندروید را راه اندازی می کند. اگر می خواهید در مورد آن بیشتر بدانید، مستندات اندروید را بررسی کنید
عالی. اما از کجا شروع کنیم؟ چه زبانی را یاد بگیرم؟ از چه منابعی؟ و مهارت های اولیه کسب شده را در کجا به کار ببریم؟ مقاله ما به شما کمک می کند تا به این سوالات پاسخ دهید.
هر زبان و چارچوبی پیچیدگی ها و تفاوت های ظریف، مزایا و معایب خاص خود را دارد. بیایید به زبان های اصلی برای نوشتن برنامه های اندروید نگاه کنیم.
جاوا
زبان برنامه نویسی رسمی که توسط محیط توسعه اندروید استودیو پشتیبانی می شود. طبق نظرسنجی سالانه Stackoverflow، در سال 2018 جاوا در بین پنج زبان برنامه نویسی محبوب قرار گرفت.
اولین قدم برای تسلط بر جاوا، نصب اندروید استودیو است. این یک نوع نرم افزار به نام IDE - Integrated Development Environment یا محیط توسعه داخلی است. Android Studio با Android SDK ارائه می شود - مجموعه ای از ابزارها برای توسعه Android و همه چیزهایی که برای شروع مطمئن نیاز دارید.
بیشتر اسناد رسمی گوگل به جاوا اشاره دارد و یافتن کتابخانه ها و آموزش های پولی و رایگان کار دشواری نیست - تعداد زیادی از آنها وجود دارد.
دلایل اصلی استفاده از PhoneGap برای توسعه برنامه در Live Typing عبارتند از:
- کاهش زمان و هزینه توسعه یک برنامه برای چندین پلتفرم به طور همزمان (برنامه ای برای دریافت اشتراک موسسات ورزشی شهرستان).
- امکان استفاده از وب سایت موجود مشتری و قطعات آن (برنامه پرداخت برای خدمات و خرید آنلاین).
نتیجه
به طور کلی، برنامه های کاربردی برای Android را می توان تقریباً به هر زبان محبوب ایجاد کرد - چارچوب ها و ابزارهای کمکی برای همه چیز وجود دارد. با این حال، اگر می خواهید یک توسعه دهنده حرفه ای اندروید شوید، از تمام قابلیت های سیستم عامل استفاده کنید و به آخرین ویژگی های اندروید دسترسی داشته باشید، جاوا یا کاتلین همراهان وفادار شما خواهند بود. حتی اگر این زبان ها برای شما ناآشنا و پیچیده به نظر می رسند، ارزش یادگیری نوشتن برنامه های غنی، زیبا و کاربردی برای سیستم عامل اندروید را دارند.
و باید از مقاله ما که در آن جمع آوری کرده ایم با جنبه نظری توسعه اندروید آشنا شوید.
برنامه نویسی یکی از آن حوزه هایی است که همه می توانند احساس کنند خالق هستند. معمولاً به توسعه برنامه های کاربردی برای رایانه های شخصی، واحدهای تجهیزات تولید یا به سادگی برای محصولات خانگی الکترونیکی اشاره دارد. اما با گسترش دستگاه های تلفن همراه با صفحه لمسی، برنامه نویسی برای اندروید، iOS یا پوسته سیستم دیگری از نوع مشابه روز به روز محبوب تر می شود. خوب، باید اعتراف کنم، این یک شغل امیدوارکننده است. بنابراین، در چارچوب مقاله، اجرای اندروید را از ابتدا در نظر خواهیم گرفت. چه ویژگی هایی وجود دارد؟ چه زبانی استفاده می شود؟
ایجاد برنامه ها
قبل از اینکه خودتان برنامه بنویسید، باید تمام اجزای لازم برای این کار را مطالعه کنید:
- زبان.
- محیط توسعه خود را انتخاب کنید. همچنین به جزئیات زبان و همچنین محصولات نرمافزاری که در آن برنامهها ایجاد خواهند شد، خواهیم پرداخت. اما ابتدا اجازه دهید کمی در مورد محیط های توسعه صحبت کنیم. به طور متعارف، آنها را می توان به سه جزء تقسیم کرد:
- گرافیکی;
- معمولی؛
- برخط.
در مورد ایجاد برنامه ها باید توجه داشت که اکنون ارائه ایده ای که قبلاً کار نشده است دشوار است. بنابراین، در صورت بروز مشکل یا صرفاً در صورت کمبود دانش، باید سوء تفاهم ایجاد شده را به درستی تدوین کرد و به برنامه نویسان با تجربه تر مراجعه کرد. آنها می توانند با مشاوره سازنده به شما در ایجاد برنامه ها کمک کنند.
برنامه ها به چه زبانی نوشته می شوند؟
جاوا برای این اهداف استفاده می شود. لازم به ذکر است که این یک زبان برنامه نویسی نسبتاً پیچیده است. اما برای ایجاد برنامه های کاربردی خود، نیازی به دانستن کامل آن ندارید. دانش و مهارت های اولیه در کار با اطلاعات مرجع برای دریافت پاسخ سوالات شما کافی خواهد بود. علاوه بر این، تنظیمات پیشفرض خاصی وجود دارد که با استفاده از آنها میتوانید مراحلی را برای ایجاد یک برنامه بدون مشکل مهم انجام دهید. سپس برنامه نویسی برای اندروید تبدیل به یک لذت می شود.
انتخاب یک محیط توسعه منظم
Eclipse و Android SDK به عنوان بزرگترین بازیکنان شناخته می شوند. هر دو آزاد هستند. در مجموع باید توجه داشت که این محیط های توسعه رقبای جدی هستند و هر کدام دارای نقاط قوت و ضعف متعددی هستند. هر یک از آنها ارزش مطالعه دارد. به طور جداگانه، اجازه دهید کمی روی یک جنبه از Android SDK - شبیه ساز تمرکز کنیم. این برنامه ای است که وانمود می کند گوشی یا تبلتی است که روی اندروید اجرا می شود. شبیه ساز به راحتی روی یک کامپیوتر معمولی اجرا می شود و مانند یک دستگاه تلفن همراه استاندارد روی دسکتاپ به نظر می رسد. تنها یک ویژگی وجود دارد - با استفاده از ماوس و صفحه کلید کنترل می شود و نه با انگشت شما. در شبیه ساز، می توانید عملکرد برنامه را برای پسوندهای مختلف صفحه نمایش و همچنین در نسخه های مختلف سیستم عامل موبایل اندروید بررسی کنید. بنابراین، مهم نیست که چقدر برای شما عجیب به نظر می رسد، هنگام توسعه برنامه های کاربردی با هدف اندروید، داشتن یک گوشی اصلا ضروری نیست.
برای توسعه اپلیکیشن خود به چه چیزی نیاز دارید؟
محیط های توسعه گرافیکی
این گزینه برای کسانی مناسب است که به طور کلی ایده ای در مورد برنامه نویسی ندارند، اما می خواهند اپلیکیشن خود را اینجا و اکنون دریافت کنند. ابتدا باید با توضیحات و قابلیت های محیط های توسعه گرافیکی آشنا شوید. بنابراین، برخی می توانند تنها ساده ترین عناصر را قرار دهند و حداقل عملکرد را به آنها متصل کنند. بهتر است از چنین منابعی استفاده نکنید، زیرا با کمک آنها درک منطق کار و ایجاد یک محصول نهایی توسعه یافته دشوار خواهد بود. توصیه می شود با توجه به پارامترهای زیر انتخاب کنید:
- در دسترس بودن یک رابط بصری.
- با استفاده از منطق عملیاتی روشن
- امکان ایجاد عناصر در حالت های گرافیکی و کد.
- در دسترس بودن اسناد برای کار با محیط توسعه و یک انجمن پشتیبانی.
محیط توسعه آنلاین
آنها می توانند طیف گسترده ای از عملکرد را در یک نقطه دسترسی ساده - اینترنت - ارائه دهند. "محیط توسعه آنلاین" احتمالاً همه چیز را می گوید. اگرچه باید روشن شود که تحت اندروید هنوز کار آسانی نیست. بنابراین، سختترین کار پیادهسازی تیراندازها و برنامههای کاربردی با پیچیدگی مشابه خواهد بود. اما برنامه هایی با قالب بندی متن و انتقال داده ها آسان هستند.
نتیجه
امیدواریم در مورد مراحل اولیه آماده سازی برای ایجاد برنامه های خود سوال دیگری وجود نداشته باشد. اگر تصمیم دارید برنامه نویسی را جدی بگیرید، می توانید از ادبیات خاصی استفاده کنید. به عنوان مثال، کتاب "برنامه نویسی برای اندروید" نوشته هاردی برایان. البته این تنها کار خوب نیست، بلکه باید از یک جایی شروع کرد. با خواندن این راهنما می توانید مسیر موفقیت را آغاز کنید.