با توجه به درخواست یکی از کاربران عزیز سایت مبنی بر اینکه پس انتقال فایل APK پروژه Xamirna به دستگاه امکان اجرای آن وجود ندارد و برنامه پس از پیغامی بسته خواهد شد و همچنین نبود مقاله مفید در این ضمینه و مشکل اکثر برنامه نویسان با این قضیه تصمیم را گرفتم تا این مقاله را برای شما عزیزان آماده کنم.
در آین آموزش یادخواهید گرفت .

  1. چگونه برنامه ی خود را برای انتشار آماده نمایید؟
  2. چگونه برنامه ی خود را در قالب فایل APK صادر کنید و ان را با استفاده از یک مجوز امضا نمایید
  3. چگونه برنامه ی خود را توزیع نمایید.

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

  • آماده سازی برای انتشار

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

  1. تبدیل برنامه به یک فایل APK (یا پکیج اندروید)
  2. تولید مجوز طراحی شده به وسلیه ی خودتان و امضا نمودن برنامه به وسیله آن.
  3. انتشار برنامه امضادار شده

قبل از تبدیل نمودن برنامه به یک فایل APK و امضای آن نیاز دارید با یک فایل مهم در پروژه های اندرویدی آشنا شوید و آن فایلی نیست جز AndroidManifest.xml در ادامه به بررسی اجمالی به آن خواهیم پرداخت.

  • ساختار AndroidManifest.xml

با شروع نگارش ۱٫۰ از SDK اندروید، فایل  AndroidManifest.xml از هر برنامه ی اندروید، دارای ویژگی های  android:versionCode و android:versionName می باشد. تصویر مکان این فایل را در برنامه Xamiran در محیط ویژوال استادیو نمایش می دهد

ساختار AndroidManifest.xml
و اما ساختار فایل AndroidManifest.xml را در زیر مشاهده می نمایید

<?xml version="1.0" encoding="utf-8" ?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="myapp.ir" android:versionCode="1" android:versionName="1.0">
    <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="19" />
    <application android:label="myapp.ir" android:icon="@drawable/Icon"></application>
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
</manifest>

ویژگی android:versionCode نگارش برنامه را مشخص می کند. برای هر نگارش جدیدی که برای برنامه ی خود تولید می کنید، باید مقدار این ویژگی را یک واحد افزایش دهید تا بتوانید با استفاده از کد از تفاوت نگارش های موجود با نگارش جدید آگاه شوید. این مقدار به وسیله ی سیستم آندروید مورد استفاده قرار نمی گیرد، ولی برای بدست اوردن نگارش یک برنامه به وسیله برنامه نویسان سودمند است.البته این ویزگی به وسیله اندروید مارکت برای مشخص کردن اینکه نگارش جدیدی از برنامه ی شما در دسترس می باشد یا خیر نیز مورد استفاده قرار می گیرد.
ویزگی android:versionName دارای اطلاعات نگارش می باشد که برای کاربران قابل رویت است. این ویژگی باید دارای مقداری به فرمت <major>.<minor>.<point> باشد در صورتی که تغییرهای زیادی در هنگام به روزرسانی انجام شده باشد باید مقدار <major> یا<point> را یک واحد افزایش دهید.برای نمونه برای یک برنامه جدید نام نگارش به صورت ۱٫۰٫۰ مشحص می شود.برای تغییر یا اصلاح باگ کوچک می توانید آن را به ۱٫۱٫۰ یا ۱٫۰٫۱ تغییر دهید. برای بروزرسانی اساسی بعدی می توانید از مقدار ۲٫۰٫۰ استفاده کنید.
در صورتی که بخواهید برنامه خود را در اندروید مارکت ارائه دهید فایل AndroidManifest.xml دارای ویزگی های زیر باشد.

  1.  android:versionCode (درون عنصر <manifest>)
  2. android:versionName ( درون عنصر <manifest> )
  3. android:icon ( درون عنصر application ) : آیکون برنامه شما
  4. android:label ( درون عنصر application ): نام برنامه شما را مشخص

همچنین در صورتی که برنامه شما نیاز به یک نگارش حداقلی از SDK دارد باید ان را نیز در فایل AndroidManifest.xml با استفاده از عنصر <uses-sdk> مشخص کنید در نموه بالا دست کم نیاز به SDK با نگارش ۷ می باشد که همان اندروید ۲٫۱ می باشد. روی هم ، این ایده خوبی است که این عدد کمترین نگارشی باشد که برنامه ی شما با آن کار می کند. این کار سبب می شود که محدوده ی بزرگتری از کاربران قادر باشند از برنامه ی شما استفاده کنند.

  • امضای دیجیتال برای برنامه زامارین

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

  • تولید امضای دیجیتالی در Xamarin Studio

پروژه خود را توسط  Xamarin Studio باز نمایید قبل از تولید نیاز دارید تا حالت پروژه خود را از Debug به حالت Release تغییر دهید سپس از قسمت Build->Archive For Publishing را انتخاب نمایید
تولید امضای دیجیتالی در Xamarin Studio
در صورتی که قبلا این کار را کرده باشید با لیستی از انتشار مواجه خواهید شد همانند تصویر زیر
تولید امضای دیجیتالی در Xamarin Studio
هر بار که شما این عمل را انجام میدهید یک نمونه به این لیست افزوده خواهد شد کافیست نسخه ای را که نیاز به انتشار دارید انتخاب نمایید بالاترین همیشه جدید ترین نسخه است پس از انتخاب نسخه مورد نظز بر روی آن راست کلیک نمایید و گزینه Sign and Distribute  را انتخاب نمایید پس از انتخاب شما با دو گزینه روبرو خواهید شد همانند تصویر زیر
تولید امضای دیجیتالی در Xamarin Studio
در صورتی نیاز دارید تا فایل بر روی سیستم خود تولید شود گزینه اول و اگر نیاز دارید بر روی بستر Google Play برنامه خود را انتشار دهید گزینه دوم را انتخاب نمایید
پس از انتخاب گزینه اول شما با پنجره زیر روبرو خواهید شد
تولید امضای دیجیتالی در Xamarin Studio
اگر قبلا کلید دیجیتالی تولید کرده باشید در این قسمت لیستی از آن را مشاهده خواهید کرد و می توانید از آنها استفاده نمایید در غیر اینصورت نیاز دارید تا یک امضای جدید تولید نمایید برای اینکار گزینه Create a New Key را انتخاب نمایید پس از انتخاب با پنجره زیر روبرو خواهید شد
تولید امضای دیجیتالی در Xamarin Studio

  • Alias : نام مستعار برای کلید خصوصی
  • Password : کلمه عبور برای محافظت
  • Confirm : تایید کلمه عبور
  • Validate : دوره اعتبار بر اساس تعاریف گوگل برنامه ما باید به وسیله ی کلید خصوصی رمزگذاری شده ای امضا شود که تا پس از ۲۲ اکتبر ۲۰۳۳ معتبر باشد به همین دلیل عددی را وارد کنید که حاصل تفریق سال ۲۰۳۳ با سال فعلی بزرگتر باشد
  • FirstName ans last Name : نام و نام خانوادگی

دیگر گزینه ها اجباری نیستند و نیاز نیست انها را تکمیل کنید سپس بر روی Ok کلیک کنید تا امضای دیجیتالی شما ایجاد شود و به لیست اضافه گردد سپس امضاب خود را انتخاب کنید و گزینه Next را انتخاب نمایید تا با پنجره تاییدیه مواجه شوید در صورت تایید گزینه Publish را انتخاب نمایید پس از انتخاب از شما مسیر ذخیره فایل APK درخواست می شود مسیر خود را انتخاب کنید بعد از این مرحله از شما کلمه عبور امضای دیجیتالی که هنگام ساختن ان وارد کرده بودید می خواهد پس از ورود کلمه عبور و تایید در صورت موفقیت با پنجره زیر مواجه می شوید که کار تمام است و در صورت درست بودن تمام مراحل می توانید از فایل APK استفاده نمایید
تولید امضای دیجیتالی در Xamarin Studio

  • تولید امضای دیجیتالی در VisualStudio

در محیط ویژوال استادیو برای انتشار برنامه های اندرویدی خود از منوی   Tools > Android > Publish Android App را انتخاب نمایید با پنجره زیر مواجه می شوید

تولید امضای دیجیتالی در VisualStudio

اگر اولین بار است امضای دیجیتالی تولید می نمایید گزینه اول را انتخاب نمایید در غیر اینصورت گزینه دوم را انتخاب کنید برای ایجاد امضای دیجیتالی مسیر تولید فایل و کلمه عبور و تایید کلمه عبور را تکمیل و گزینه Next را انتخاب نمایید با پنجره زیر همانند مرحله زامارین مواجه می شوید همانند مراحل بالا اطلاعات را تکمیل نمایید

تولید امضای دیجیتالی در Xamarin Studio

پس از تایید فرم با پنجره زیر مواجه می شوید

تولید امضای دیجیتالی در VisualStudio

و گزینه create را انتخاب نمایید تا ویژوال استادیو شروع به تولید فایل APK نمایید

 

منبع : monoandroid.ir
25 پست
محمدزاده
سابقه 10 ساله برنامه نویسی مایکروسافت شامل C# , WPF , ASP.Net , Asp.Net Mvc و چند سال اندروید کار کردم تا اینکه زامارین دست به کار شد الان 3 ساله برنامه های اندرویدم رو با ویژوال استادیو مینویسم و لذت میبرم و دوست دارم این لذت رو با دیگران شریک باشم
برچسب ها: , , , , , , , ,
مطالب مرتبط
مطالب نویسنده
مطالب مشابه
دیدگاه کاربران

    سامان
    پاسخ دهید آذر ۳۰, ۱۳۹۴

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

      محمدزاده
      پاسخ دهید آذر ۳۰, ۱۳۹۴

      مرسی سامان جان . بله هم در زامارین هم در ویژوال استادیو در آموزش موجود است

    SADEGH.N
    پاسخ دهید بهمن ۶, ۱۳۹۴

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

      محمدزاده
      پاسخ دهید بهمن ۷, ۱۳۹۴

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

    حسن حسینی
    پاسخ دهید اردیبهشت ۳۱, ۱۳۹۵

    جدیدا وقتی میخواین برنامه ای رو تو بازار قرار بدین با این مشکل مواجه میشین و این به این معنی هست که بسته شما با امضای شخصی شما ساین نشده.کسانی که برنامه رو خودشون مینویسن میتونن از طریق اندروید استدیو یا ایکلیس اینکارو بکنن ولی مشکل برای جایی هست که یک نفر با برنامه سازهای موبایل برنامه ای رو ترجمه میکنه یا میسازه که در این مورد نمیشه برنامه رو ساین کنه و برنامه با کلید دیباگ ساین میشه و نمیتونه اونو در بازار یا گوگل پلی منتشر کنه. هیچ راه و برنامه ای هم در حال حاضر نیست که اینکارو انجام بده بجز یک راه که بهتون میگم.http://monitoringsoftware.ir من با این سایت مشکلمو حل کردم و تو بازار برناممو منتشر کردم

    برای نوشتن دیدگاه میتوانید به حساب کاربری خود وارد شوید ورود ارسال نظر بصورت مهمان
    ارسال نظر (مهمان):