
sign کردن apk در Command Line
برای امضای برنامه Android Studio تنها مسیر ممکن نیست و میتوانید در Command Line نیز، با استفاده از ابزار استانداردی که Android SDK و JDK در اختیارتان قرار میدهد، بستهی برنامه را امضا کنید. برای امضای برنامه از مسیر Command Line مراحل زیر را انجام دهید:
۱. ابتدا با استفاده از Keytool یک Private Key برای خودتان بسازید:
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
۲. پس از اجرای دستور بالا، برای Keystore و Private Key رمز عبور تعیین کنید. همچنین باید برای کلید خود نام متمایزی انتخاب کنید. نامی که جایگزین عبارت alias-name میکنید، در مراحل بعدی و هنگام امضای بستهی برنامه به کارتان میآید.
💡احتیاط: Keystore ساختهشده در این مرحله دربردارندهی یک کلید است، که این کلید به مدت «۱۰۰۰۰» روز اعتبار دارد. برای اینکه کلید ساختهشده برای استفاده در بروزرسانیهای بعدی برنامه نیز معتبر باشد، پیشنهاد میکنیم مقدار -validity را کمتر از این عدد درنظر نگیرید.
۳. پس از تعیین تمامی مقادیر خواستهشده، فایل my-release-key.KeyStore بهدست میآید.
۴.برنامهی خود را Release Mode کامپایل (compile) کنید، تا فایل امضانشدهی APK دراختیار شما قرار بگیرد.
۵. در این مرحله، باید با استفاده از ابزاری بهنام jarsigner، برنامهی خود را با Private Key ساختهشده امضا کنید:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore my_application.apk alias_name
۶. پس از انجام دستور بالا، باید رمز عبوری را که در مرحلهی دوم برای KeyStore انتخاب کرده بودید، وارد کنید.
۷.پس از واردکردن رمز عبور صحیح، فایل APK موردنظر شما با فایل کلیدی که پیشتر ساختهاید، امضا خواهد شد.
۸. در پایان از امضاشدن APK خود اطمینان پیدا کنید.