امضای فایل apk با apksigner

سلام دوستان.

همان طور که مطلع هستید مارکت های اندروید مثل مایکت و کافه بازار برنامه نوشته شده شما رو بدون امضا کردن ( sign ) قبول نمی کنند .

خب شاید وقتی اسم command line یا command prompt و یا cmd و یا terminal به گوش هایتان میخورد اولین چیزی که به ذهنتان خطور می کند چقدر کار کردن با آن ها سخت و دشوار ست ! یا چقدر دستوراتی که وارد این محیط ها می کنیم پیچیده هستند ! ولی درصورتی که خیلی وقت ها همین تکنیک ها و استفاده از رابط دستوری ( متنی ) سیستم عامل به جای رابط گرافیکی آن بسیار مفید و جذاب تر و هیجان انگیز تر است!

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

با این دستور کالی لینوکس خودم را اجرا می کنم :

startkali -r

نصب ابزار :

sudo apt-get install apksigner -y

خب اول باید keystore را بسازیم! :

keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000


ساخت کلید
ساخت کلید



زیاد درگیر جزییات این دستور نمی شویم فقط بعد از وارد کردن این دستور از شما password می خواهد که باید یه رمز برای کلیدتون وارد کنید بهتر است رمزی ساده یا قابل حدس نباشد ! بعد از وارد کردن رمز از شما مشخصات مثل نام ، شهر ، استان ،.. می خواهد که اگر نمی خواهید این اطلاعات را وارد کنید فقط Enter بزنید ! در آخر کلیدی به اسم my-release-key.keystore با رمز و مشخصاتی که وارد کرده ایدساخته می شود ! حالا فرض کنید اسم apk ما unsigned.apk است در این صورت داریم :

apksigner sign --ks my-release-key.keystore unsigned.apk

به همین راحتی فایل apk ما امضا شد!

موفق و پیروز باشید.