نمایش نتایج 1 تا 8 از 8

نام تاپیک: Target Sdk Version

  1. #1
    کاربر تازه وارد آواتار Hossein8867
    تاریخ عضویت
    اردیبهشت 1394
    محل زندگی
    Tehran
    پست
    98

    Exclamation Target Sdk Version

    سلام خدمت دوستان گرامی.آیا targetSdkVersion همیشه باید تعیین بشه یا میشه این گزینه را ننوشت؟اگر نوشته بشه و مثلا الآن که api 24 اومده ، برنامه روی api 23 تنظیم شده باشه هر دفعه که یک api جدید میاد باید برنامه رو آپدیت کرد؟اگر نوشته نشه چی دیگه هر چی api جدید بیاد باهاش سازگاری داره یا نوشتنش اجباریِ؟

  2. #2
    کاربر دائمی آواتار BOB
    تاریخ عضویت
    خرداد 1383
    محل زندگی
    http://www.mshams.ir
    پست
    450

    نقل قول: Target Sdk Version

    سلام
    اصلا نیازی به تغییر آن نیست، بهتر است مقدار آن را برابر با minSdkVersion بگیرید.

  3. #3
    کاربر تازه وارد آواتار Hossein8867
    تاریخ عضویت
    اردیبهشت 1394
    محل زندگی
    Tehran
    پست
    98

    نقل قول: Target Sdk Version

    نقل قول نوشته شده توسط BOB مشاهده تاپیک
    سلام
    اصلا نیازی به تغییر آن نیست، بهتر است مقدار آن را برابر با minSdkVersion بگیرید.
    بعضی از دوستان برنامه نویس میگن روی آخرین نسخه بذاری بهتره برای اینکه با نسخه های جدید هم سازگار باشه (مانند تاپیک زیر).من هم تا الآن این کار رو انجام دادم.یعنی اگر برابر با minSdkVersion بذارم در نسخه های جدیدتر مشکلی به وجود نمیاد.
    https://barnamenevis.org/showthread.p...rgetSdkVersion

  4. #4
    کاربر دائمی آواتار rezaricky
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    Tabriz
    سن
    31
    پست
    441

    نقل قول: Target Sdk Version

    نقل قول نوشته شده توسط BOB مشاهده تاپیک
    سلام
    اصلا نیازی به تغییر آن نیست، بهتر است مقدار آن را برابر با minSdkVersion بگیرید.
    سلام . این کار درست نیست .
    TargetSdkVersion معمولا باید اخرین نسخه از اندروید باشه که عرضه شده (نسخه فعلی 24)
    این لینک ها رو بخونید :
    http://stackoverflow.com/questions/4...et-sdk-version
    http://stackoverflow.com/questions/2...-vs-compile-sd

  5. #5
    کاربر دائمی آواتار Nevercom
    تاریخ عضویت
    دی 1387
    محل زندگی
    بستک
    سن
    35
    پست
    1,118

    نقل قول: Target Sdk Version

    سیستم Permission اندروید که در API 23 معرفی شد رو درنظر بگیرید.

    اگر برنامه تون رو با API 23 کامپایل کنید، باید این مجوزها رو در Runtime بگیرید و اگر به اضافه کردن این مجوزها در منیفست بسنده کنید، هنگام اجرا برنامه خطا میده.
    درصورتی که اگر برنامه ی شما با API 22 یا پایین تر کامپایل شده باشه، مشکلی به وجود نمیاد.

    ساز و کار سیستم عامل برای معرفی قابلیت های جدید و حفظ سازگاری با API های قبلتر، به این شکل هست که چک می کنه برنامه ی شما با کدوم API کامپایل شده یا شما خودتون مشخص کرده باشید که تا کدوم نسخه رو تست کردید، اگر این عدد (مثلاً ۲۲ که میشه API 22) کوچکتر از نسخه ای باشه که اون قابلیت به پلتفرم اندروید اضافه شده، سیستم عامل حالت Compatibility (یا سازگاری) رو برای اون برنامه فعال می کنه. درواقع داره یه کار اضافه تری انجام میده تا اطمینان حاصل کنه که برنامه ی شما به درستی کار می کنه.

    targetSdkVersion دقیقاً همین مورد رو مشخص می کنه. به زبان ساده شما با این خصوصیت به سیستم عامل میگید که برنامه تون رو تا کدوم نسخه تست کردید و مطمئن هستید که رو اون نسخه درست کار می کنه.

    یعنی اگه تو برنامه که با API 23 کامپایل شده، targetSdkVersion رو بزارید روی ۲۲ به اندروید میگید که برنامه تا API 22 تست شده و اگر گوشی ای که برنامه روش اجرا میشه API 23 باشه، باید برای قابلیت های جدیدی که در این نسخه معرفی شده (مثل مجوزها) حالت Compatibility رو واسه برنامه ی شما فعال کنه.

    دلیل اینکه میگن بزارید روی نسخه ی آخر این هست که بتونید از همه ی امکانات نسخه آخر استفاده کنید بدون اینکه سیستم عامل رو مجبور کنید کار اضافه تری کنه تا اون قابلیت رو به برنامه تون بده.
    البته الکی الکی هم نباید بزارید رو نسخه آخر، مثلاً تو این مثال اگه targetSdkVersion رو گذاشتید روی نسخه ی آخر (که میشه ۲۴)، و کدهای مربوط به مدیریت مجوزها در Runtime رو ننوشته باشید، خطا دریافت می کنید چون سیستم عامل توقع داره برنامه تون رو روی این نسخه تست کرده باشید.

    این عدد نمیتونه بزرگ تر از نسخه ای باشه که برنامه رو باهاش کامپایل کردید (گمان میکنم)، و بهتره که خودتون کشخص کنید و بزارید روی آخرین نسخه ای که تست کردید که برنامه کار می کنه. پس حتماً وقتی برنامه ای می نویسید علاوه بر ورژن های قبلتر اندروید، روی آخرین نسخه هم تستش کنید و بعد targetSdk رو بزارید روی آخرین نسخه.

    بعضی وقتا هم میتونید عمداً این عدد رو کمتر از آخرین نسخه قرار بدید، مثلاً در این مثال خاص، اگر به هر دلیلی نخواستید کار مدیریت مجوزها در Runtime رو انجام بدید میتونید با نسخه ی 22 برنامه رو کامپایل کنید، یا اینکه حتی اگر با نسخه 24 کامپایلش می کنید، targetSdk رو بزارید روی 22. (که البته اینکار درست نیست و فقط در زمان تنبلی شدید مجاز هست - یا مثلاً زمانی که وقتتون خیلی محدوده و نمیخواید چند ساعت بیشتر زمان رو صرف برنامه کنید)

  6. #6
    کاربر تازه وارد آواتار Hossein8867
    تاریخ عضویت
    اردیبهشت 1394
    محل زندگی
    Tehran
    پست
    98

    نقل قول: Target Sdk Version

    نقل قول نوشته شده توسط Nevercom مشاهده تاپیک
    سیستم Permission اندروید که در API 23 معرفی شد رو درنظر بگیرید.
    .
    .
    .
    ممنون از پاسخ جامعتون.چیزی که من از پاسخ شما دریافتم اینِ که اگر برنامه ام به همون شکل قبلی بمونه و با آخرین api اون زمان کامپایل شده باشه مشکلی در زمان معرفی api های جدیدتر نمیفته ، حتی اگه نسخه جدید برنامه رو دادم ولی از امکانات api جدید تر استفاده نکردم باز هم میتونم targetSdkVersion رو روی همون api قبلی بذارم بمونه ، ولی باز بهتره در نسخه های بعدی targetSdkVersion رو روی آخرین نسخه بذارم.آیا منظورتون همینه؟

  7. #7
    کاربر دائمی آواتار BOB
    تاریخ عضویت
    خرداد 1383
    محل زندگی
    http://www.mshams.ir
    پست
    450

    نقل قول: Target Sdk Version

    یک نکته را مد نظر داشته باشید: تعداد دستگاههای با سخت افزار پایین در اندروید خیلی زیاد است. و کاربران اندروید عموما دارای سیستم عامل به روز نیستند.
    به همین دلیل هست که انتخاب درست minSdkVersion خیلی مهم است. اگر که برنامه شما مشتری خاص و پشتیبانی مداوم دارد و میتوانید برنامه را با تمام نسخه های جدید تر تست کرده و به ازای تمام قابلیتهای جدید استفاده شده، با توجه به minSDK روال های جایگزین سازگار با نسخه های قدیمی به کار ببرید، میتوان targetSdkVersion را روی نسخه های جدید تنظیم کرد.
    اما در توزیع عمومی app ها این طور نیست و سازگار بودن برنامه با api های پایینتر مهمتر از استفاده از قابلیتهای نسخه های جدید اندروید است.
    به همین دلیل وجود قابلیتهای compatiblity در زمان اجرا مفید هستند.
    اگر برنامه ای با توزیع گسترده دارید، این موضوع را عملا با استفاده از ACRA یا Crashlitycs تست کنید.

  8. #8
    کاربر دائمی آواتار Nevercom
    تاریخ عضویت
    دی 1387
    محل زندگی
    بستک
    سن
    35
    پست
    1,118

    نقل قول: Target Sdk Version

    نقل قول نوشته شده توسط Hossein8867 مشاهده تاپیک
    ممنون از پاسخ جامعتون.چیزی که من از پاسخ شما دریافتم اینِ که اگر برنامه ام به همون شکل قبلی بمونه و با آخرین api اون زمان کامپایل شده باشه مشکلی در زمان معرفی api های جدیدتر نمیفته ، حتی اگه نسخه جدید برنامه رو دادم ولی از امکانات api جدید تر استفاده نکردم باز هم میتونم targetSdkVersion رو روی همون api قبلی بذارم بمونه ، ولی باز بهتره در نسخه های بعدی targetSdkVersion رو روی آخرین نسخه بذارم.آیا منظورتون همینه؟
    به زبان ساده، هربار API جدیدی معرفی میشه دانلودش کنید (همراه با system-image)، برنامه تون رو روی اون API تست کنید، اگر هیچ خطایی نداشت، targetSdk رو ببرید روی اون ورژن.

تاپیک های مشابه

  1. خبر: Qt SDK version 1.1.4 released
    نوشته شده توسط alamate_aoal در بخش برنامه نویسی در محیط QT و هم خانواده هایش
    پاسخ: 3
    آخرین پست: یک شنبه 02 بهمن 1390, 12:39 عصر
  2. Java2 SDK and JRE (Standard or Enterprise Edition) version 1.4.1
    نوشته شده توسط zohreh_syar در بخش Java SE : نگارش استاندارد جاوا
    پاسخ: 0
    آخرین پست: چهارشنبه 31 تیر 1388, 11:42 صبح
  3. دانلود Java™ 2 SDK version 1.4.1_01
    نوشته شده توسط houshmand در بخش برنامه نویسی موبایل
    پاسخ: 0
    آخرین پست: شنبه 01 اردیبهشت 1386, 08:53 صبح
  4. SDK
    نوشته شده توسط mehdi3683 در بخش C#‎‎
    پاسخ: 1
    آخرین پست: سه شنبه 27 آبان 1382, 21:21 عصر
  5. SQL Server Version
    نوشته شده توسط faramarz_s در بخش مسائل مرتبط با نصب و راه اندازی
    پاسخ: 1
    آخرین پست: جمعه 28 شهریور 1382, 21:41 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •