انجام پروژهای برنامه نویسی اندروید android

انجام پروژهای برنامه نویسی اندروید android

انجام پروژهای برنامه نویسی اندروید android

انجام پروژهای برنامه نویسی اندروید android

طراحی انواع وب سایت و اپلیکیشن های موبایل (اندروید ،ios )

مشاوره استراتژی
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
مشورت و همراهی کارشناسان ما برای توسعه استراتژی و برنامه مسیر به شما کمک می کند تا اهداف موبایلی شدن شرکت را بهتر اجرا نمایید

راهکارهای موبایلی شدن

راهکارهای وسیع موبایلی ما از نرم افزارهای از پیش ساخته شده تا راهکارهای سفارشی از طرف مشتری را شامل می شود. بنا به نیاز تکنولوژیک و عملکردی سازما شما، می توانیم از فریمورک های آماده و با قیمت کمتر یا طراحی نرم افزار از پایه را برای شما انجام دهیم.

خدمات قابل مدیریت

خدمات ما در داشبورد مدیریت مشتری برای شما کاملا تحت کنترل شماست. در هر لحظه شما مشاهده می کنید که پروژه مربوط به شما در چه مرحله ای است و چه اقداماتی روی آن در حال انجام است. ما امکاناتی در اختیار شما قرار می دهیم که شما حس کنید در تیم ما هستید و از نزدیک همه چیز را مشاهده می کنید.

نظام پیشنهادات اندروید
چرا باید اپلیکیشن موبایل داشته باشید
همیشه در دید مشتری باشید

آمارها نشان می دهد کاربران تلفن های اسمارت روزانه بیش از 2 ساعت با اپلیکیشن های موبایل خود وقت می گذرانند. پس وقتی تا این اندازه افراد سرگرم موبایل خود هستند، چرا شما در موبایل آنها جایی نداشته باشید؟
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
امروزه اغلب افراد برای کسب اطلاعات بیشتر به راحتی در بازارهای عرضه نرم افزارهای موبایل دوری می زنند و اتفاقا به راحتی صفحات زیادی را اسکرول کرده و نرم افزارهای زیادی را می بینند.
یک کانال مستقیم بازاریابی بسازید

نرم افزارهای موبایل عملکردهای زیادی دارند: این نرم افزارهای می توانند اطلاعات اولیه کاربر، قیمتها، فرمهای ثبت نام، امکانات جستجو، حسابهای کاربری، پیام رسان، سرخط خبرها و بسیاری امکانات دیگر را در خود فراهم آورند.

یکی از بزرگترین مزایای داشتن نرم افزار موبایل این است که می توانید همه اطلاعاتی را که می خواهید به مشتری بدهید دقیقا زیر انگشت او قرار داده اید. همینطور با قابلیت ارسال اعلان شما به راحتی می توانید مشتریان را از محصولات جدید و تخفیفات با خبر کنید و حتی انگیزه هایی برای بازکردن نرم افزار ایجاد کنید.
برای مشتری ارزش ایجاد کنید

برنامه های وفاداری سنتی، با کارتها تخفیف و کارتهای عضویت رونق یافت. در سالهای اخیر تبدیل کارتهای کاغذی عضویت به کارتهای مغناطیسی تحول جدیدی را به وجود آورد. ولی الان حتی کارتهای مغناطیسی و انتظار از مشتری برای همراه داشتن این کارتها در هنگام خرید، قدری دور از توقعات مشتری مدارانه است. شما می توانید با داتشن نرم افزار موبایل به دور برنامه وفاداری خود را نه به صورت یک طرفه بلکه به صورت تعاملی و دو طرفه پیاده سازی نمایید.
ایجاد شناخت و برندسازی کنید
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
نرم افزار موبایل می تواند به خوبی برای برند شما آگاهی رسانی انجام دهد. برندسازی شامل دو بخش دیدگاه است:

برند: نرم افزار موبایل برای شما کار یک بیلبورد بزرگ خالی را انجام می دهد که به روی آن هر چیزی می توانید بنویسید. روی این بیلبورد شما می توانید فاخر بودن، کاربردی بودن، ارزان بودن، تکان دهنده بودن یا هر چیزی را به مشتری منتقل کنید. هر کار می کنید نهایتا باید طراحی شما به نحوی باشد که مشتری آن را دوست داشته باشد.

شناخت: چیزی که باعث می شود شما به خاطر مشتری بمانید، رسیدن به حد موثر تکرار مشاهده است. به طور معمول گفته می شود برای اینکه مشتری در زمان خرید شما را در نظر داشته باشد تقریبا باید 20 مرتبه شما یا برندتان را دیده باشد. کاری که نرم افزار موبایل برای شما انجام می دهد، همین است.
پذیرش مشتری را بهتر کنید

فرقی ندارد شما شامپو می فروشید یا الکتروموتور صنعنی. مشتری شما نیاز دارد که شما در دسترس او باشید. همین که شما از طریق نرم افزار موبایل امکاناتی را فراهم آورید که مشتری بتواند به راحتی با شما ارتباط برقرار کند، شما یک مزیت قابل توجه برای مشتری فراهم آورده اید تا احساس کند در هر زمانی و در هر شرایطی فقط با چند ضربه انگشت می تواند با شما ارتباط برقرار کند.
از رقابت دور بایستید

در شرایطی که بازار رقابتی هر روز شدیدتر می شود، شما با داشتن یک نرم افزار موبایل می توانید از مخمصه رقابت به جایی جلوتر از رقبا بپرید. اگر در این زمینه اولین باشید یا حداقل در زمره اولین ها باشید، مشتری از فکر رو به جلو و مدرن شما متحیر می شود و این تمایز برای شما کار خواهد کرد.
وفاداری مشتری درو کنید
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
در شرایطی که مشتری با تبلیغات گوناگون در صفحات اینترنتی، بیلبوردهای خیابانی، تبلیغات تلویزیونی، کانالهای تلگرامی، ایمیلهای تبلیغاتی، آپهی های روزنامه ها و مجلات و ده ها مورد دیگر بمباران می شود، به تدریج حتی مشتریان قبلی هم شما را فراموش می کنند و اثر حس خوب قبلی را بر مشتری از دست می دهید. زمان آن فرارسیده است تا شما در موبایل مشتری خود نشسته باشید و ارتباط خود را با مشتری همچنان قوی نگه دارید تا از وفاداری مشتری خود حفاظت کنید. قرار نیست نرم افزار موبایل شرکت شما را نجات دهد ولی حداقل از برباد رفتن زحمات قبلی شما حفاظت می کند.
چرا سپهر ماهان

بیش از آنکه متقاضی نرم افزارهای موبایل وجود داشته باشد، علاقمندان به تولید و برنامه نویسی اندروید وجود دارد. و متاسفانه پیش از آنکه تحلیل گران کسب و کار و بازاریابی دست به کار شوند، علاقمندان به برنامه نویسی کار خود را شروع کرده اند و چه بسا به پایان رسانده اند.

ما به نرم افزار تحت موبایل شرک شما به چشم یک روند مد شده عجولانه برنامه نویسی نکاه نمی کنیم. شرکت شما باید با اهداف مشخص و متعالی به حوزه نرم افزار موبایل وارد شود. قبل از آنکه عجولانه دست بکار تولید شوید، باید اهداف مشخص گردد، مشتریان بررسی شوند، بازار هدف شما تعیین گردد، امکانات مورد نظر و مورد نیاز مشتریان فهرست گردد، دسترسی آنلاین مشتریان به اینترنت و محل استفاده از نرم افزار موبایل به دقت مورد توجه قرار گیرد، مکانیزم های جلب توجه و علاقه مشتری مورد همفکری واقع شود و بعد از آن تازه پروژه تولید نرم افزار شروع می شود.

اگر این مراحل را انجام ندهید خیلی زودتر نرم افزار شما نوشته شده و تحویل شما می شود ولی در زمانی کمتر از آن متوجه می شوید که اشتباه کرده اید و علاوه بر هزینه ریالی هزینه های بسیار بیشتری از نظر زمان و انرژی و انگیزه شرکت را هدر داده اید.

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

متدولوژی ما
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
ما در طراحی و تولید اپلیکیشن موبایل از متدولوژی اسکرام (SCRUM) استفاده می نماییم که یکی از از مجموعه روشهای تفکر چابک (Agile) است.

اسکرام یکی از روشهای مدرن مدیریت پروژه های نرم افزاری است که در آن علاوه بر سرعت در تولید، دقت، کاربرد و مشارکت مشتری و انعطاف پذیری نیز لحاظ شده است. تولید نرم افزار تحت چارچوب اسکرام ویژگی شفافیت و روشنی، ممیزی و وارسی و همچنین انطباق را اجرایی می نماید تا کارفرما و پیمانکار اطمینان داشته باشند نتیجه و نرم افزار تولید شده، با تفکر و برنامه از قبل تعیین شده نزدیکی کافی داشته باشند.
بیانیه نرم افزار چابک

09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com

دوره آموزش صفر تا صد اندروید بصورت

صفرتاصد اندروید در خدمتتان هستیم…

دوره آموزش صفر تا صد اندروید بصورت پروژه محور ساخت اپلیکیشن دیوار و سمت سرور

بصورت مبتدی تدریس از پیش نیاز جاوا تا صفرتاصد اندروید با استفاده از محیط برنامه نویسی اندروید استودیو
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
آموزش ویدیوئی قابل فهم + سورس
تدریس توسط بهترین مدرس کشور
با هزینه بسیار مناسب
کاملا اختصاصی و مبتدی تا حرفه ای
حتی کسانیکه تا الان تجربه برنامه نویسی نداشته اند نیز میتوانند در این دوره شرکت کرده و با یادگیری این آموزش کسب درآمد نمانید.

 

ثبت نام کنندگان در یک گروه خصوصی تلگرام عضو میشوند و این دوره با بیش از ۶۰ ساعت فیلم آموزشی بروز برگزار خواهد شد، هر روز ۲ ساعت برای پرسش و پاسخ زمان در اختیار ثبت نام کنندگان گذاشته خواهد شد.
برنامه کلس مجازی این دوره نیز به شرح زیر می‌باشد :

سرفصل های این دوره آموزشی و معرفی مدرس و میزبان دوره:

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

به همراه آموزش جاوا

به صورت پروژه محور

عنوان پروژه انتخابی:

طراحی برنامه ثبت آگهی

(مشابه برنامه دیوار)
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
مدرس دوره:

امجد قاسمی راد

برگزارکننده:

کانال انجمن علمی کامپیوتر

سرفصل ها

آموزش جاوا

جلسه اول (نصب و شروع جاوا)

نصب jdk جاوا

معرفی و نصب برنامه netbeans

شروع برنامه نویسی در CMD

شروع برنامه نویسی در netBeans

پوشش مباحث متغیر،تابع و شرط

جلسه دوم (ادامه مقدمات جاوا)

حلقه ها، سوئیچ، break، continue، حلقه های تو در تو

Scanner, Print

تبدیل داده

کامنت

جلسه سوم (String)
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
String, String methods, Regex

جلسه چهارم (ساختمان های داده)

آرایه ها، آرایه لیست،صف، پشته

جلسه پنجم (شی گرایی در جاوا)

معرفی و مقدمات شی گرایی

مفهوم کلاس و شی

Abstract

Interface

Encapsulation

جلسه ششم (ادامه شی گرایی در جاوا)

چندریختی

ارث بری
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
Overriding

Initialization, Constructor

Finalize method

جلسه هفتم (Exception handling)

مدیریت خطا (Exception handling)

جلسه هشتم (File)

کار با فایل (ورودی و خروجی)

جلسه نهم (File)

کار با فایل (ورودی و خروجی)

جلسه دهم (Thread)

چندنخی (Multithreading)
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
جلسه یازدهم (Thread)

چندنخی (Multithreading)

جلسه دوازدهم (GUI)

مقدمه طراحی گرافیکی در جاوا

شروع طراحی (طراحی frame, Label,…)

جلسه سیزدهم (GUI)

ادامه طراحی ها

طراحی در نت بینز

طراحی یک برنامه دفترچه تلفن ساده

جلسه چهاردهم (…)

ادامه طراحی برنامه دفترچه تلفن و استفاده از آنچه تاکنون آموخته ایم

جلسه پانزدهم (جمع بندی)

جمع بندی بخش جاوا و ورود به برنامه نویسی اندروید

آموزش اندروید

بخش اول

جلسه اول (شروع برنامه نویسی اندروید)
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
نصب اندروید استودیو

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

استفاده از دستگاه واقعی

نصب پلاگین وایرلس

برنامه سلام اندروید

ایجاد اکتیویتی جدید

معرفی ساختار کلی یک برنامه اندرویدی (شامل manifest , res , java , gradle) و زیرشاخه های آنها

جلسه دوم، سوم و چهارم (ویجت ها و رویدادهای آنها)

Button
    Toggle button     Checkbox     Radio button
Checked textview     Spinner     Progress bar    

Seek bar

Quick contact badge
    Rating bar     Switch     Space

Textview
    Edittext انواع آن     Imagebutton     Imageview
Videoview     Timepicker     Datepicker    

Calendarview
Chronometer     Textclock    

webView
   

جلسه پنجم (Layouts)

بررسی layout های مختلف
Linear     Relative     Constraint     Frame
Grid     Coordinator     Table     Include

جلسه ششم (Activity & Intent)

چرخه حیات اکتیویتی
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
سایر مسائل مرتبط با اکتیویتی

Intent ها

جلسه هفتم (Fragments)

چرخه حیات

انواع فراگمنت و کار با آنها

کار با Action bar

جلسه هشتم (فونت)

کار با فونت

جلسه نهم (منوها)

Option menu

Context menu

Popup menu

جلسه دهم (ذخیره و بازیابی)
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
استفاده از Shared preference

جلسه یازدهم (ذخیره و بازیابی)

پایگاه داده SQLite

جلسه دوازدهم (ذخیره و بازیابی)

ادامه SQLite

جلسه سیزدهم (ذخیره و بازیابی)

کار با حافظه داخلی و SD Card

جلسه چهاردهم (Android telephony)

تماس

پیام کوتاه

ارسال ایمیل
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
جلسه پانزدهم (Wi-Fi , Bluetooth)

کار با شبکه وایرلس

جلسه شانزدهم (Multimedia)

ضبط صوت

موزیک پلیر

ویدئو پلیر

جلسه هفدهم (Camera)

عکاسی و فیلم برداذی با دوربین اصلی و دوربین جلویی

استفاده از Flash Light

جلسه هجدهم (انیمیشن)

کار با انیمیشن در اندروید

جلسه نوزدهم (Sensors)

اثر انگشت

شتاب سنج
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
ژیروسکوپ

نزدیکی

قطب نما

جلسه بیستم (Services)

کار در پس زمینه

جلسه بیستم و یکم (Widget)

آشنایی با ویجت ها در اندروید

جلسه بیستم و دوم (Maps)

کار با نقشه در اندروید

جلسه بیستم و سوم (Maps)

ادام09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.comه…

جلسه بیستم و چهارم (ایجاد کتابخانه دلخواه)

ایجاد کتابخانه های نمونه

جلسه بیستم و پنجم (استفاده از gitHub در پروژه)

آموزش اتصال gitHub به اندروید استودیو و استفاده از آن

جلسه بیستم و ششم (استفاده از کتابخانه ها)

استفاده از چند نمونه کتابخانه

جلسه بیست و هفتم (ارتباط با سرور)

استفاده از کتابخانه های Json  و Jsoap

جلسه بیست و هشتم (Customize)

بومی کردن برنامه

چند زبانه کردن و …

جلسه بیست و نهم (جمع بندی)

جمع بندی مطالب گفته شده و آموزش بخش هایی که ممکن است در طول دوره از قلم افتاده باشند.

کار با ویبره….
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
کار با Notification Light

Splash

….

بخش دوم (طراحی و پیاده سازی بخش های مختلف برنامه)

توجه!

    مباحث مربوط به بخش سروری که اطلاعات در آن ثبت و از آن دریافت می شود و به طور کلی برنامه با آن در ارتباط است در این آموزش شرح داده نخواهد شد، زیرا خارج از بحث آموزش اندروید است ولی سمت سرور می‌باشد.
    تعداد جلسات این بخش به روند پیاده سازی پروژه بستگی دارد. (حدود 10 جلسه)

بخش سوم (جمع بندی و انتشار برنامه)

نکاتی در مورد این دوره:

    از آنجایی که در این دوره برنامه نویسی اندروید با زبان جاوا آموزش داده می شود، لذا ابتدا نیم نگاهی به برنامه نویسی جاوا خواهیم داشت سپس برنامه نویسی اندروید را آغاز خواهیم کرد.
    در طول دوره مطالبی که ممکن از از قلم بیفتند به مرور آموزش داده خواهند شد چرا که ممکن است برخی موارد نیاز به دانش قبلی داشته باشند.
    این دوره به گونه ای طراحی شده که بیشتر بخش های برنامه های اندرویدی را فرابگیرید و بتوانید هر برنامه ای که در ذهن داشته باشید را پیاده سازی کنید.
    آموزش ها از پایه ای ترین سطح آغاز شده و در پایان هر جلسه به سوالات مربوطه پاسخ داده خواهد شد.
    هر یک از بخش های فوق ممکن است یک یا چند جلسه طول بکشند.

برای یادگیری بهتر پیشنهاد می شود:
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
سعی کنید برای خود پروژه ای تعیین کنید و آن را پیش ببرید. با این کار به صورت عملی درگیر یک پروژه واقعی خواهید شد و با مشکلات آن آشنا می شوید. یاد میگیرید که چگونه مشکلات را حل کنید و چگونه بهتر و بهینه تر کدنویسی کنید.

فیلم‌های آموزشی مخصوص سال 2018 می‌باشد که توسط مدرس ضبط می‌شود برای ثبت نام کنندگان، برای اطلاعات بیشتر درباره این دوره با ما در اکانت تلگرام زیر نیز میتوانید ارتباط داشته باشید :



قسمت اول و دموی دوره صفرتاصد اندروید جهت نظارت بر کیفیت و اطلاعات بیشتر از میزبان و مدرس دوره :
نمایشگر ویدیو

09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com

ایمپورت (import) کردن پروژه در اندروید استودیو

ایمپورت (import) کردن پروژه در اندروید استودیو
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
در این مبحث به نحوه‌ی ایمپورت پروژه‌های اندروید (اکلیپس و اندروید استودیو) در اندروید استودیو و انواع روش‌های آن پرداخته شده است.

به نام خدا. برای ما به عنوان برنامه نویس و توسعه دهنده اندروید، استفاده از سورس‌ها و پروژه‌هایی که سایر افراد نوشته و منتشر کرده‌اند اجتناب ناپذیر است. یا ممکن است پروژه‌ی اندرویدی که خودمان مدت‌ها قبل نوشتیم را باید مجدد ویرایش کرده و نسخه جدید اپلیکیشن را به کاربران عرضه کنیم. برای استفاده مجدد از یک سورس در محیط اندروید استودیو ابتدا باید پروژه را ایمپورت (وارد) کنیم.
اندروید استودیو را اجرا می‌کنم:

صفحه‌ی نخست اندروید استودیو

۳ گزینه از گزینه‌های صفحه ورودی اندروید استودیو مربوط به import کردن سورس است:

    Open an existing Android Studio project: از این گزینه برای ایمپورت کردن پروژه‌هایی استفاده می‌شود که قبلا توسط همین محیط توسعه یعنی اندروید استودیو ساخته شده اند.
    Import project (Gradle, Eclipse ADT): پروژه‌هایی که در محیطی غیر از اندروید استودیو (مانند اکلیپس) ساخته شده‌اند از طریق این قسمت باید ایمپورت شوند.
    Import an Android code sample: از این گزینه برای وارد کردن نمونه کدهای اندروید استفاده می‌شود.

تفاوت پروژه‌ی ساخته شده در محیط اکلیپس و اندروید استودیو

احتمالا اولین سوالی که به ذهنتان رسید این است که تفاوت یک پروژه ساخته شده در محیط توسعه Eclipse با پروژه‌ای که توسط Android Studio ایجاد شده در چیست و چطور باید تشخیص بدهیم پروژه‌ای که از یک وب سایت دانلود کرده‌ایم در کدام محیط توسعه ساخته شده؟
تشخیص بسیار ساده است. کافی است به ساختار پروژه نگاه بیندازید. به دو تصویر زیر دقت کنید:

پروژه‌ی اندرویدی اکلیپس ADT
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
پروژه‌ی اندروید استودیو

تصویر نخست مربوط به یک پروژه اکلیپس است در حالی که تصویر دوم یک پروژه ساخته شده در اندروید استودیو را نشان می‌دهد. واضح‌ترین تفاوت این دو، وجود فولدر و فایل‌هایی است که در نامگذاری آنها کلمه gradle بکار رفته. با بیلد سیستم گریدل در مباحث ابتدایی آشنا شدیم و می‌دانیم این بیلد سیستم در اندروید استودیو بکار رفته بنابراین پروژه‌ای که حاوی فایل‌های مرتبط با gradle باشد در محیط اندروید استودیو ساخته شده و در غیر اینصورت مربوط به اکلیپس است.
import کردن پروژه‌ی اندروید استودیو

قصد دارم یک پروژه که قبلا در محیط اندروید استودیو ساخته شده را ایمپورت کنم. برای اینکار از سورس پروژه مبحث SharedPreferences که حدودا یک سال قبل از تهیه این مبحث آموزشی ساخته شده استفاده می‌کنم.
روی Open an existing Android Studio project کلیک کرده و فولدر Preference را انتخاب می‌کنم:

import کردن پروژ‌ه‌ی اندروید استودیو

مشاهده می‌کنید آیکون اندروید استودیو در کنار نام فولدر مربوط به پروژه نمایش داده می‌شود یعنی ساختار این پروژه مربوط به اندروید استودیو است. در حالی که آیکون پروژه ExpandableListView یک فولدر معمولی ست.
با انتخاب پروژه و تایید آن، محیط اندروید استودیو باز می‌شود و پروژه در حال بیلد شدن است. در قسمت Build جزئیات مربوط به بیلد شدن پروژه لیست می‌شود.
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
دانلود شدن gradle-3.3-all.zip

در اولین مرحله اندروید استودیو در حال دانلود gradle-3.3-all.zip است که حجمی حدود ۸۰ مگابایت دارد. در صورتی که گریدل قبلا روی اندروید استودیوی من نصب شده و چندین پروژه ساخته‌ام. علت در قدیمی بودن سورس پروژه است. از زمانی که این پروژه ساخته شده حدودا یک سال می‌گذرد و در طی این مدت چند نسخه جدیدتر از گریدل معرفی و در حال حاضر آخرین نسخه از آن روی سیستم من نصب شده.
اینجا دو انتخاب دارم. یا پروژه را ایمپورت کنم و اجازه دهم دانلود نسخه قدیمی گریدل به اتمام برسد و پروژه بر اساس همان نسخه بیلد شود یا قبل از ایمپورت کردن پروژه، ورژن گریدل را مطابق نسخه نصب شده در اندروید استودیو تغییر دهم.
به دو دلیل انتخاب منطقی گزینه دوم است. اول از این جهت که نسخه گریدل را به نسخه نهایی تغییر می‌دهم و عمل بیلد توسط جدیدترین نسخه انجام می‌شود و نه یک نسخه قدیمی. دوم اینکه نیاز به دانلود یک فایل چند ده مگابایتی را مرتفع می‌کند.
بنابراین فعلا پروژه را می‌بندم (close project) و فولدر پروژه را باز می‌کنم:

ساختار پروژه‌ی اندروید استودیو
تذکر: این تغییرات را بعد از ایمپورت کردن پروژه و در محیط اندروید استودیو هم می‌توان انجام داد اما من ترجیح می‌دهم قبل از اینکه سراغ اندروید استودیو بروم، ابتدا پروژه را اصلاح کنم تا بعد از ایمپورت نیاز به کنسل کردن دانلود گریدل و اصلاح پروژه نشوم. این کاملا به سلیقه فرد بستگی دارد.

فایل build.gradle را با یک ادیتور ساده مانند ++Notepad باز می‌کنم:
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
21
   
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.3'
 
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
 
allprojects {
    repositories {
        jcenter()
    }
}
 
task clean(type: Delete) {
    delete rootProject.buildDir
}

در خط ۶ پلاگین گریدل نسخه ۲٫۳٫۳ تعریف شده که نسخه قدیمی است. برای پیدا کردن نسخه‌ای که در حال حاضر روی سیستم نصب شده، ساده ترین راه، باز کردن build.gradle پروژه‌ای است که اخیرا ساخته‌ایم:

09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
   
buildscript {
    
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.1'
        
 
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
 
allprojects {
    repositories {
        google()
        jcenter()
    }
}
 
task clean(type: Delete) {
    delete rootProject.buildDir
}

در این پروژه گریدل نسخه ۳٫۲٫۱ تعریف شده بنابراین این عدد را کپی کرده و در build.gradle پروژه هدف جایگزین عدد ۲٫۳٫۳ می‌کنم.
همچنین در نسخه‌ جدید اندروید استودیو در بلاک repositories در buildscript و allprojects یک ریپازیتوری (مخزن) جدید به نام google() اضافه شده. بنابراین این دو مورد را نیز اضافه می‌کنم تا هنگام ایمپورت شدن پروژه اروری به دلیل عدم دسترسی به مخزن گوگل بوجود نیاید.
در واقع من فایل build.gradle پروژه جدید را جایگزین build.gradle پروژه قدیمی کردم.
سپس فایل gradle-wrapper.properties در مسیر gradle>wrapper دو پروژه را مقایسه می‌کنم:

فایل gradle-wrapper.properties در پروژه‌ی اندرویدی

فایل gradle-wrapper.properties در پروژه‌ی اندرویدی

ورژن گریدل در پروژه جدید ۴٫۶ و در پروژه قدیمی ۳٫۳ است. پس این ورژن را اصلاح می‌کنم (به عبارتی نام فایل zip باید همنام با فایل موجود در پروژه فعلی باشد).
در مرحله بعد باید فایل build.gradle درون فولدر app پروژه را اصلاح کنم.
این همان build.gradle (Module:app) است. فایل را باز می‌کنم:

   
apply plugin: 'com.android.application'
 
android {
    compileSdkVersion 25
    buildToolsVersion "26.0.0"
    defaultConfig {
        applicationId "ir.android_studio.preference"
        minSdkVersion 10
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}
 
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.3.1'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    testCompile 'junit:junit:4.12'
}

جزئیات مربوط به این فایل را قبلا در مبحث ساخت فایل APK توضیح داده‌ام. مانند مرحله قبل، فایل build.gradle فولدر app پروژه‌ای که جدیدا ساخته‌ام را باز می‌کنم:
28
   
apply plugin: 'com.android.application'
 
android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "com.example.mahdi.testproject"
        minSdkVersion 19
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}
 
dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}

در بلاک android پارامترهای compileSdkVersion و targetSdkVersion در دو فایل متفاوت هستند. اگر بخواهم پروژه‌ای که قصد ایمپورت آن را دارم با آخرین API کامپایل شود و نسخه هدف (target) نیز جدیدترین API باشد، عدد هردو پارامتر را مطابق پروژه جدید اصلاح می‌کنم. همچنین پارامتر buildToolsVersion در نسخه ۳ اندروید استودیو حذف شده بنابراین آنرا هم از build.gradle حذف می‌کنم (حذف کردن یا نکردن این مورد مهم نیست و خود اندروید استودیو تغییرات را مدیریت می‌کند اما من ترجیح می‌دهم قبلا از ایمپورت، پروژه بیشترین هماهنگی را با ساختار جدید و مدنظرم داشته باشد).
minSdkVersion هم نیاز به توضیح ندارد.
در بلاک dependencies نیز تفاوت‌هایی بین دو پروژه به چشم می‌خورد. نسخه‌ی کتابخانه‌های زیرمجموعه com.android.support مانند appcompat-v7 باید مطابق نسخه‌ی compileSdkVersion باشد. من این پارامتر را از ۲۵ به ۲۸ تغییر دادم بنابراین نسخه‌ی کتابخانه‌های support نیز باید اصلاح شود.
همچنین نسخه کتابخانه constraint-layout را اصلاح می‌کنم.
حتما با مشکلات تحریم آی‌پی ایران در اندروید استودیو دست و پنجه نرم کرده‌اید. برای رفع این محدودیت مطلب دور زدن تحریم‌های نرم افزاری را مطالعه کنید. با وجود امکان رفع محدودیت در دانلود کتابخانه‌ها، من ترجیح می‌‌دهم کتابخانه‌های اضافی که مطمئن هستم در پروژه نقشی ندارند و یا وجودشان برای من لازم نیست را حذف کنم. مانند junit و espresso-core.
آخرین تفاوت مربوط به کلمه compile است. در نسخه جدید اندروید استودیو کتابخانه‌ها به جای compile شدن، implementation می‌شوند. البته عملکرد هردو یکی است فقط در جزئیات تفاوت دارد.
در نهایت فایل build.gradle (فولدر app) پروژه به اینصورت اصلاح شد:
25
   
apply plugin: 'com.android.application'
 
android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "ir.android_studio.preference"
        minSdkVersion 19
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}
 
dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
}

هردو فایل build.gradle و همچنین gradle-wrapper.properties پروژه را اصلاح کردم.
حالا توسط گزینه Open an existing Android Studio project پروژه را ایمپورت می‌کنم:

ایمپورت کردن پروژه‌ی اندروید در اندروید استودیو
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
پروژه بدون کوچکترین اخطار و بدون اینکه نیاز به دانلود نسخه‌ای از گریدل یا کتابخانه‌ها باشد ایمپورت شد.
البته نباید انتظار داشت در پروژه‌های سنگین هم همین نتیجه را گرفت. در پروژه‌های واقعی و غیر آموزشی که عموما از کتابخانه‌های مختلف استفاده شده به احتمال زیاد نیاز به دانلود چند کتابخانه هست. با اینحال بخشی از ارورها رفع می‌شود.
باز هم تاکید می‌کنم اینکه قبل از ایمپورت پروژه را اصلاح کنیم یا نه کاملا به سلیقه و میل شخص توسعه دهنده بستگی دارد. می‌توان پروژه را مستقیما ایمپورت کرد و تغییرات را در همان محیط انجام داد. ولی من ترجیح می‌دهم تغییرات را در محیطی خارج از محیط توسعه انجام دهم و بعد از ایمپورت کمتر با ارورها مواجه شوم.
نکته: همیشه نیازی به ایمپورت کردن پروژه‌ها نیست. برخی سورس‌ها (از جمله سورس‌ پروژه‌های آموزشی موجود در سایت ما) معمولا صرفا یک یا دو اکتیویتی دارند که بجای ایمپورت آن می‌توان یک پروژه جدید ساخت و محتوای اکتیویتی‌ها و همچنین کتابخانه‌های بکار رفته را با محتوای پیش فرض پروژه (فایل‌های xml و java) جایگذاری کرد.
نکته: ممکن است هیچگاه گذرتان به پروژه‌های اکلیپسی نخورد. با اینحال توصیه می‌کنم چند دقیقه وقت را به مطالعه قسمت بعد اختصاص دهید تا دلیل اصلاحاتی که قبل از ایمپورت پروژه انجام دادم برایتان ملموس‌تر شود.
import کردن پروژه‌ی اکلیپس (ADT) در اندروید استودیو

در اوایل سال ۲۰۱۹ که من این آموزش را تهیه می‌کنم کمتر پروژه‌ای می‌توان در اینترنت پیدا کرد که مربوط به اکلیپس باشد. با اینحال وظیفه خودم دانستم برای آن چند درصد باقیمانده هم وقت بگذارم. برای این قسمت من از یک پروژه تحت اکلیپس که چند سال قبل از یک وب سایت آموزشی انگلیسی زبان دانلود کرده بودم استفاده می‌کنم.
می‌خواهم یک پروژه که در محیط توسعه اکلیپس یا همان ADT ساخته شده را ایمپورت کنم:

ایمپورت کردن پروژه‌ی اندروید اکلیپس ADT در اندروید استودیو

روی Import project کلیک کرده، فولدر مربوط به پروژه اکلیپس را انتخاب می‌کنم:
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
ایمپورت پروژه‌ی اکلیپس

ایمپورت پروژه‌ی اکلیپس

بر خلاف قسمت قبل، اندروید استودیو برای ایمپورت پروژه‌های اکلیپس یک مسیر جدید ایجاد می‌کند و پوشه‌ی اصلی پروژه بدون تغییر باقی می‌ماند. اندروید استودیو در حین ایمپورت، تغییرات لازم برای سازگاری پروژه قدیمی با محیط توسعه جدید را بطور خودکار انجام می‌دهد. مانند اضافه کردن فایل‌های مربوط به بیلد سیستم گریدل و… .

آپشن‌های import کردن پروژه‌ی اکلیپس در اندروید استودیو

در این مرحله چند آپشن وجود دارد که همگی تیک خورده و ایده آل هم همین است. به عنوان مثال گزینه اول فایل محلی کتابخانه‌ها را با نسخه آنلاین جایگزین می‌کند.
با شروع بیلد شدن پروژه یک ارور گرفتم:

ارور ریپازیتوری Google Maven

علت ارور این است که در پروژه فقط ریپازیتوری jcenter() تعریف شده. در ادامه گفته برای رفع مشکل باید Google Maven Repository() را به پروژه اضافه کرده و مجدد سینک کنید. با کلیک روی خط
Add Google Maven… این کار انجام می‌شود. یعنی مخزن google() به build.gradle اضافه می‌شود. دقیقا همان کاری که در قسمت قبل به طور دستی و قبل از ایمپورت پروژه در محیط Notepad++ انجام دادم!
گزینه Add را زدم و این ارور رفع شد. بلافاصله یک ارور دیگر ظاهر می‌شود:

ارور Failed to find target with hash string android 17

این ارور می‌گوید API 17 در SDK من موجود نیست. همینطور هم هست! من از آخرین API یعنی نسخه ۲۸ استفاده می‌کنم و نیازی به نسخه ۱۷ ندارم.
حالا دو انتخاب دارم. یا API 17 را نصب کنم یا عدد ۱۷ را به ۲۸ تغییر دهم. راه منطقی باز هم گزینه دوم است زیرا در حال حاضر توجیهی ندارد بخواهم پروژه را با یک API مربوط به چند سال گذشته بیلد کنم. بنابراین build.gradle فولدر app را باز می‌کنم:

تغییر compileSdkVersion و targetSdkVersion و minSdkVersion
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
compileSdkVersion و targetSdkVersion (و اگر نیاز بود minSdkVersion) را اصلاح و سپس Sync می‌کنم:

تغییر compileSdkVersion و targetSdkVersion و minSdkVersion

و اما ارور بعد!

ارور جایگزینی compile با implementation

ارور اول مربوط به جایگزینی compile با implementation است که در قسمت گذشته، قبل از ایمپورت انجام دادم.
در این پروژه کتابخانه support-v4 استفاده شده:
1
2
3
   
dependencies {
    compile 'com.android.support:support-v4:18.0.0'
}

به اینصورت اصلاح و سینک می‌کنم:
1
2
3
    09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
dependencies {
    implementation 'com.android.support:support-v4:18.0.0'
}

در ارور دوم این نکته بیان شده که targetSdk نباید در AndroidManifest.xml تعریف شود.

AndroidManifest.xml:
28
   
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="info.androidhive.expandablelistview"
    android:versionCode="1"
    android:versionName="1.0" >
 
    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />
 
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="info.androidhive.expandablelistview.MainActivity"
            android:label="@string/app_name"
            android:theme="@android:style/Theme.Holo.Light.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
 
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
 
</manifest>

در گذشته این اطلاعات در مانیفست تعریف می‌شد که اکنون به build.gradle منتقل شده. بنابراین تگ زیر را از مانیفست حذف می‌کنم:

   
<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" />

بهتر است versionCode، versionName و package را هم از مانیفست حذف کنم. همه این موارد به گریدل منتقل شده.
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
فایل نهایی مانیفست:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
 
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="info.androidhive.expandablelistview.MainActivity"
            android:label="@string/app_name"
            android:theme="@android:style/Theme.Holo.Light.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
 
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
 
</manifest>

حالا با سینک کردن پروژه خطای بیلد نمی‌گیرم. تغییراتی که در طی پروسه تبدیل پروژه به یک پروژه سازگار با محیط توسعه جدید لحاظ شده در فایل import-summary.txt لیست شده است.
دانلود فایل این آموزش با فرمت PDF
تعداد صفحات : ۲۱
حجم : ۱٫۴ مگابایت
قیمت : رایگان
آموزش رایگان, آموزش های کاربردی
۲۴ دی ۱۳۹۷
مطلب قبلی « وب سرویس : بخش سوم : ساخت وب سرویس با PHP و MyQSL و ارتباط آن با Retrofit   
مطلب بعدی کار با GridLayout در اندروید »
مطالب پیشنهادی برای شما
متریال دیزاین : بخش اول : آشنایی با مفهوم متریال دیزاین در اندروید


09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com

متریال دیزاین : بخش اول : آشنایی با مفهوم متریال دیزاین در اندروید

آموزش کار با ListView در اندروید
آموزش کار با ListView در اندروید
صفحه بندی TableLayout
صفحه بندی TableLayout
متریال دیزاین : بخش دهم : کار با Bottom Sheet
متریال دیزاین : بخش دهم : کار با Bottom Sheet
اجرا و دیباگ پروژه اندروید بر روی دیوایس واقعی
اجرا و دیباگ پروژه اندروید بر روی دیوایس واقعی
متریال دیزاین : بخش یازدهم : کار با Bottom Navigation
متریال دیزاین : بخش یازدهم : کار با Bottom Navigation
نمایش اعداد فارسی در View های اندروید
نمایش اعداد فارسی در View های اندروید
متریال دیزاین : بخش دوم : استایل (Style) و تم (Theme) در اندروید
متریال دیزاین : بخش دوم : استایل (Style) و تم (Theme) در اندروید
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com

ساخت اولین پروژه برای اندروید

ساخت اولین پروژه برای اندروید

09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com

 تا شما را با نوشتن ایتدایی ترین برنامه آشنا کنم. در کنار آموزش ساخت پروژه به معرفی قسمت های مختلفی که در اکلیپس ساخته میشود خواهم پرداخت تا متوجه شویم هر قسمت چکاری انجام میدهد. این پروژه از این نظر که تمام قسمت های مختلف را توضیح میدهد، مهم میباشد و کار را برای پروژه های بعدی راحتتر میکند. بدیهی است در این مقاله خیلی کلی راجع به قسمت های مختلف توضیح داده خواهد شد و برای توضیحات بیشتر لطفاً به کتابهای آموزش برنامه نویسی اندروید مراجعه کنید.

اگر تاکنون مقاله های “شروع کار برای برنامه نویسی اندروید” و “تنظیم ماشین مجازی اندروید (AVD)” و “بررسی چند واژه مهم اندروید” را مطالعه نکرده اید، لطفاً این مقاله را بخوانید. همچنین درصورتیکه SDK اندروید را ندارید لطفاً آنرا از صفحه “دانلود اندروید SDK 2.3” دانلود کنید.

حالا که همه چیز آماده است لطفاً برنامه اکلیپس خود را اجرا کنید، با رفتن به File>New>Project یک پنجره باز میشود، در فولدر Android بر روی Android Project کلیک کنید (در حالت انتخاب قرار میگیرد)، و سپس بر روی دکمه Next کلیک کنید. پنجره جدیدی با نام New Android Project نشان داده میشود. تنظیمات اولیه پروژه در این پنجره انجام میشود.
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
۱) برای نمونه در قسمت Project Name (اولین فیلد) نام MyNewProject را وارد کنید.

۲) در قسمت Build Target معلوم میکنیم برای کدام ورژن از اندروید میخواهیم برنامه بنویسیم. در مربع کنار Android 2.3 تیک بزنید.

۳) در قسمت Application Name نام پروژه را مجدد وارد کنید (MyNewProject).

۴) در قسمت Package Name نام پکیج مورد نظرتان را وارد کنید. بعنوان نمونه com.kamalan.MyNewProject . نام پکیج از این نظر بسیار مهم است که شما میتوانید در برنامه های مختلفی که در این پکیج مینویسید به همدیگر دسترسی داشته باشید. دقت کنید برای بار اول نام پکیجی را برای خودتان بسازید که دیگر نیاز به عوض کردن نداشته باشد. اندروید به این نام بسیار حساس است و اگر دو برنامه دو نام پکیج مختلف داشته باشند، بهم دیگر دسترسی نخواهند داشت، مگر در حالت Content Provider که انشالله بعداً مفصل راجع به آن بحث خواهد شد.

۵) در قسمت Create Activity هم نام پروژه را وارد کنید (MyNewProject).

۶) عدد ۳ را در Min SDK Version وارد کنید. عدد ۳ معرف حداقل سطح APIی است که برنامه شما میتواند بر روی آن اجرا شود. اگر فرضاً شما عدد ۸ را وارد کنید به اندروید میگویید که برنامه فقط قابل اجرا بر روی سیستم عاملهایی است که حداقل API Leve 8 باشند. بنابراین برنامه شما بر روی سیستم عاملهای پایینتر (در این حالت خاص گوشی های قدیمی) قابل اجرا نخواهد بود.

در پای09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.comان بر روی دکمه Finish کلیک کنید.

حال مجدداً به برنامه Eclipse وارد میشوید و نام پروژه خود را در پنل Package Workspace به همراه کلی فایل دیگه ۸) مشاهده خواهید کرد. و حالا توضیح کلی این فایلها.

۱) در قسمت src لیست تمام کلاسها و اکتیویتی هایی که تاکنون ساخته اید، نمایش داده خواهد شد.

۲) در این قسمت فایلی با نام R.java وجود دارد که بسیار مهم می باشد. در این فایل شماره هگزادسیمالی ۳۲ بیتی به هر نام و فایلی که قرار است در برنامه استفاده شود، بطور خودکار اختصاص داده خواهد شد. لطفاً این فایل را دست کاری نکنید. در اکلیپس با وارد کردن هر فایل (مثلاً یک عکس) یا نام یک رشته (String) یک آدرس هگز در این فایل ایجاد میشود. در نت بینز تا بر روی کامپایل کلیک نکنید، آدرسی اختصاص داده نمیشود.

۳) با این قسمت کاری نداریم. در این قسمت سورس تمام کتابخانه های موجود در اندروید قرار گرفته است.

۴) در فولدر assets میتوانیم فایلهای صوتی و تصویری را ذخیره کنیم تا در برنامه از آنها استفاده کنیم.

نکته: مدریت فایل بر روی این فولدر انجام نخواهد شد. بدین معنی که انروید به این فایلها آدرسی در R.java اختصاص نخواهد داد. و همچنین تصاویری که در این فولدر قرار میگیرند بدون هیچ دستکاری در برنامه مورد استفاده قرار میگیرند. توضیح بیشتر اینکه مدریت فایل برای کم کردن حجم برنامه تصاویری که در فولدر res قرار دارند را فشرده خواهد کرد بنابراین محتوای عکس (از نظر کیفیت) تغییر خواهد کرد ولی تصاویری که در فولدر assets قرار میگیرند بدون دستکاری باقی خواهند ماند.

۵) در این فولدر نیز مانند فولدر assets میتوانیم فایلهای صوتی و تصویری را قرار دهیم. به هر فایلی که در این فولدر قرار گیرد آدرسی خاص در R.java اختصاص داده خواهد شد.
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
سه فولدر drawable ملاحظه میکنید که برای ذخیره تصاویر مانند آیکون در سایزهای مختلف است. برای اطلاعات بیشتر راجع به استانداردی که اندروید قرار داده است (البته اجباری نیست!) به صفحه “Icon Design” مراجعه کنید.

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

در فولدر آخر values باز هم فایلهای xml قرار میگیرد. این فایلها به تعریف نام های مختلف مانند نام برنامه، رنگ، اندازه فونت و …  پرداخته میشود.

۶) فایل AndroidManifest.xml فایل بسیار مهمی است که اطلاعات مربوط به پروژه را در خودش نگهداری میکند. اطلاعاتی مانند نام پروژه، ورژن پروژه، تعداد اکتیویتی ها، فیلترها، احیاناً API های گوگل اگر در برنامه استفاده شده باشد مانند API مربوط به موقعیت بر روی نقشه و انواع دسترسی ها به منابع سیستم عامل. در مقاله ای مجزا به تعریف کامل مانیفیست خواهیم پرداخت.

اینها توضیحات بسیار کلی بود راجع به روند ایجاد پروژه بر مبنای اندروید در اکلیپس و توضیح فایلهایی که توسط اکلیپس ساخته میشود. حالا به برنامه ای که توسط اکلیپس ساختید مراجعه کنید و یک یک فایلها را مورد بررسی قرار دهید.

src>MyNewProject.java فایل اصلی یا بهتر بگویم اولین اکتیویتی است (اگر راجع به اکتیویتی چیزی نمیدانید به اینجا مراجعه کنید). با اجرای برنامه این فایل اجرا میشود. اگر این اکتیویتی را باز کنید، سورس برنامه را مشاهده خواهید کرد. در خط اول پکیج برنامه معرفی شده است (همان پکیجی که قبلاً معرفی کرده بودیم). سپس کلاسهای مختلفی که در برنامه مورد نیاز بوده است به برنامه import شده است. حالا به کلاس برنامه میرسیم که از کلاس Activity ارث برده است و شامل یک تابع با نام onCreate است. در مورد این تابع مفصل در مقاله ای که راجع به چرخه حیات برنامه (Application life cycle) اندروید است، صحبت خواهیم کرد.

setContentView(R.layout.main); وقتی برنامه به این خط میرسد، نوبت به اجرای گرافیک صفحه است که در layout>main.xml تعریف شده است. همانطور که گفتیم وقتی فایلی در فولدر res ایجاد میشود، مدیریت منابع آدرسی خاص به آن اختصاص میدهد. برای دسترسی به آدرس (بطور خاص در اینجا main) از R.layout.main استفاده شده است.

در قسمت res>layout>main.xml طرح گرافیکی صفحه نشان داده شده است. LinearLayout یکی از چهار حالت گرافیکی است که برای طراحی صفحه بکار گرفته شده است (بعداً در یک مقاله مفصل راجع به انواع layout ها صحبت خواهم کرد). در طراحی خطی هر المان بصری (مانند TextBox, EditBox در دلفی و ویژوال #C) در یک سطر قرار میگیرد. در این برنامه فقط یک TextView داریم که محتوای متنی که باید نشان دهد در res>values>strings.xml قرار گرفته است.
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
برای دیدن نتیجه برنامه بر روی ایمولاتور ابتدا باید AVD را راه اندازی کرد (اگر نمیدانید AVD چیست این مقاله را مطالعه کنید). برای اینکار در اکلیپس بر روی Window>Android SDK and AVD Mamager کلیک کنید. در پنجره ای که باز میشود یکی از ایمولاتورهایی را که ساخته اید، Start کنید.

بعد از چند ثانیه ایمولاتور بوت میشود و بالا می آید. حال در محیط اکلیپس دکمه را Run بزنید (میتوانید در قسمت Project Workspace بر روی نام پروژه خود راست کلیک کنید و از پنجره باز شده Run As>1 Android Application را کلیک کنید). حال میتوانید برنامه خود را بر روی ایمولاتور مشاهده کنید.

انجام پروژه های برنامه نویسی تحت وب،ویندوز، اندروید


انجام پروژه های برنامه نویسی تحت وب،ویندوز، اندروید
در انجمن سفارش برنامه نویس
        خدماتی که من برای شما انجام می دهم
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com

        ساخت اپلیکیشن اندروید
        ساخت افزونه وردپرس
        ساخت افزونه مای بی بی
        نصب انواع سیستم مدیریت محتوا
        تعمیر اسکریپت ها وافزونه های تحت وب
        طراحی و ساخت اسکریپت های تحت وب
        توسعه افزونه ها واسکریپت های تحت وب
        برنامه نویسی قالب سیستم های مدیریت محتوا به سلیقه شما
        ساخت انواع برنامه تحت دسکتاپ با C#.net
        اعمال المان های سئو در قالب و هسته سایت


09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
            تنها مواردی که در سفارش درج شده انجام خواهد شد
            تنها قبل از آغاز پروژه می توانید از شروع آن انصراف دهید
            در صورت انصراف از پروژه ۱۰ درصد از هزینه پروژه کسر می شود
            تخفیف های پروژه بصورت محدود تعریف می شوند و پس پایان مدت زمان دیگر اعمال نخواهند شد
            سفارشات پس از شروع پروژه جاری به عنوان پروژه جدید تلقی می شود
            هزینه سفارشات قبل از انجام دریافت می شود
            مدیریت می تواند هر زمان این قوانین را به صلاح دید تغییر دهد

        اپلیکیشن اختصاصی سایت
        اپلیکیشن موقعیت یاب
        سیستم بازاریابی برای وردپرس
        عضویت و ورود و خروج خودکار مای بی بی و وردپرس
        ورود و خروج خودکار بین دو سیستم وردپرس
09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com
        هماهنگ سازی افزونه با سامانه پیامکی مشتری
        راه اندازی فروشگاه و انجام تنظیمات مورد نیاز
        برنامه نویسی منو اختصاصی برای سایت
        تعمیر مشکلات افزونه سیستم جوملا
        افزونه تغییر گروه کاربری کاربر مای بی بی در پنل ناظم
        سیستم صدور اطلاعات بن کارکنان
        نرم افزار ارسال پیامک انبوه
        نرم افزار پذیرش درمانگاه


09367292276
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276
09367292276
azsoftir@gmail.com