به نام خدا. در جلسه گذشته با نحوهی نصب اندروید استودیو و همچنین ساختار SDK آشنا شدیم. در این جلسه قصد دارم شما را با محیط اندروید استودیو، نحوهی ساخت پروژه اندروید و ساختار آن آشنا کنم.
ساخت پروژه اندروید
پس از اجرای اندروید استودیو روی گزینهی Start a new Android Studio project کلیک میکنم.
در این مرحله نوع پروژه اندروید و نوع اکتیویتی (Activity) را باید تعیین کنیم. هدف من ساخت اپلیکیشن برای تلفن همراه و تبلت است بنابراین همان تب نخست یعنی Phone and Tablet را انتخاب میکنم.
سایر گزینهها هرکدام برای یک هدف خاص پیش بینی شده. Wear OS برای ساخت اپلیکیشن ابزار پوشیدنی (مانند ساعت هوشمند)، TV برای تلویزیونهای هوشمند، Android Auto برای خودروهایی که از سیستم عامل اندروید استفاده میکنند و Android Things مربوط به حوزهی اینترنت اشیاء میشود.
اندروید استودیو چند نوع مختلف از اکتیویتی را پیشنهاد میدهد. من نوع سادهی آن یعنی Empty Activity (اکتیویتی خالی) را انتخاب میکنم. با مفهوم اکتیویتی در ادامه بحث آشنا خواهید شد. به مرحلهی بعد میروم:
Name: در فیلد Name نام اپلیکیشن را وارد میکنم. این نام به همراه آیکونی که بعدا برای برنامهی خود انتخاب میکنیم، در لیست اپلیکیشنهای نصب شدهی روی دیوایس اندرویدی به کاربر نمایش داده میشود.
Package name: هر اپلیکیشن در اپ استورهایی مانند گوگل پلی ، بازار و … بر اساس Package name آن تشخیص داده میشود و نام اپلیکیشن ملاک نیست. به عنوان مثال ممکن است چندین اپلیکیشن با نام Shop در مارکتها موجود باشد. اما Package name برای هر اپلیکیشن یکتاست و اگر نام پکیج من با یک اپلیکیشن دیگر موجود در مارکت یکسان باشد، مارکت اجازهی انتشار آنرا نمیدهد. مارکتها بر اساس همین نام پکیج بروزرسانیهای منتشر شده برای اپلیکیشنهای نصب شده روی دیوایس کاربر را بررسی و اعلام میکنند. Package name از دو بخش تشکیل میشود. بخش اول یک نام دامنه (Domain name) و بخش دوم نام اصلی برنامه. مزیت استفاده از دامین (دامنه) این است که احتمال تشابه نام پکیج انتخاب شده برای توسعه دهندگان مختلف را از بین میبرد. برای مثال من از دامین وب سایت android-studio.ir استفاده میکنم که بنا برا الگوی پیشنهادی اندروید استودیو ابتدا پسوند دامین یعنی ir و سپس نام دامین قید شده. بعد از دامین یک نام اضافه میشود که معمولا همان نام اپلیکیشن است. البته در انتخاب پکیج نیم هیچ قاعدهی خاصی وجود ندارد. برای مثال الزامی به استفاده از دامین نیست و مقدار زیر هم صحیح است:
android_studio.androidcourses
یا قسمت دوم حتما نباید نام اصلی پروژه باشد و میتواند هر عبارت دیگری را شامل شود. اگر مالک یک دامین هستید بهتر است آنرا بکار ببرید اما اگر مالک هیچ دامینی نیستید طبق خط بالا یک مقدار دلخواه وارد کنید. از بکار بردن دامینی که در اختیار سایر افراد یا شرکتهاست خودداری کنید.
Save Location: این فیلد مربوط به محل ذخیره سازی پروژه اندروید است.
Language: در این قسمت زبان پیش فرض پروژه اندروید را تعیین میکنیم. مدتی از معرفی زبان کاتلین (Kotlin) برای اندروید میگذرد و حالا از نسخهی ۳٫۳٫۲ اندروید استودیو انتخاب زبان به wizard پروژه اضافه شده. من فعلا با جاوا کار میکنم بنابراین انتخاب من Java است.
Minimum API Level: که در نسخههای قبل Minimum SDK نام داشت این امکان را به برنامه نویس میدهد تا پایینترین نسخهی اندرویدی که اپلیکیشن پشتیبانی میکند را تعیین کند. لغت Minimum به معنی حداقل بوده و در اینجا به این معنی است که باید تعیین کنم اپلیکیشن من پایینترین نسخه اندرویدی که پشتیبانی خواهد کرد کدام API است. در زمان تهیهی این آموزش نزدیک به ۱۰۰% دیوایسهای اندرویدی که در اختیار کاربران است از API 19 به بالا هستند بنابراین من همین نسخه را انتخاب میکنم. علت الزامی بودن تعیین مینیمم این است که در هر نسخهی جدید از اندروید، امکانات و قابلیتهایی اضافه میشود که اگر این امر را لحاظ نکنیم، ممکن است دارندگان دیوایس با نسخههای پایینتر در مواردی با مشکلاتی مواجه شوند. با انتخاب هر گزینه به عنوان مینیمم، اطلاعاتی در مورد آن API و سطح گستردگی آن نمایش داده میشود. در زمان نگارش این متن، ۹۵٫۳% دیوایسها API 19 و به بالا هستند و نیازی نیست از API پایینتری استفاده کنم.
احتمالا میپرسید چرا پایینترین نسخه یعنی API 9 را انتخاب نکردم تا اطمینان پیدا کنم ۱۰۰% دیوایسها میتوانند از این اپلیکیشن استفاده کنند؟ برخی قابلیتهای اندروید که در نسخههای جدید معرفی شده، پیاده سازی آن برای نسخههای قدیمی غیرممکن و یا پیچیده است. بنابراین منطقی نیست من برای تعداد انگشت شمار گوشی و تبلتهای مربوط به ۱۰ سال پیش بخواهم وقت و انرژی بیشتری صرف کنم یا برخی محدودیتها را بپذیرم.
با کلیک روی گزینه Help me choose به نمودار کاملی در این خصوص دسترسی خواهید داشت.
instant apps: این ویژگی مدتی پیش معرفی شد و امکانی را برای کاربر فراهم میکند تا بدون نیاز به نصب اپلیکیشن بتواند یک پیش نمایش (Demo) از برنامه را مشاهده و بررسی کند.
AndroidX artifacts: اندروید به تازگی نحوه نامگذاری کتابخانههای خود را تغییر داده. با انتخاب این گزینه، کتابخانههای support موجود در پروژه بر اساس شیوهی جدید نامگذاری میشود. (با مفهوم و کاربرد کتابخانهها در مباحث آتی آشنا خواهید شد).
در این مرحله کامپوننتهای مربوط به لایهی ConstraintLayout از SDK فراخوانی و نصب میشود. این مرحله فقط در ساخت اولین پروژه اندروید انجام میشود و در پروژههای بعدی از نسخهی کش (ذخیره) شده در خود اندروید استودیو استفاده میشود و نیاز به دریافت مجدد از SDK نیست.
حالا صبر میکنم تا پروژه بیلد (Build) یا ساخته شود. با توجه به سخت افزار سیستم ممکن است این مرحله چند ثانیه تا یک دقیقه یا حتی بیشتر زمان ببرد. البته این تایم در ساخت اولین پروژه طولانیتر است که دلیل آن دریافت تعدادی کتابخانه و کامپوننت مورد نیاز اندروید استودیو بوده که مهمترین آن بیلد سیستم Gradle (گریدل) میباشد. به تب Build در پایین اندروید استودیو دقت کنید:
یک فایل زیپ با نام gradle-4.10.1-all.zip از سرور gradle.org در حال دانلود است که در حدود ۱۱۰ مگابایت حجم دارد. تا این لحظه که من در حال تهیهی این آموزش هستم سایت گریدل بر روی آیپی ایران تحریمی اعمال نکرده و دانلود این فایل به راحتی انجام میشود. با اینحال اگر به هر دلیل این مرحله با موفقیت انجام نشد یا رایانه شما به اینترنت دسترسی ندارد، در صفحهی ۱۳ روشی را معرفی کردم که Gradle را میتوانید به صورت آفلاین نصب کنید. هرچند بعد از گریدل، تعدادی کامپوننت دیگر نیز باید از سرورهای گوگل و jcenter دریافت شوند که نیاز به تغییر آیپی جهت عبور از تحریم هم هست اما گریدل حجم بیشتری نسبت به بقیه دارد و احتمال بروز مشکل بخصوص در سرعت پایین اینترنت بیشتر است.
گریدل دریافت و نصب شد. حالا با اخطار مواجه میشوم:
اندروید استودیو برای دریافت کامپوننتها و کتابخانههای موردنیاز خود به اتصال به dl.google.com نیاز دارد که قبلا گفتیم IP های ایران تحت تحریم هستند. به ناچار آیپی را تغییر داده و مجدد پروژه را Sync (سینک به معنی همگام سازی) میکنم:
با کلیک روی Try Again یا دکمهی Sync در منوی ابزار، پروژه اندروید مجدد سینک شده و دریافت کتابخانهها شروع میشود. به طور کلی هرگاه به هر دلیلی بیلد شدن پروژه متوقف شد، پس از رفع خطای احتمالی باید مجدد پروژه را سینک کنید.
فایلهای مورد نیاز دریافت و پروژه با موفقیت بیلد شد و پروژه آمادهی استفاده است:
دو فایل MainActivity.java و activity_main.xml مربوط به همان Activity هستند که هنگام ساخت پروژه، نوع Empty را انتخاب کردم.
بیلد سیستم Gradle (گریدل) چیست؟
بد نیست اطلاعات مختصری در خصوص گریدل بدانیم. به یاد داشته باشید یک برنامه نویس و توسعه دهنده باید فراتر از الزامات مربوط به زبان برنامه نویسی و مباحث فنی بکار رفته در روند توسعه نرم افزار اطلاعات داشته باشد. این یک امتیاز منفی برای شما محسوب خواهد شد اگر به عنوان یک توسعه دهنده اندروید ندانید لینوکس چیست که اندروید بر پایهی آن ساخته شده، یا گریدل که در اندروید استودیو بکار رفته چه کاربردی دارد!
Gradle یک بیلد سیستم (Build System) متن باز و رایگان است که گوگل در سال ۲۰۱۳ اعلام کرد که از این بیلد سیستم در اندروید استودیو استفاده میکند.
بیلد سیستم یا سیستم ساخت، ابزاری ست که طیف وسیعی از عملیات موردنیاز برای توسعه و ساخت یک نرم افزار از جمله ساخت پروژه، پکیج کردن، فشرده سازی منابع، کامپایل کدها و… را انجام میدهد.
بهتر است به این چند خط توضیح بسنده نکرده و چند دقیقهای را در خصوص گریدل در وب جستجو و مطالعه کنید.
نصب آفلاین Gradle
چنانچه به هر دلیلی گریدل بصورت خودکار و آنلاین روی اندروید استودیو نصب نشد با خطای زیر مواجه خواهید شد:
Unknown host ‘service.gradle.org’. You may need to adjust the proxy settings…
اگر از اتصال اینترنت خود مطمئن هستید مجدد پروژه را سینک کنید تا عملیات دانلود تکرار شود. اگر پس از چندبار تکرار مشکل مرتفع نشد میتوانید فایل گریدل را در جایی دیگر دانلود کرده سپس به صورت دستی در محل موردنظر قرار دهید.
مسیر زیر را در سیستم عامل ویندوز خود پیدا کنید (این مسیر برای سایر سیستم عاملها متفاوت است):
Users\[UserName]\.gradle\wrapper\dists\gradle-xx
داخل این فولدر یک فولدر با نامی متشکل از کاراکترهای تصادفی و بدون معنی ساخته شده. داخل این فولدر یک فایل با پسوند zip.part قرار دارد. هنگامی که گریدل به صورت آنلاین نصب میشود، پس از دریافت کامل فایل، فایل تبدیل به zip شده و از حالت فشرده خارج میشود. این تمامِ کاری است که ما باید به صورت دستی انجام دهیم!
برای دانلود فایل گریدل کافیست نام فایل زیپ را گوگل کنید:
در صفحهی Gradle Distributions فایل موردنظر را پیدا کرده و دانلود کنید. دقت کنید نام و نسخهی گریدل باید عینا مطابق باشد. برای یافتن سریع لینک، در صفحهی مرورگر Ctrl + F زده و نام فایل زیپ را سرچ کنید:
یا خیلی ساده تر؛ لینک دانلود گریدل در کادر build اندروید استودیو نمایش داده میشود. روی لینک کلیک و کپی (Ctrl + C) کنید (تصویر صفحهی قبل).
پس از دانلود فایل، ابتدا اندروید استودیو را ببندید. سپس فایلهای موجود در فولدر را حذف و فایل زیپ را جایگزین کنید:
حالا اندروید استودیو را باز کرده و مجدد پروژه را سینک کنید. اینبار گریدل از فایل محلی نصب میشود:
Activity (اکتیویتی) در اندروید
هر پروژه اندروید حداقل یک اکتیویتی دارد. اکتیویتی همان صفحهای است که محتوای مدنظر ما را به کاربر نمایش میدهد. تعداد اکتیویتیهای هر اپلیکیشن به میزان و نوع محتوا و سلیقهی توسعه دهنده بستگی دارد. یک اپلیکیشن ساده ممکن است فقط یک اکتیویتی داشته باشد در حالی که یک اپلیکیشن دیگر میتواند شامل دهها اکتیویتی باشد. هر اکتیویتی از دو بخش تشکیل میشود؛ یک فایل xml و دیگری فایل java که اولی شامل اِلِمانهای تشکیل دهندهی رابط کاربری صفحه و دومی مربوط به کدهای عملکردی مرتبط با آن است. پروژهای که ساختیم به صورت پیش فرض یک اکتیویتی دارد. activity_main.xml و MainActivity.java فایلهای این اکتیویتی هستند. توضیحات بیشتر در مباحث آتی بیان شده است.
آشنایی با محیط پروژه اندروید استودیو
اندروید استودیو از چند بخش تشکیل شده که هر قسمت وظیفهای به عهده دارد.
ستون سمت چپ ساختار پروژه اندروید را نشان میدهد. نحوهی نمایش ساختار پروژه چند حالت دارد که حالت پیش فرض Android است. در این حالت پروژه به دو قسمت کلی app و Gradle تقسیم میشود:
محتویات زیرمجموعهی app به اینصورت است:
AndroidManifest.xml:
این فایل حاوی اطلاعات اصلی پروژه است. ازجمله نام و آیکون پروژه (خطهای ۷ و ۸)، پکیج نیم (خط ۳)، قالب یاtheme برنامه (خط ۱۱)، اکتیویتیها و… . برای باز کردن فایلها دوبار روی آن کلیک کنید.
پوشهی java یک پکیج پیش فرض دارد که فایل جاوای اکتیویتی درون آن قرار دارد. دو پکیج دیگر با عنوان AndroidTest و test در قسمت java ساخته شده که مربوط به فرایند تست پروژه بوده و در صورت عدم نیاز میتوانید این دو مورد را حذف کنید. تمامی کلاسهای جاوای پروژه درون این فولدر قرار میگیرند.
پوشهی res (مخفف Resource به معنی منابع) حاوی منابع مختلفی است:
– Drawable: شامل تصاویر مورد استفاده در اپلیکیشن، برخی فایلهای xml مانند بیت مپها و … که از طریق کلاس R.drawable قابل دسترسی هستند.
– Layout: شامل لایههای واسط کاربری (مانند activity_main.xml) که از طریق کلاس R.layout قابل دسترسی میباشند.
– mipmap: تصاویر مربوط به آیکون اپلیکیشن در این پوشه قرار میگیرد.
– Values: فایلهای xml با محتوای آرایهها (strings.xml)، استایلها (styles.xml)، رنگها (colors.xml)، ابعاد و اندازهها (dimens.xml) و … در این دایرکتوری نگهداری میشود.
Gradle Scripts: در این قسمت چند فایل وجود دارد که مربوط به تنظیمات پروژه و اندروید استودیو میباشد. دو فایل build.gradle را باز کنید. اولی (Project) حاوی اطلاعات کلی از جمله مخازن (Repository) دریافت کتابخانهها است:
کتابخانههایی که در پروژههای اندرویدی استفاده میکنیم از سرورهای google.com و jcenter.com دریافت میشوند که به علت تحریم دسترسی به هردو مسدود شده و به همین دلیل نیاز به تغییر آیپی داریم.
فایل دوم (Module: app) شامل اطلاعات پایهی پروژه ازجمله Minimum API (minSdkVersion)، Target API (targetSdkVersion) و Compile SDK (compileSdkVersion) و کتابخانههایی که در پروژه استفاده میشوند (بلاک dependencies).
شماره ۱: اجرا (Run) کردن پروژه روی دیوایس مجازی یا حقیقی جهت تست و عیبیابی پروژه اندروید.
شماره ۲: قابلیت Instant Run یک تفاوت با Run دارد. با هربار Run کردن پروژه روی شبیه ساز یا دیوایس واقعی، کل پروژه از ابتدا مجدد کامپایل شده و به دیوایس منتقل میگردد که زمان زیادی را تلف میکند اما برای پروژهای که در حال اجراست و تغییراتی را اعمال کردهایم، با استفاده از Instant run بجای Run تنها بخشهایی از پروژه که تغییر کرده به دیوایس منتقل شده و بروزرسانی پروژه با سرعت بیشتری انجام میشود. البته برای استفاده از این قابلیت باید Platform API دیوایس یا دیوایسهای مدنظر را در SDK نصب داشته باشید. به عنوان مثال اگر میخواهید پروژه را روی دیوایسهای با API 26 و API 27 تست کنید و قصد دارید از این ویژگی بهره ببرید باید API این دو نسخه را نصب کنید.
شماره ۳: برای Sync (سینک یا همگام سازی) پروژه
شماره ۴: شبیه ساز اندروید استودیو (AVD)
شماره ۵: دسترسی به SDK Manager
پرسش مستقیم و طرح اشکال را برای مرحلهی آخر بگذارید. در این صورت زمان کمتری برای رسیدن به جواب صرف میکنید و لازم نیست چند ساعت یا چند روز را منتظر پاسخ من و بقیه بمانید!
تعداد صفحات : ۲۰
حجم : ۱٫۵ مگابایت
قیمت : رایگان
تاریخ بروزرسانی آموزش : ۹۷/۱۲/۲۰
دانلود رایگان با حجم ۱٫۵ مگابایت لینک کمکی
سلام مهندس،
من اندروید استودیو را تازه نصب کردم ولی وقتی شروع به برنامه نویسی کردم وقتی که اول کد را مینویسم کد های آماده نمایش داده نمیشود.
پاسخهای صفحه زیر رو بررسی کنید ببینید مشکل شما با کدوم مورد حل میشه. نتیجه رو همینجا اعلام بفرمائید بقیه هم استفاده کنن
https://stackoverflow.com/q/18370599
سلام خسته نباشید. واقعا زیبا آمومش میدید.
خیلی ممنون
سلام وقت بخیر مشکل من باز حل نشد و بعد سینک گرادل باز ارور
Protocol family unavailable
میده
البته ی ارور دیگه هم وقتی باز میکنم میاد
Cannot start internal HTTP server. Git integration, JavaScript debugger and LiveEdit may operate with errors. Please check your firewall settings and restart Android Studio
مشکلات شما مربوط به عدم ارتباط اندروید استودیو با سرور هست. متن ارور رو ترجمه کنید. ممکنه فایروال شما مانع برقراری اتصال میشه. بهرحال باید ببینید ایراد از کجاست. فایروال یا ابزار تغییر آی پی که در حال استفاده هستید
تغییر دادم خطاش عوض شد
Connection refused: no further information
بازم مشکل در ارتباط هست. مطلب تغییر IP رو با دقت مطالعه بفرمائید:
https://android-studio.ir/how-to-bypass-software-sanctions
سلام.
می توانید برای آپدیت Gradle از گوگل از سایت های زیر برای عبور از تحریم گوگل استفاده کنید که کاملا قانونی و رایگان هستند و براحتی می توانید از dns گذاشته شده استفاده نمایید:
https://shecan.ir
نشانی ۱۷۸٫۲۲٫۱۲۲٫۱۰۰ و ۱۸۵٫۵۱٫۲۰۰٫۲ را در بخشهای مربوط به DNS کانکشن خود وارد کنید.
یا
https://github.com/freedomofdevelopers/fod
در صفحه پرسش های رایج قسمت تغییر آی پی، تمامی این روشها معرفی شده. ممنون
سلام
وقتی ران میکنم این ارور رو میده :
Error: Program type already present: android.support.v4.app.INotificationSideChannel
اگه راهنمایی کنید ممنون میشم.
توی استک دیدم که نوشته ممکنه از اندروید ۹ باشه ولی راه حلی پیدا نکردم.
گریدل رو چندین بار بروزرسانی کردم ولی موقع کامپایل ارورم میده.
با تشکر.
سلام. ظاهرا مربوط به androidx هست. لینک زیر رو مطالعه بفرمائید:
https://stackoverflow.com/a/54178126
البته در مطلب مربوط به مهاجرت به androidx هم توضیح داده شده بود:
https://android-studio.ir/androidx-migration-guide
این فصلایی که تیکه تیکه گذاشتین کاملش همون پکیج ۳۳ تومنیه یا اون یه چیز دیگس؟؟
بله بزرگوار. صفحه دوره آموزشی رو مطالعه بفرمایید. توضیح داده شده که دوره شامل تمامی آموزشهای موجود در سایت هست
سلام کار با نسخه ۳.۴.۰.۲با این نسخه یکی هست و اینکه گریدل بیلد بشه ماین اکتیویتی کلس به طور اتومات ایجاد میشه یا باید کار دیگه ای کرد
بله تفاوت بین نسخه ها عموما در اصلاحیه و قابلیتهای جزئی هست و کلیت کار تفاوتی نمیکنه. اگر متن آموزش رو با دقت مطاعه بفرمایید متوجه خواهید شد که اکتیویتی پیش فرض به صورت خودکار ساخته میشه. اگه ساخته نشده پروژتون بیلد نشده. ببینید علت چی هس و چه اروری گرفتید
سلام این نصب انلاین کامپونت ها چقدر حجم اینترنت میبره؟؟
کدوم کامپوننتا؟ گریدل حدود ۱۰۰ مگ. کتابخونه های مورد نیاز پروژه خیلی کم. اگه ابزار SDK منظورتونه فصل قبل رو مطالعه کنید
سلام,من طبق نوشته های شما جلو رفتم,الان همه چی درست پیش رفته فقط تو unresolved dependencies چهارتا ارور دارم (failed to resolved: com.android.support:appcompat-v7:28.0.0
failed to resolve:
com.android.support.constraint:constraint-layout
failed to resolve:com.android.support.test.runner
failed to resolve: com.android.support.test.expresso)چجوری حلش کنم؟
تاکید شده قبل مطرح کردن سوال، صفحه “پرسش های رایج” رو مطالعه بفرمایید
با سلام
میخواستم بدونم این Warning که درون manifest وکل تگ application رو شامل میشه مربوط به چیه(زرد رنگ بودن تگ اپلیکیشن درون منیفست درون عکس منیفست همین صفحه)
ممنون.
چیز مهمی نیست
سلام ببخشید من وقتی میخوام پروژه رو درست کنم قسمت activity-main کامل نمیاد وقتی هم build رو میزنم همچین اخطاری میده Protocol family unavailable چی کار باید بکنم؟؟؟ مشکل از Gradle هستش؟؟؟؟ تاه کار هستم و تازه اندروید استودیو رو نصب کردم
مطلب پرسش های رایج، تغییر آی پی رو مطالعه بفرمایید
من در VALES فایل DIMENS رو ندارم اندروید استودیو ۳٫۲ مشکل پیش نمیاد.چون ساختم واسش خطا میده
این فایل به صورت پیش فرض وجود نداره و خودتون باید بسازید. خطاشو ترجمه یا سرچ کنید ببینید ایراد از چی هست
سلام
گریدل دریافت میشد اما پروژه بیلد نمیشد و دایم خطای زیر رو میداد
could not find com.android.tools.build:gradle:3.3.2.
بجای سایفون از fod استفاده کردم
خداروشکر مشکل حل شد
ممنون
واقعا جامع و گام به گام. متشکرم
ممنونم از شما کامل و مفید.
تشکر
با سلام مرسی از سایت خوبتون
تو سینک اولین پروژه مشکل دارم و اروری که دریافت میکنم تو لین زیر لطفا راهنمایی کنید.
http://i65.tinypic.com/2i0u8zn.png
آدرس عکس اشتباهه
سلام دوست عزیز
من بالاترین نسخه اندروید استودیو را دانلود کردم ولی با مطالعه مباحث مطرح شده داخل سایت شما خیلی تفاوت دارد. مثلا گریدل ماژول ندارد یا فایل مانیفست را در اون پیدا نکردم.
می خواستم اسکرین شات از برنامه براتون بفرستم ولی سایت قابلیتش را نداره
باتشکر از لطف و توجهتون
پروژتون بیلد نشدهو ببینید چه ارورهایی گرفتید
این ارور موقع بیلد:
http://uupload.ir/files/68e_6.png
برخورد نکردم با این ارور. خطها رو سرچ بفرمایید
سلام خسته نباشید نسخه نرم افزار من ۳٫۲٫۱ هستش وقتی پروژه رد ایجاد مینم تو قسمت app پوشه java یا res نیستش حتی build Gradle( module app رو ندارم چیکار کنم اول راهم هنوز.
http://s9.picofile.com/file/8341335084/Screenshot_3_.png
یه مشکل دیگه قبل ازنصب برنامه جاوا رو نصب کردم تنظیمات گفته شده رو هم انجام ولی وقتی تو cmd میزنم ورژن جاوا رو ببینم نمیاره
خب ببینید چرا پروژتون سینک نمیشه و چه اروری میگیرید. نصب بودن یا نبودن جاوا مهم نیست. تو نسخه های جدید خودش جاوا رو نصب میکنه
با سلام و تشکر از سایت خوبتون
من تازه میخام شروع به برنامه نویسی کنیم همه ابزارها رو هم طبق گفته شما نصب کردم
اما مثل اون دوستمون با این ارور مواجه میشم با این تفاوت که مال من دکمه ران غیر فعال هس
http://s9.picofile.com/file/8338086134/Untitled.png
لازم به ذکره که از نرم افزار تغییر آی بی آویرا هم استفاده کردم اما مشکل رفع نشد
بهرحال مربوط به دانلدو فایل هست. البته گریدل نیازی به تغییر نداره ولی میتونید روش تغییر آی پی FOD رو هم تست کنید
سلام خسته نباشید
عکس رو بررسی کنید
من این مشکل رو دارم و ترجیح دادم عکس بگیرم تا بهترمتوجه بشین
http://s9.picofile.com/file/8338086134/Untitled.png
متن خطارو بخونین و اینکه کد هارو نگاه کنین بعضی از قسمت ها قرمز هست
ای پی رو هم تغییر دادم اگه دقت کنین داره اپدیت میکنه
ضمنا تازه کار هستم ممنون میشم راهنماییم کنین
از قسمت مدیریت sdk هم چندبار زدم اپدیت شده عکسش رو گذاشتم براتون
http://s8.picofile.com/file/8338086226/Untitled2.png
تشکر از وب سایت خوبتون
تو دانلود فایل گریدل مشکل داره. گریدل نباید نیازی به تغییر آی پی داشته باشه. بهرحال باید مشکل ارتباط نرم افزار با نت رو رفع کنید. (اگه نیاز به تغییر آی پی بود مطلب پرسش های رایج رو مطالعه کنید)
با سلام و عرض ادب
من طبق آموزش قبلی شما اندروید استودیو رو نصب کردم وقتی با ای پی دیگری هم به SDK Manger رفتم تمامی ابزار ها نمایش داده شدند ولی وقتی پروژه رو استارت کردم و نرم افزار Gradle رو دانلود کرد با این خطا مواجه شدم
http://tarhvisit.ir/wp-content/uploads/2018/09/Error.png
، من نمیدونم بیلد و … چی هستند ، لطفا راهنمایی کنید و البته در قسمت Projrct فایل هایی که شما دارین مثل res , app و… رو ندارم و Build Gradle(module :app) رو هم ندارم و حتی با تغییر ای پی هم وارد نرم افزار شدم ولی باز هم همین پیغام خطا رخ داد در قسمت Http اندروید استودیو هم گزنیه دوم رو انتخاب کردم و نشد ، در ضمن نسخه اندروید استودیو من ۳٫۱٫۴ اخرین ورژن تا الان هست.
ممنون میشم راهنمایی کنید ، تشکر
تو دانلود ابزار مورد نیاز مشکل داره. راههای متفاوت رو برای تغییر آی پی تست کنید تا به نتیجه برسید (مطلب پرسش های رایج را مطالعه کنید)
سلام خسته نباشید.
اون پوشه هایی که توی آموزش بهشون پرداختینو من یا ندارم یا مسیرش کلا فرق میکنه،مثلا اون دوتا فولدری که گفتین پاک کنینو من ندارم،فکر میکنم پروژه کامل بیلد نشده،تو قسمت مسیجم یه ارور میده
Error: cause: services.gradle.org
راهش چیه که مشکل حل شه؟
بله بیلد نشده. در ارتباط اندروید استودیو با اینترنت مشکل دارید
سلام.
واسه من تو قسمت افزودن Activity، فقط basic activity و empty activity رو داره و بقیه رو نداره (برخلاف تصویر شما که کلی activity هست). مشکل از چی میتونه باشه؟ sdk آپدیت نشده خوب؟
اگه اشتباه نکنم از API قدیمی استفاده میکنید
عااااااااالیییییییییییی دمتون گرم
سلام برای من قسمت Gradle scripts
app:moudle نیست.
آیا باید sdk ای رو نصب کنم؟؟؟
احتمالا پروژتون کامل بیلد نشده. ببینید چه اروری داده
سلام
دوستان کسی میدونه این خطای چیه
Error:Could not find builder.jar (com.android.tools.build:builder:3.1.2).
Searched in the following locations:
https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/3.1.2/builder-3.1.2.jar
پرسش های رایج > تغییر آی پی
ببخشید
چطور می تونم build gradeرو آبدیت کنم؟
چندین بار صفحه لب تابم خانوش شدش نتم رفت قطع شد دانلودش!
میشه بگید چطوری دوباره آبدیتش کنم؟
روی لینک که میزنم جواب نمیده!
آپدیت build.gradle ؟ منظورتونو متوجه نمیشم
mipmap: تصاویر مربوط به آیکون اپلیکیشن در این پوشه قرار می گیرد.
– Values: فایل های xml با محتوای آرایه ها (strings.xml) ، استایل ها (styles.xml) ، رنگ ها (colors.xml) ، ابعاد (dimens.xml) و … در این دایرکتوری قرار می گیرند.
build.gradle
در نهایت دو فایل build.gradle را معرفی می کنم.
فایل اول که در مقابل آن Project نوشته شده مربوط به تنظیمات کلی پروژه بوده و معمولا کاری با آن نداریم. Jcenter() مخزنی است (آنلاین) که کتابخانه های مورد نیاز پروژه از آن دریافت می شود.
فایل اول که در مقابل آن Project نوشته شده مربوط به تنظیمات کلی پروژه بوده و معمولا کاری با آن نداریم. Jcenter() مخزنی است (آنلاین) که کتابخانه های مورد نیاز پروژه از آن دریافت می شود.
فایل دوم (Module: app) شامل تنظیمات و اطلاعات اصلی اپلیکیشن است:
این گزینه ها رو نداریم …… نه گزینه ای به نام app و نه گزنه ای بنام build.gradle ….و (Module: app)
پروژتون بیلد نشده. ارورها رو بررسی کنید
آقا منیموم sdk من اندروید ۴٫۳ هست چکار کنم
متوجه سوالتون نمیشم
سلام خسته نباشید
Error: Cause: services.gradle.org
این اخطار هر کاری میکنم میاد باید چیکار کنم
نمیتونه گریدل رو دانلود کنه
من شاید حدود۱ ساعت منتظر موندم ولی اندروید استودیو بیل نشد چیکار کنم
ببینید چه اروری میگیرید. ارور رو ترجمه کنید. اگه متوجه نشدید صفحه پرسش های رایج رو بررسی کنید یا ارور رو گوگل کنید
Error:Cause: services.gradle.org
من همیشه این مشکلو دارم این چه خطایی هست و چیکار کنم از بین ببره ممنون میشم کمک کنید
قاعدتا باید مربوط به مشکل اتصال به نت باشه
سلام
خداییش اگه کسی بلده راهنمایی کنه
برنامه من همش این خطا رو میده چیکار کنم
Could not find baseLibrary.jar (com.android.databinding:baseLibrary:3.1.3).
Searched in the following locations:
https://dl.google.com/dl/android/maven2/com/android/databinding/baseLibrary/3.1.3/baseLibrary-3.1.3.jar
سلام..ممنون از توضیحات کامل و واضحتون..موفق باشید
سلام.ممنون .خیلی خوب بود.از دست اندرکاران
وبسایت به این خوبی سپاسگزارم
سلام ببخشید اندروید استدیوی من بعداز ساخت پروژه درپایین این پیغامو میده:Gradle sync failed: Could not find builder.jar (com.android.tools.build:builder:3.1.1)ودربالا هم در یک کادر زرد رنگ اینو مینویسه : gradle project sync failed.basic functionality (e.g. editing ,debugging) will not work properly
یه بار پروژه رو ReBuild کنید شاید درست شد
با سلام و تشکر از زحمات شما
وقتی گریدل رو سینک میکنم در پایان خطای زیر را میدهد. در نت سرچ کردم چیزی ندیدم. ممنون میشم کمک کنید.
could not download support-fragment.aar
مطلب پرسش های رایج (تغییر آی پی)
اقا لینک مطلبو من پیدا نکردم.میشه راهنماییم کنید؟
کدوم مطلب؟
سلام.واقعا وبسایت خوبی دارید
سلام
ممنون از اطلاعات
من یک تازه کار هستم و همین ابتدای کار به مشکل برخوردم
من ورژن جدید انروید استادیو رو زدم ولی الان از قسمت NEW نمیتونم گزینه Activity رو پیدا کنم.
اصلا در این قسمت هیچ کدام از گزینه های دارای آیکون سبز نیست.
به نظر شما چیکار باید کنم ؟
البته چند باری پاک و دوباره نصب کردم وحتی ورژن دیگه ای رو زدم ولی تاثیری نداره.
دقت کنید کجا راست کلیک میکنید. مثلا روی layout راست کلیک کنید خب New Activity نمیاره دیگه
با سلام خدمت شما جناب مطهری
ممنون از وقتی که میزارید و اموزشهای خوب و کاملی رو قرار دادید و واقعا همه چیز رو توضیح دادید. من هنوز از اموزشهای پولی تون استفاده نکردم ولی قطعا کامل هستند. و ممنون بخاطر زحمتی که میکشید و اپدیتهارو اینجا مرتب میگزارید.
دوست عزیز من طبق اموزشهای شما تقریبا امدم جلو و نصب هامو هم اپدیت کردم با سرور گوگل. اما حالا وقتی یه پروژه ساختم نمای گرافیکی xml بمن نشان داده نمیشهو خطایی که بالای صفحه میگیره اینه gradel project sunc faile.
, ودر قسمت پیامها چندتا پیام خطا هست که دوسه تاش مربوط یه اینه
unable to resolve dependency for ‘:app@debug/compileClasspath’: Could not resolve com.android.support:appcompat-v7:26.1.0.
من همه جارو چک کردم، سایت اورفلو رو رفتم روشهاشون رو رفتم، حتی یه پیشنهاد داشت خود gradle که یه فولدر جدید میساختی و مسیر جدید میدادی و بعد تو قسمت environmet باید مسیری که بود رو عوض میکردی، حتی دانلود های جدید کردم اما مشکلم حل نمیشه. من با قندشکن هم وصل میشم و ادرس پروکسی بهش دادم راحت sdkاپدیت میشه ولی ظاهرا gradleنمیتونه به نت وصل بشه و سینگرون بشه.اگر بتونید کمکم کنید بسیارممنون خواهم شد.
در ضمن من وقتی genymotion رو نصب کردم نصبش کامل شده اما ایکونش رو نوار استدیو نمیاد، راه حا انم نمیدونم،و و نمیدونم آیا اینها بهم ربطی دارند؟؟
– یا IP رو تغییر بدید و مجدد سینک کنید تا appcompat ای که تو ارور هم ورژنش مشخصه رو از سرور دانلود کنه یا طبق آموزش زیر از ورژن موجود در SDK استفاده کنید:
https://android-studio.ir/style-and-material-theme-in-android
با سلام. من وقتی در نسخه ۳٫۰ اندروید میخواهم پروژه جدید ایجاد کنم، موقعی که میخواهم نسخه API را انتخاب کنم، برای تمام نسخه هایی که انتخاب میکنم (حتی نسخه های پایین) می گوید که این نسخه کمتر از ۱% دستگاه ها را پوشش می دهد.در صورتی که در ورژه قبلی اندروید، درصد واقعی را نشان میداد و مثلا میگفت ۹۸% پوشش دارد. میخواستم ببینم که مشکل از کجاست؟ و چرا اینطور میشه؟ چه راهی برای رفع این مشکل پیشنهاد میکنید؟ با تشکر
البته این چیزی نیست که مشکلساز باشه و بخواید دنبال رفعش باشید. عددی که نشون میده صرفا جهت اطلاعه. فکر میکنم در نسخه ۳، آمار رو از سرور میگیره که وقتی با آی پی ایران متصل باشید درصدها رو ۱ میزنه
ممنون. یعنی بعدا مشکلی در جای دیگه و در اجرای برنامه ایجاد نمیشه؟ و فقط چون اینجا به سرور وصل نیست، مینویسه؟
بزرگوار توضیحات کامنت قبلی بنده واضح بود. اینکه سوال رو دوباره بپرسید و منتظر پاسخ مجدد باشید وقت خودتونو میگیره فقط
سلام وقت بخیر ،من با درست کردن پروژه با این ارور مواجه میشم که نمیدونم چیکارش کنم.
Error:Failed to open zip file.
Gradle’s dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)
Re-download dependencies and sync project (requires network)
Re-download dependencies and sync project (requires network)
خطا: فایل زیپ باز نشد
حافظه وابستگی Gradle ممکن است فاسد باشد (این گاهی اوقات پس از اتصال به زمان اتصال شبکه رخ می دهد.)
وابستگی های مجدد و همگام سازی پروژه (نیاز به شبکه)
وابستگی های مجدد و همگام سازی پروژه (نیاز به شبکه)
ظاهرا در اتصال به نت مشکل داره (طبق مطلب پرسش های رایج مطمئن بشید آی پی به درستی تغییر کرده)
سلام
اندروید استدیو ورژن ۳ استفاده میکنم
پروژه م همه چی کامله وهیچ ایرادی نشون نمیده
وقتی میخام run بگیرم اخراش این ارور میاد
ErrorExecution failed for task ‘apptransformClassesWithDesugarForDebug’.
com.android.build.api.transform.TransformException java.lang.RuntimeException java.lang.RuntimeException com.android.ide.common.process.ProcessException Error while executing java process with main class com.google.devtools.build.android.desugar.Desugar with arguments {@CUsersASADIDesktopSaifChatSoftappbuildintermediatestmpdesugar_args27136588803337456}
میشه راهنماییم کنین این مربوط به چی هست؟
متشکرم
متاسفانه ایده ای به ذهنم نمیرسه. اگه یه پروژه جدید و خالی هم بسازید و ران بگیرید باز مشکل دارید؟
درود
در مورد این جمله ای که ذکر کردید به نتیجه رسیدید؟
در تعدادی از منابع عنوان شده داشتن API مرتبط با MinimumSDK الزامی نیست، با این حال تا لحظه نگارش این مبحث من به نتیجه قطعی نرسیده ام لذا جانب احتیاط را رعایت می کنم.
نه متاسفانه. فرصتی نشده پیگیر بشم
من تو اجرای پروژه ها این ارور ها رو میگیرم.حتی حافظه رو درvirtualboxزیاد کردم.هرچی هم سرچ میکنم جز این راه چیز دیگه ای پیدا نمیکنم.
۱۱-۱۵ ۱۵:۳۹:۳۸٫۲۱۹ ۱۴۵۷-۱۴۶۳/? E/jdwp: Failed sending reply to debugger: Broken pipe
۱۱-۱۵ ۱۵:۳۹:۳۸٫۳۱۵ ۱۴۵۷-۱۴۵۷/? E/dalvikvm: Could not find class ‘android.graphics.drawable.RippleDrawable’, referenced from method android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering
۱۱-۱۵ ۱۵:۳۹:۳۸٫۴۳۵ ۱۴۵۷-۱۴۵۷/? E/OpenGLRenderer: Getting MAX_TEXTURE_SIZE from GradienCache
۱۱-۱۵ ۱۵:۳۹:۳۸٫۴۳۵ ۱۴۵۷-۱۴۵۷/? E/OpenGLRenderer: MAX_TEXTURE_SIZE: 16384
۱۱-۱۵ ۱۵:۳۹:۳۸٫۴۴۳ ۱۴۵۷-۱۴۵۷/? E/OpenGLRenderer: Getting MAX_TEXTURE_SIZE from Caches::initConstraints()
۱۱-۱۵ ۱۵:۳۹:۳۸٫۴۴۳ ۱۴۵۷-۱۴۵۷/? E/OpenGLRenderer: MAX_TEXTURE_SIZE: 16384
با این مسئله برخوردی نداشتم بزرگوار. لطفا سرچ بفرمایید. باید پاسخ های زیادی در وب موجود باشه
اگر برنامه ایی با api24ساخته شده باشه برای اجرا روی سیستم دیگه حتما باید api24رو داشته باشیم یا api25کفایت میکنه؟
api دومی که فرمودین بالاتر از اولی یعنی target هست و عموما مشکلی ایجاد نمیکنه
سلام من ی پروژه که با نسخه ۲٫۲٫۲ساخته شده بود رو میخوام رو سیستم خودم باز کنم(۲٫۳٫۳) ولی پیغام زیر رو بهم میده
Migrate Project to Gradle?
This project does not use the Gradle build system. We recommend that you migrate to using the Gradle build system.
اگر ممکنه راهنماییم کنین.ممنون
متن رو ترجمه کنید واضحه. گفته پروژه از گریدل استفاده نکرده و توصیه میشه تبدیل به گریدل بشه که تایید میکنید
سلام
چجوری پروژرو کلا حذف کنم ؟؟
مسیری که پروژه رو ساختید برید و پوشه رو پاک کنید