بررسی و پاسخ به مشکلات و پرسش های رایج

– تبدیل ConstraintLayout به RelativeLayout یا LinearLayout :

در نسخه ۲٫۳ اندروید استودیو Layout ای که به صورت پیش فرض برای پروژه جدید ایجاد می شود از نوع ConstraintLayout می باشد. این لایه خواص جدیدی دارد که در آینده آموزش آن را منتشر خواهیم کرد اما اگر در حال حاضر قصد استفاده از سایر موارد مانند RelativeLayout دارید کافیست تگ باز و بسته لایه را جایگزین کنید. به عناون مثال android.support.constraint.ConstraintLayout را با RelativeLayout جایگزین می کنیم.

– استفاده از نسخه ۳۲ بیتی اندروید استودیو و نصب SDK :

نسخه ۳۲ بیتی اندروید استودیو به صورت پکیج zip تهیه شده که نیاز به نصب نداشته و پس از خارج کردن از حالت فشرده کافیست studio.exe موجود در پوشه bin را اجرا کنید. در نسخه جدید اندروید استودیو SDK Manager مانند قبل به صورت جداگانه قابل نصب نیست و لازم است به صورت دستی محتویات و پوشه های SDK که در فصل دوم (نصب و راه اندازی) معرفی شد را اضافه کنیم. در مسیر دلخواه یک پوشه با نام دلخواه (مثلا sdk) ایجاد می کنیم و سپس پوشه های tools و platform-tools و platforms و… که در فصل دوم به عنوان الزامات تعیین شده را به sdk اضافه کرده و در نهایت مسیر قرارگیری sdk را در قسمت تنظیمات اندروید استودیو، در قسمت SDK Manager به آن معرفی می کنیم.

– Error:CreateProcess error=216, This version of %1 is not compatible with the version of Windows you’re running… :

ابتدا بررسی کنید اگر نسخه قدیمی جاوا را روی سیستم عامل نصب کرده اید، نسخه جدید (در فصل دوم قرار داده شده) را جایگزین کنید. سپس داخل اندروید استودیو در مسیر File -> Project Structure تیک گزینه Use Embedded JDK را برداشته و مسیری که JDK را نصب کرده اید جایگزین کنید.

– Error:Failed to find target with hash string ‘android-xx’ in [Your SDK Location] :

عدد xx نسخه API است. به عنوان مثال اگر این ارور را با android-26 بگیرید یعنی platform26 را لازم دارید و نصب نیست. اگر با وجود نصب API مربوطه باز هم ارور گرفتید ابتدا داخل SDK Manager ابزار Build tools و Platform tools را به آخرین نسخه بروزرسانی کنید. در مرحله بعد از مسیر File > Invalid Caches / Restart اقدام به حذف کش نموده و در نهایت هم یک بار پروژه را Clean و سپس Rebuild نمائید (منوی Build)

– پیغام Unable to unpack file android-sdk_r22.6.2-windows.zip: error in opening zip file. Make sure you have enough disk space on destination drive and retry :

این اخطار دلیل را نبود فضای کافی برای نصب عنوان می کند اما در اکثر مواقع برای کاربران ایرانی، به دلیل تحریم این اخطار ظاهر می شود که راه چاره استفاده از ابزار تغییر آی پی است. اگر بعد از تغییر آی پی نیز ارور رفع نشد باید تنظیمات Proxy روی اندروید استودیو از مسیر زیر اعمال شود :
Default Settings > appearance and settings > System Settings > HTTP Proxy و در انتها گزینه Auto Detect یا Manual Proxy و وارد کردن مشخصات پروکسی مربوطه (اگر در خصوص نحوه تنظیم کردن روکسی اطلاعی ندارید لطفا سرچ کنید)

– پیغام Installing Requested Components در ابتدای اجرای اندروید استودیو :

اگر نسخه IDE را نصب کرده اید، فصل دوم را مطالعه کنید (باید نسخه باندل را نصب کنید)

– مشکل Gradle: resolve dependencies یا Failed to resolve: junit:junit:4.12 و طول کشیدن بیلد شدن پروژه :

در آغاز ساخت و بیلد شدن پروژه ممکن است نیاز به دریافت (دانلود) تعدادی کتابخانه داشته باشد که به صورت پیش فرض از دامنه https://bintray.com دریافت می شود. این مخزن در حال حاضر برای کاربران ایرانی در دسترس نیست و لازم است در هنگام ساخت پروژه جدید از یک نرم افزار تغییر IP معتبر استفاده کنید.معمولا کتابخانه هایی که هنگام ایجاد اولین پروژه دانلود می شوند، در ساخت پروژه های بعدی نیاز به دانلود مجدد ندارند مگر اینکه پروژه نیاز به کتابخانه جدیدی داشته باشد یا برای کتابخانه قبلی نسخه جدیدتری منتشر شده باشد. بنابراین به جز اولین پروژه، در سایر موارد به احتمال زیاد نیاز به تغییر IP نخواهید داشت و چنانچه در هنگام بیلد شدن باز هم ارور دریافت کردید که مربوط به عدم امکان دریافت فایل کتابخانه بود، کافیست IP را تغییر داده و روی گزینه install مربوط به کتابخانه که در قسمت Messages ظاهر شده کلیک کنید تا ابزار مربوطه نصب و پروژه Sync شود (اگر از سرویس های تغییر IP ایرانی استفاده می کنید و با وجود تغییر آی پی باز هم دانلود کتابخانه به درستی انجام نمی شود، با پشتیبانی سرویس خود تماس بگیرید)
Install repository and sync
در خصوص junit با توجه به اینکه جز مواقع خاص بلا استفاده است، راه ساده تر برای حل مشکل عدم دریافت این کتابخانه این است که خط زیر را از build.gradle حذف کرده و مجدد سینک کنید تا به کلی از پروژه حذف گردد.

testCompile 'junit:junit:4.12'
سوالاتی که مشمول موارد زیر باشد تایید و پاسخ داده نخواهد شد :
۱ : جزء موارد پاسخ داده شده در مطلب "مشکلات و پرسش های رایج" باشد
۲ : سوال قبلا توسط افراد در دیدگاهها مطرح و پاسخ داده شده باشد
۳ : سوال خارج از مبحث آموزشی موجود در این صفحه باشد
  • mahdi گفت:

    سلام ببخشید میشه بگید این ارور چیه؟
    http://uupload.ir/files/ip91_2.png

    1. سید مهدی مطهری (مدیر) گفت:

      برخوردی نداشتم. گوگل کنید

  • فرهاد گفت:

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

    1. سید مهدی مطهری (مدیر) گفت:

      مسلما در پروژتون اشتباهی انجام دادید که باعث میشه برنامه کرش کنه. کدها رو بررسی و ایراد رو رفع کنید

  • علیزاده گفت:

    سلام لطفا بگید دلیل این خطا چیه
    gradle ‘myshop’ project refresh failed
    gradle dependency cache may be corrupt (this sometimes occurs after a network connection timeeout

    1. سید مهدی مطهری (مدیر) گفت:

      ترجمه بفرمایید. من برخوردی نداشتم

  • عادل گفت:

    سلام تو android device monitor بخش FileExplorer پوشه data و storage.emulat باز نمیشه لطفا کمکم کنید

    1. سید مهدی مطهری (مدیر) گفت:

      سوال رو در مطلب مربوطه بپرسید (برای این مشکلی که مطرح کردید سرچ کنید. بنده ایده ای به ذهنم نمیرسه)

  • nadia گفت:

    سلام میخواستم بدونم این ارور رو چطور حل کنم
    Error:Failed to find target with hash string ‘android-23’ in: C:\Users\NADIA\AppData\Local\Android\Sdk
    Install missing platform(s) and sync project

    1. سید مهدی مطهری (مدیر) گفت:

      به خودتون زحمت ندادید موارد داخل همین مطلبو بخونین!

  • امیر گفت:

    سلام
    ببخشید من برنامه اندروید استودیو رو نصب کردم ولی موقعی که می خوام برنامه رو باز کنم یه همچین اروری میده
    می خواستم ببینم برای رفع این ارور باید چیکار کنم ؟
    سیستم عاملم هم ویندوز ۷ (۳۲ بیتی) هست

    —————————
    Error launching Android Studio
    —————————
    The environment variable JAVA_HOME (with the value of C:\Program Files\Java\jdk1.7.0_21) does not point to a valid JVM installation.
    —————————

    1. سید مهدی مطهری (مدیر) گفت:

      ارور رو معنی کنید واضحه. مسیری که برای jdk تعیین شده اشتباهه. اگر مشکل چیز دیگس سرچ کنید برای دسترسی به راه حل های بیشتر

  • رضا گفت:

    سلام چرا avd شبیه ساز را اجرا نمیکنه

    1. سید مهدی مطهری (مدیر) گفت:

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

  • محمد گفت:

    با سلام
    یک سوال داشتم ممنون میشم راهنمایی کنید…
    برای یک برنامه نویس اندروید تسلط بر PHP یا زبان های سمت سرور لازمه؟؟؟؟ و تا چه حد؟؟؟
    مثلا برای یک اپ اندرویدی که امکان ثبت نام کاربران رو فراهم میکنه و برای هر کاربر صفحه کاربری اختصاص میده مثل دیجی کالا ، دونستن PHP لازمه ؟؟؟
    یا یک اپ که مثل یک برنامه اجتماعی امکان چت و … برای کاربران فراهم میکنه؟؟؟
    اگ میشه یک توضیح کامل در این رابطه بدین؟؟؟
    علاوه بر PHP برنامه های سمت سرور دیگه مثل node.js هم هستند….. در مورد این ها هم خواهشا توضیح بدین که تا چه میزان تسلط بر اون ها میتونه برای یک توسعه دهنده اندروید مفید باشه…

    1. سید مهدی مطهری (مدیر) گفت:

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

  • عیسی گفت:

    سلام به همه دوستان
    اگر کسی میتونه راه حل رو بگه ممنون میشم
    این ارور پایینی جریانش چیه . گریدل نسخه ۴٫۱ هم همین ارور رو میده . تشکر از پاسختون

    Error:Unable to start the daemon process.
    This problem might be caused by incorrect configuration of the daemon.
    For example, an unrecognized jvm option is used.
    Please refer to the user guide chapter on the daemon at https://docs.gradle.org/2.14.1/userguide/gradle_daemon.html
    Please read the following process output to find out more:
    ———————–
    Error occurred during initialization of VM
    Could not reserve enough space for 2097152KB object heap
    Java HotSpot(TM) Client VM warning: ignoring option MaxPermSize=512m; support was removed in 8.0

    1. سمیر گفت:

      فایل زیر رو باز کن
      gradle.properties
      و مقدار فضا رو به صورت زیر تغییر بده
      org.gradle.jvmargs=-Xmx1024m
      بعد از ذخیره دوباره پروژه رو باز کن

  • User گفت:

    سلام.لطفا در مورد ارتباط با سرور هم آموزش بذارید
    با تشکر

  • عباس اصغری گفت:

    سلام..تمام راه حل هارو انجام دادم ولی همچنان این دو تا ارور رو دارم. Gradle sync نمیشه
    http://www.upsara.com/images/p3su_screenshot_(140).png
    ——————
    Error occurred during initialization of VM Could not reserve enough space for 1048576KB object heap Consult IDE log for more details
    ——————
    اینم ارور دومه
    راهنمایی کنین دو روزه ور میرم هیچی ب هیچی :((
    ممنون

    1. سید مهدی مطهری (مدیر) گفت:

      اگه ارورها رو گوگل کنید به جواب میرسد و نیاز نیست دو روز وقتتون هدر بره و ور برید با ارور

  • سارا گفت:

    سلام من مکان نصب رو طبق اموزش در environment vareibels قرار دادم ولی با باز کردن android studio با این ارور رو به رو میشم، مشکل از کجاست؟
    ارور این هست :
    Your Android SDK is missing, out of date, or is missing templates. You can configure your SDK via Configure | Project Defaults | Project Structure | SDKs

    1. سید مهدی مطهری (مدیر) گفت:

      این ارور مربوط به SDK هست و ارتباطی با تعریف JDK نداره. اگه مسیر sdk رو درست تعریف کردید احتمالا ابزار موجود در sdk قدیمی هستن و نیاز به آپدیت هست

  • مصطفی گفت:

    سلام خسته نباشید من وقتی از گزینه install packege and sync project استفاده می کنم خطای all package are not available میده . حتی وقتی از نرم افزار تغییر ای پی استفاده می کنم باز هم این خطا رو میده . بسیار ممنون از کمک شما

    1. سید مهدی مطهری (مدیر) گفت:

      کانال تلگرام ما رو چک کنید

  • Aref R.p گفت:

    سلام آقای سید مهدی مطهری بنده به یک مشکل بزرگی بر خوردم از شما خواهشمندم راهنماییم کنید من یک پروژه باز کرده و یک ProfileActivity جدید میسازم در کنار ActivityMain اما وقتی در قسمت layout به ProfileActivity میرسم همان اول نه میگذارد برنامه را Run کنم نه متوجه می شوم که چه می خواهد اصلا هم ربطی به کدهای من ندارد .و این خطا ها در قسمت های
    xmlns:android=”http://schemas.android.com/apk/res/android”
    —————————————————————————————–
    xmlns:tools=”http://schemas.android.com/tools”
    و…… دیده می شود .
    عکس از پروژه
    http://s9.picofile.com/file/8305000718/khata_Xml2.jpg

    1. سید مهدی مطهری (مدیر) گفت:

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

      1. Aref R.p گفت:

        پس به نظرتون از چیه که من حداقل بتونم برم دنبالش چون من چه کد بنویسم چه ننویسم همون اول بهم خطا میده و مانع Run گرفتن برنامم میشه .
        با تشکر از زحمات شما

        1. سید مهدی مطهری (مدیر) گفت:

          من علم غیب ندارم دوست عزیز 🙂
          ببینید موقع ران چه اخطاری دریافت می کنید. بالاخره هرجا که مشکلی باشه بهتون ایراد رو اعلام میکنه و چیز پنهانی نیست

          1. Aref R.p گفت:

            با سپاس از سایت خوبتون .

  • yoyo گفت:

    سلام ممنونم از سایت خوبتون
    هرکاری مکنم حتی از فیلتر شکن هم استفاده کردم اما بازم ارور
    Error:(24, 13) Failed to resolve: com.android.support:appcompat-v7:23.
    Install Repository and sync project Show in File Show in Project Structure dialog
    در حالی که Repository از همین وب سایت دانلود کردم و نصب کردم ولی بازم این ارور داره
    میشه راهنماییم کنید؟

    1. سید مهدی مطهری (مدیر) گفت:

      گاهی اوقات ممکنه نرم افزار تغییر آی پی هم کارساز نباشه (روشی که داخل کانال تلگرام معرفی شده رو هم یه تست بکنید. اگه بازم جواب نداد دنبال سرویسی باشید که از CiscoAnyconnect پشتیبانی کنه)

  • باسلام خدمت شما و سایت خوبتون راستش بنده اندرویداستدیو و sdk وjdk رو نصب کردم
    ولی وقتی اندروید استودیو رو میزنم و روی new project میزنم میگه
    SDK PROBLEM
    و میگه your androyd studio is missing

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

    1. سید مهدی مطهری (مدیر) گفت:

      missing ادامش چیه؟

  • سمانه گفت:

    سلام وقتتون بخیر
    من وقتی میخوام بین دولایه xml و جاوار ارتباط برقرار کنم قسمت R قرمز میشه و ایراد میگیره لطفا بفرمایید مشکلش چیه؟
    (setcontentview(R.layout.activity_main

    1. سید مهدی مطهری (مدیر) گفت:

      ینی اکتیویتی پیش فرض پروژه هم که به صورت خودکار دو فایل xml و java به هم لینک شدن، همین مشکل رو داره یا فقط لایه جدیدی که خودتون به صورت دستی ایجاد میکنید؟

پاسخ دهید

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

کد امنیتی *