ساخت یک فایل APK از پروژه اندروید، در برنامه eclipse
اگرچه ما برنامه اندروید مورد نظرمان را به صورت یک پروژه در برنامه eclipse می سازیم ولی درنهایت باید این پروژه، تبدیل به یک فایل APK بشود. درواقع این فایل APK است که در آخر برای نصب برنامه مورد نظرمان بر روی گوشی دارای اندروید، مورد استفاده قرار می گیرد.
اکنون قصد داریم که چگونگی ساخت یک فایل APK از پروژه اندروید ساخته در eclipse را آموزش بدهیم. فرض کنید یک پروژه به نام Kelidestan.com در برنامه eclipse ساخته باشیم. نام این پروژه را می توان در ستون سمت چپ برنامه eclipse مشاهده نمود :
بر روی نام پروژه اندروید، با موس، کلیک سمت راست کرده و گزینه Export را انتخاب می کنیم. پنجره ای به شکل زیر باز می شود :
در این پنجره باید در شاخه Android ، گزینه Export Android Application را انتخاب و سپس بر روی گزینه Next کلیک کنیم. پنجره زیر نمایش داده می شود :
در اینجا باید پروژه مورد نظرمان که همان Kelidestan.com است را انتخاب کنیم و سپس بر روی گزینه Next کلیک کنیم. پنجره زیر نمایش داده می شود :
اکنون باید یک keystore برای برنامه اندرویدی که ساخته ایم، تعیین کنیم و یا اگر قبلا هیچ keystore ای نداشته ایم باید یک keystore بسازیم. ابتدا اصلا بگوییم که keystore چیست. زمانی که شما یک برنامه اندروید (application اندروید) می سازید، آن را به یک keystore نسبت می دهید که آن keystore حکم یک گواهینامه برای برنامه اندروید ساخته شده را دارد. این keystore که شما برای برنامه اندروید ساخته شده، تعیین می کنید، ثابت می کند که شما آن برنامه اندروید را ساخته اید.
نکته مهم دیگر این است که شما می توانید برای چندین برنامه اندروید، تنها یک keystore داشته باشید (انتخاب عاقلانه همین است). بنابراین اگر قبلا یک keystore ساخته اید که برای برنامه های قبلی شما به کار رفته است، باید گزینه Use existing keystore را انتخاب کنید و سپس در قسمت Location ، محل آن را تعیین کنید و در قسمت Password نیز رمز عبوری که قبلا برای آن keystore تعیین کرده اید را بنویسید. اما اگر تابحال از هیچ keystore ای استفاده نکرده اید، گزینه Create new keystore را انتخاب کرده و در قسمت Location ، بر روی گزینه Browse کلیک کنید و یک نام دلخواه و آدرس دلخواه برای فایل keystore ای که می خواهید بسازید، مشخص کنید . سپس در قسمت Password یک رمز عبور غیر قابل حدس زدن را بنویسید (و البته آن را در دفترچه ای که تنها خودتان به آن دسترسی دارید بنویسید تا فراموش نشود). در قسمت Confirm ، باید همان رمز انتخابی را دوباره بنویسید.
فرض می کنیم که تابحال هیچ فایل keystore ای نداشته ایم بنابراین نام فایل را به دلخواه برابر Kelidestan_keystore انتخاب می کنم و یک رمز عبور نیز به دلخواه وارد کرده و بر روی گزینه Next کلیک می کنیم. پنجره زیر نمایش داده می شود :
در قسمت Alias باید یک نام مستعار انتخاب کنید. در قسمت Validity باید یک عدد را وارد کنید که تعداد سال هایی را نشان می دهد که این keystore معتبر خواهد بود (خود نرم افزار، عدد 25 را توصیه می کند، احتمالا منظورش حداقل 25 است). در موارد بعدی، چنانچه فعلا به صورت آزمایشی قصد ساختن keystore دارید و قصد ندارید آن را نگهدارید، می توانید تنها مورد اول (First and Last Name) را پر کنید و سایر موارد را خالی بگذارید.
بر روی گزینه Next کلیک می کنیم تا پنجره زیر نمایش داده شود :
یک نام برای فایل APK و همچنین مسیری را برای محل ساخت آن مشخص می کنیم و سپس بر روی گزینه Next کلیک می کنیم، پنجره زیر نمایش داده می شود :
در این قسمت، مسیری که در آن فایل APK و فایل keystore ساخته شده است و همچنین تعداد سال هایی که keystore معتبر می باشد را نمایش داده است. بر روی گزینه Next کلیک می کنیم تا ساخت فایل ها انجام گیرد. چنانچه به محل مورد نظر برویم، یک فایل APK با نام Kelidestan.apk و یک فایل keystore با نام Kelidestan_keystore ساخته شده است.
بنابراین با نحوه ساخت فایل نهایی APK از پروژه اندروید ساخته شده در eclipse ، آشنا شدیم.
- فهرست مباحث
- 1 مقدمه برای شروع برنامه نویسی اندروید
- 2 نصب Software Development Kit یا به اختصار SDK
- 3 نصب Android SDK platform
- 4 نصب یک نسخه انتخابی از اندروید
- 5 شبیه سازی برنامه های ساخته شده برای اندروید، توسط یک دستگاه مجازی (Virtual Device)
- 6 نصب برنامه Eclipse
- 7 نصب Android Developer Tools یا به اختصار ADT
- 8 ساخت یک پروژه اندروید
- 9 اجرای پروژه اندروید در برنامه eclipse
- 10 ساخت یک فایل APK از پروژه اندروید، در برنامه eclipse
- 11 معرفی نرم افزار YouWave Android برای شبیه سازی سریعتر برنامه های اندروید
- 12 مفهوم acitivity در برنامه نویسی اندروید
- 13 آشنایی با کدهای مربوط به فایل java برای یک activity ، فایل xml متناظر با آن activity و همچنین فایل AndroidManifest.xml
- 14 علامت های مربوط به خطا و هشدار، در برنامه eclipse
- 15 ساخت یک برنامه اندروید تشکیل شده از دو activity
- 16 ساخت آسان یک activity جدید، در برنامه eclipse
- 17 تغییر نام یک activity یا یک فایل xml از پروژه اندروید، در برنامه eclipse و تذکر در مورد عدم نگرانی از تغییر نام این دو نوع فایل
- 18 تفاوت بین دو حالت LinearLayout و RelativeLayout برای نمایش فایل xml متناظر با activity ها
- 19 وارد کردن (import) یک پروژه اندروید، به درون برنامه eclipse
- 20 شبیه سازی برنامه های اندروید (اجرای فایل های apk) بر روی کامپیوتر، با نرم افزار BlueStacks App Player
- 21 استفاده از ProGuard برای سخت تر شدن مهندسی معکوس (reverse engineering) و استخراج کدهای فایل apk برنامه اندروید
- 22 اجرا (run) و یا خطایابی (debug) یک پروژه اندروید موجود در برنامه eclipse ، بر روی یک گوشی اندروید واقعی (از طریق اتصال گوشی به کامپیوتر، با کابل USB)
- 23 نوشتن پیام هایی برای نمایش در قسمت LogCat در برنامه Eclipse ، هنگام شبیه سازی برنامه اندروید توسط یک دستگاه مجازی (virtual device) یا هنگام اجرا و خطایابی برنامه اندروید بر روی یک گوشی اندروید واقعی، در برنامه نویسی اندروید
- 24 آموزش نصب و استفاده از نرم افزار Genymotion ، برای شبیه سازی برنامه های اندروید بر روی کامپیوتر
- 25 تفاوت بین نسخه اندروید (Android version) و API level و ذکر شماره های متناظر بین آنها
- 26 نصب نسخه های مختلف API از اندروید، در برنامه نویسی اندروید
- 27 تمام نکاتی که قبل از انتشار برنامه اندروید خود در فروشگاه های اندروید، باید به آنها توجه کنیم
-
نکته : این فهرست مباحث، صرفا منتخبی از کلیدهای آموزشی این موضوع است (که خواندن متوالی آنها توصیه می شود) و برای دیدن کلیدهای آموزشی بیشتر از این موضوع، می توانید بر روی دسته بندی های ستون سمت راست کلیک نمایید.
سلام ممنون از سایت خوبتون در قسمت export برای من گزینه android وجود نداره باید چیگار کنم?
سلام.
بر روی نام پروژه اندروید، با موس، کلیک سمت راست کرده و ابتدا گزینه Android Tools و سپس گزینه Export Signed Application Package را انتخاب نمایید.
دقت کنید که گزینه Export Unsigned Application Package به اشتباه انتخاب نشود، زیرا این گزینه، از فایل keyStore اختصاصی شما استفاده نمی کند و بنابراین برای انتشار نسخه نهایی برنامه اندروید مناسب نیست (فقط برای تست برنامه مناسب می باشد).
سلام من برنامه ایکلیپس رو دارم تو قسمت پکیج اکسپلورر هم فولدر مورد نظر هم اضافه کردم ولی زمانی که راست کلیک می کنم گزینه android tools نداره که برنامه رو بسازم
با سلام علت اینکه بازار این برنامه هارو تایید نمیکنه چیه؟
فروش یا عرضهٔ برنامههای خارجی، ایرانی و هرگونه نسخهٔ ترجمه شده یا دستکاری شدهٔ برنامهها به سود یا به نام توسعهدهندهٔ دیگری ممکن نیست.
نام پکیج رو تغییر دادم علتش ممکنه نداشتن امضای اختصاصی باشه؟؟؟
سلام
اینم بگید که اگه مسیر تعیین شده برای keystore لاتین نباشه ارور میده
همین قضیه سه ساعت وقتمو گرفت
سلام
من برنامه ای ساختم که در اکلیپس ارور نمیده اما بعد از این که اونو با اکلیپس امضا کردن حالا خروجی_امضاء_شده بعد از اجرا فرس کلوز میده.
به نظرتون ایراد از کجاست؟
سلام.
دو مورد زیر را بنده حدس می زنم :
1- اگر هم از طریق Eclipse و هم با فایل apk ، برنامه اندروید را بر روی یک گوشی واقعی یا شبیه ساز یکسان اجرا کرده اید (بر روی یک دستگاه یکسان) (یعنی با اجرا توسط Eclipse خطا نمی دهد اما با اجرای فایل apk ، خطا می دهد)، یک مورد که باعث به وجود آمدن این مشکل می شود، استفاده همزمان از ProGuard و یک یا چند کتابخانه (library) می باشد ().
یعنی وقتی ما برخی کتابخانه ها (library) را برای پروژه اندروید خود به کار می ببریم، باید هنگام استفاده از ProGuard ، کدهایی را برای آنها ذکر کنیم، در غیر این صورت، اگرچه برنامه اندروید در هنگام اجرا توسط Eclipse خطا نمی دهد، اما هنگام ساخته شدن فایل apk ، با Force Close روبرو خواهید شد.
یک نمونه از چگونگی ذکر کردن کتابخانه ها (library) هنگام استفاده از ProGuard را در کلید زیر شرح داده ایم (البته کدها برای کتابخانه های مختلف، متفاوت می باشد، یعنی باید آنها را بر اساس نام کتابخانه های مورد نظر بنویسیم) :
برای تعیین اینکه آیا مشکل از ProGuard است یا خیر، می توانید ProGuard را غیرفعال کرده و بعد فایل apk بسازید. اگر این بار به درستی اجرا شود، بنابراین مشکل مربوط به استفاده همزمان از ProGuard و یک یا چند کتابخانه است که مشابه کلید بالا، باید کتابخانه ها را ذکر کنید تا هم کتابخانه ها در پروژه اندروید به کار روند و هم بتوانید از ProGuard استفاده نمایید.
2- اگر منظورتان از خطا ندادن در Eclipse، صرفا عدم مشاهده خطا در کدها است، بنابراین ممکن است که وقتی فایل apk برنامه را بر روی یک گوشی اجرا می کنید، بخشی از کدهای برنامه اندروید، با آن api از اندروید که بر روی گوشی مورد نظر نصب است، مشکل داشته باشد. بنابراین باید به خطایابی برنامه اندروید بر روی آن گوشی بپردازید :
یا اینکه می توانید از طریق شبیه ساز Genymotion ، برنامه اندروید را بر روی نسخه های (api) مختلف اندروید تست کنید :
سلام و عرض خداقوت خدمت مدیران و ادمین های سایت
سپاسگزارم به خاطر اطلاعات مفیدی که به طور رایگان در اختیار عموم افراد قرار دادید
موفق و تندرست باشید