App Thinning — এটি কী, এটি কী কী উপাদান নিয়ে গঠিত এবং এটি কীভাবে কাজ করে

লেখক: IT Sectr প্রকাশিত: 2026-04-17 পড়ার সময়: 10 মিনিট

App Thinning হল Apple-এর একটি প্রযুক্তি যা শুধুমাত্র সেই রিসোর্সগুলি সরবরাহ করে ইনস্টল করা অ্যাপের আকার হ্রাস করে যা নির্দিষ্ট ব্যবহারকারীর ডিভাইসের জন্য প্রয়োজনীয়। Apple Developer Documentation, 2026 অনুসারে, App Thinning-এ তিনটি প্রক্রিয়া অন্তর্ভুক্ত: Slicing, Bitcode এবং On-Demand Resources। আসুন প্রতিটি উপাদান এবং ডিস্ট্রিবিউশন আকারে এর প্রভাব বিবেচনা করি।

মূল পয়েন্ট

  • App Thinning — App Store এবং ডিভাইসের পক্ষ থেকে iOS অ্যাপের আকার অপ্টিমাইজ করার প্রক্রিয়া
  • Slicing বাইনারি ফাইলকে বিভিন্ন প্রসেসর আর্কিটেকচার এবং স্ক্রিন রেজোলিউশনের জন্য ভেরিয়েন্টে বিভক্ত করে
  • Bitcode — প্রোগ্রামের একটি মধ্যবর্তী উপস্থাপনা যা App Store নির্দিষ্ট ডিভাইসের জন্য পুনরায় কম্পাইল করে
  • On-Demand Resources ব্যবহারের পরে রিসোর্স আনলোড করার অনুমতি দেয়, ডিভাইসে জায়গা খালি করে
  • ডাউনলোড আকার অ্যাপের রিসোর্স সেটের উপর নির্ভর করে 30-50% পর্যন্ত হ্রাস পেতে পারে

App Thinning কী

App Thinning — iOS অ্যাপ ডিস্ট্রিবিউশন অপ্টিমাইজেশনের একটি বিস্তৃত প্রযুক্তি, যা Apple iOS 9 (সেপ্টেম্বর 2015) এর সাথে চালু করেছিল। App Thinning-এর লক্ষ্য হল সোর্স কোড এবং কার্যকারিতা পরিবর্তন না করে ব্যবহারকারীর ডিভাইসে ডাউনলোড করা অ্যাপের আকার কমানো। প্রযুক্তিটি তিনটি স্তরে কাজ করে: বিল্ড পর্যায়ে (কম্পাইলেশন), App Store-এর পক্ষ থেকে (ডিস্ট্রিবিউশন) এবং ডিভাইসে (রিসোর্স ম্যানেজমেন্ট)।

App Thinning-এর আগে, ডেভেলপাররা সমস্ত সম্ভাব্য ডিভাইসের জন্য রিসোর্স বাইনারি ফাইলে অন্তর্ভুক্ত করত — @2x এবং @3x ইমেজ, 32-বিট এবং 64-বিট কোড, বিভিন্ন GPU-র জন্য Metal শেডার। এতে অ্যাপের আকার বেড়ে যেত: Retina HD ডিসপ্লে বিশিষ্ট iPhone 6 Plus ব্যবহারকারী iPad Pro-র ভেক্টর রিসোর্স পেত যা কখনও ব্যবহার হত না। Apple বিল্ডের কিছু অংশ App Store সার্ভারে স্থানান্তর করে এই সমস্যার সমাধান করেছে।

Apple-এর গবেষণা (WWDC 2015, Session 412) অনুসারে, একাধিক আর্কিটেকচার এবং রেজোলিউশন সমর্থন করে এমন একটি সাধারণ অ্যাপ App Thinning প্রয়োগ করার পরে 30-50% পর্যন্ত ছোট হতে পারে। প্রচুর সংখ্যক উচ্চ-বিস্তারিত টেক্সচার বিশিষ্ট গেমের জন্য, লাভ 70-80% পর্যন্ত পৌঁছাতে পারে। Apple প্রযুক্তির উন্নতি চালিয়ে যাচ্ছে: iOS 17-এ ARM64e-এর জন্য অপ্টিমাইজেশন এবং Swift Package Manager ব্যবহার করা অ্যাপের জন্য On-Demand Resources-এর সাথে উন্নত কাজ যোগ করা হয়েছে।

App Thinning যে সমস্যার সমাধান করে

মোবাইল অ্যাপের আকার ক্রমাগত বাড়ছে। Sensor Tower (2025) অনুসারে, গত 5 বছরে গড় iOS অ্যাপের আকার 45% বেড়েছে। সীমিত ডেটা প্ল্যান বা ধীর ইন্টারনেট ব্যবহারকারীদের জন্য, প্রতিটি মেগাবাইট গুরুত্বপূর্ণ। App Thinning ডেভেলপারের অংশগ্রহণ ছাড়াই এই সমস্যার সমাধান করে — শুধু প্রজেক্ট সেটিংসে সমর্থন চালু করুন এবং App Store Connect-এ বিল্ড আপলোড করুন।

App Thinning কীভাবে কাজ করে

App Thinning প্রক্রিয়া App Store Connect-এ অ্যাপের আর্কাইভ আপলোড করার পরে শুরু হয়। App Store বাইনারি ফাইল বিশ্লেষণ করে এবং এটিকে আর্কিটেকচার (armv7, arm64, arm64e), স্ক্রিন রেজোলিউশন (iPhone, iPad) এবং iOS সংস্করণ অনুসারে ভাগে বিভক্ত করে। প্রতিটি সংমিশ্রণের জন্য একটি আলাদা ভেরিয়েন্ট তৈরি করা হয়। যখন ব্যবহারকারী “ডাউনলোড” ক্লিক করেন, App Store ডিভাইস মডেল, iOS সংস্করণ এবং সংযোগের ধরন (Wi-Fi / মোবাইল নেটওয়ার্ক) নির্ধারণ করে এবং শুধু সংশ্লিষ্ট ভেরিয়েন্ট পাঠায়।

ব্যবহারকারীর জন্য প্রক্রিয়াটি স্বচ্ছ — কোনও “হালকা সংস্করণ” নির্বাচনের বিকল্প বা সেটিংস ডায়ালগ নেই। App Store ডিভাইসের মেটাডেটার উপর ভিত্তি করে স্বয়ংক্রিয়ভাবে সবচেয়ে উপযুক্ত ভেরিয়েন্ট নির্বাচন করে, যা ডাউনলোড অনুরোধে সার্ভারে পাঠানো হয়। যদি ডিভাইস Wi-Fi ব্যবহার করে, App Store উচ্চ মানের রিসোর্স (যেমন, iPhone 16 Pro-র জন্য ProRes ভিডিও) সম্বলিত ভেরিয়েন্ট পাঠাতে পারে। মোবাইল নেটওয়ার্কে ডাউনলোড করার সময়, ন্যূনতম সম্ভাব্য সেট ব্যবহার করা হয়।

অপ্টিমাইজেশনের দ্বিতীয় স্তর — Bitcode। যখন ENABLE_BITCODE অপশন চালু থাকে, Xcode অ্যাপকে মেশিন কোডে নয়, বরং মধ্যবর্তী LLVM উপস্থাপনায় কম্পাইল করে। App Store Bitcode ব্যবহারকারীর প্রসেসর আর্কিটেকচারের জন্য পুনরায় কম্পাইল করে, যা Apple-কে ডেভেলপার দ্বারা অ্যাপ আপডেট না করেই চিপের নতুন প্রজন্মের (A17, M4) জন্য কম্পাইলার অপ্টিমাইজেশন প্রয়োগ করতে দেয়। Bitcode watchOS এবং tvOS-এর জন্য বাধ্যতামূলক, কিন্তু iOS-এর জন্য ঐচ্ছিক।

App Thinning-এর উপাদান: Slicing, Bitcode, ODR

App Thinning তিনটি স্বাধীন প্রক্রিয়া নিয়ে গঠিত, যার প্রতিটি অপ্টিমাইজেশনের নিজস্ব দিকের জন্য দায়ী। Slicing বাইনারি ফাইলকে আর্কিটেকচার এবং স্ক্রিন রেজোলিউশন অনুসারে ভেরিয়েন্টে বিভক্ত করে। ডেভেলপার Asset Catalogs-এর মাধ্যমে Slicing কনফিগার করে — Xcode স্বয়ংক্রিয়ভাবে স্লাইসে শুধুমাত্র সেই রিসোর্সগুলি অন্তর্ভুক্ত করে যা লক্ষ্য ডিভাইসের সাথে মেলে। উদাহরণস্বরূপ, iPhone SE (তৃতীয় প্রজন্ম) শুধুমাত্র @2x ইমেজ এবং arm64 কোড পাবে, যেখানে iPad Pro M4 @3x ইমেজ এবং arm64e কোড পাবে।

Bitcode — LLVM IR (Intermediate Representation) — প্রোগ্রামের একটি মেশিন-স্বাধীন উপস্থাপনা। Bitcode চালু থাকলে, Xcode চূড়ান্ত মেশিন কোড তৈরি করে না, বরং মধ্যবর্তী উপস্থাপনা সংরক্ষণ করে। App Store Connect বিল্ড আপলোড করার সময় Bitcode গ্রহণ করে এবং এটি সমস্ত সমর্থিত ডিভাইসের আর্কিটেকচারের জন্য পুনরায় কম্পাইল করে। Bitcode Apple-কে ডেভেলপারের কম্পাইলেশন পর্যায়ে উপলব্ধ নয় এমন অপ্টিমাইজেশন প্রয়োগ করতে দেয় — উদাহরণস্বরূপ, M4 চিপে নতুন প্রসেসর নির্দেশ (SME, SVE) ব্যবহার করা।

On-Demand Resources (ODR) — তৃতীয় প্রক্রিয়া, যা ব্যবহারের পরে অ্যাপ রিসোর্স আনলোড করার অনুমতি দেয়। ডেভেলপার রিসোর্স (গেম লেভেল, অনবোর্ডিংয়ের জন্য ইমেজ, ভিডিও) ODR ট্যাগ দিয়ে চিহ্নিত করে। iOS চিহ্নিত রিসোর্স প্রয়োজন অনুসারে ব্যাকগ্রাউন্ডে ডাউনলোড করে এবং মেমরির অভাব হলে বা ব্যবহারের পরে সেগুলি আনলোড করে। ODR বিশেষ করে প্রচুর পরিমাণে কন্টেন্ট বিশিষ্ট গেমের জন্য কার্যকর — প্রথম লেভেল অ্যাপের সাথে দেওয়া যেতে পারে, এবং বাকিগুলি অগ্রগতির সাথে ডাউনলোড করা যেতে পারে।

প্রতিটি উপাদান কখন নির্বাচন করবেন

App Thinning প্রক্রিয়ার নির্বাচন অ্যাপের ধরন এবং এর লক্ষ্য দর্শকের উপর নির্ভর করে। Slicing সর্বদা চালু করার পরামর্শ দেওয়া হয় — এটির জন্য Asset Catalogs-এর সঠিক সংগঠন ছাড়া ডেভেলপারের কোনও অতিরিক্ত পদক্ষেপের প্রয়োজন নেই এবং এটি আকারে 20-30% স্থির হ্রাস দেয়। Bitcode চালু করা উপযুক্ত যদি অ্যাপ কাস্টম Metal শেডার ব্যবহার করে বা পুনরায় কম্পাইলেশন ছাড়াই নতুন Apple আর্কিটেকচার সমর্থন করার পরিকল্পনা করে। ODR প্রচুর পরিমাণে কন্টেন্ট বিশিষ্ট অ্যাপ — গেম, ফটো এডিটর, স্ট্রিমিং অ্যাপ — এর জন্য উপযুক্ত।

একটি সাধারণ ব্যবসায়িক অ্যাপ (ডেটা ফিড, ফর্ম, REST API) এর জন্য, Slicing এবং অনবোর্ডিং ইমেজের জন্য ন্যূনতম ODR কনফিগারেশন যথেষ্ট। গেম 3D গ্রাফিক্স সহ তিনটি প্রক্রিয়া থেকে উপকৃত হয়: Slicing অপ্রয়োজনীয় শেডার সরিয়ে দেয়, Bitcode GPU-র অধীনে রেন্ডারিং অপ্টিমাইজ করে, এবং ODR সম্পূর্ণ লেভেল আনলোড করে। Apple (WWDC 2024) অনুসারে, তিনটি প্রক্রিয়ার সংমিশ্রণ ইউনিভার্সাল বাইনারির তুলনায় প্রাথমিক ইনস্টল আকার গড়ে 45-55% হ্রাস করে।

প্রক্রিয়াকী করেকোথায় কাজ করেডেভেলপারের পদক্ষেপ প্রয়োজন
Slicingঅন্যান্য ডিভাইসের রিসোর্স সরিয়ে দেয়App Store + ডিভাইসAsset Catalogs
Bitcodeআর্কিটেকচারের জন্য পুনরায় কম্পাইলেশনApp StoreENABLE_BITCODE=YES
ODRপ্রয়োজন অনুসারে রিসোর্স ডাউনলোডডিভাইসপ্রজেক্টে ODR ট্যাগ

Xcode-এ App Thinning কনফিগার করা

Xcode প্রজেক্টে App Thinning চালু করার জন্য বেশ কয়েকটি ধাপ অনুসরণ করতে হবে। Slicing বিল্ড সেটিংসে App Thinning-এর মাধ্যমে কনফিগার করা হয়: Build Settings → App Thinning। তিনটি মান উপলব্ধ: None (অপ্টিমাইজেশন ছাড়া), Automatic (ডিফল্ট স্বয়ংক্রিয় সেটিং) এবং Manual যাতে পরীক্ষার জন্য নির্দিষ্ট ভেরিয়েন্ট নির্বাচন করা যায়। Apple বেশিরভাগ প্রজেক্টের জন্য Automatic সুপারিশ করে।

Asset Catalogs-এর জন্য রিসোর্স সঠিকভাবে সংগঠিত করা গুরুত্বপূর্ণ: ইমেজ প্রস্থ/উচ্চতা উল্লেখ করে একটি ইউনিভার্সাল ক্যাটালগে রাখা হয়, এবং Xcode স্বয়ংক্রিয়ভাবে @1x, @2x এবং @3x ভেরিয়েন্ট তৈরি করে। Xcode বিল্ড করার সময় শুধুমাত্র সেই রেজোলিউশনগুলি অন্তর্ভুক্ত করে যা প্রজেক্টে ব্যবহৃত হয়। Metal শেডার প্রতিটি GPU পরিবার — Apple GPU, PowerVR, Mali — এর জন্য পৃথকভাবে কম্পাইল করা হয়, যা Asset Catalogs-এর মাধ্যমেও পরিচালিত হয়।

Bitcode Build Settings-এ ENABLE_BITCODE = YES ফ্ল্যাগ দিয়ে চালু করা হয়। iOS-এর জন্য এই ফ্ল্যাগটি ঐচ্ছিক (Xcode 14 থেকে ডিফল্টরূপে বন্ধ), কিন্তু watchOS এবং tvOS-এর জন্য বাধ্যতামূলক। Bitcode চালু করলে, যদি প্রজেক্ট থার্ড-পার্টি লাইব্রেরি ব্যবহার করে, তবে সেগুলিকেও Bitcode দিয়ে কম্পাইল করতে হবে, অন্যথায় বিল্ড ব্যর্থ হবে। Bitcode কম্পাইলেশন সময় 20-30% বাড়ায়, কিন্তু ভবিষ্যতের আর্কিটেকচারের সাথে সম্পূর্ণ সামঞ্জস্য নিশ্চিত করে।

App Thinning ফলাফল পরীক্ষা করা

App Store Connect-এ আপলোড করার পরে, Activity → Build Metric বিভাগে স্লাইস আকার পরীক্ষা করা যেতে পারে। App Store Connect বিভিন্ন ডিভাইসের জন্য Estimated App Store Size প্রদর্শন করে। স্থানীয় পরীক্ষার জন্য, Xcode স্থানীয় মেশিনে স্লাইস তৈরি করতে -exportArchive ফ্ল্যাগ এবং thinning অপশন সহ xcodebuild কমান্ড প্রদান করে। Slicing-এর ফলাফল আর্কাইভেশনের পরে Organizer (Window → Organizer)-এ দেখা যেতে পারে — App Thinning Profiles ট্যাব বিভিন্ন ডিভাইসের জন্য আকার দেখায়।

bash
# Slicing-ēr sthānīya parīkshā
xcodebuild -exportArchive \
  -archivePath "App.xcarchive" \
  -exportPath "export/" \
  -exportOptionsPlist "export.plist" \
  -thinning "<thin-for-all-variants>"

Xcodebuild -thinning ফ্ল্যাগের সাথে আর্কিটেকচার, বিটনেস এবং GPU-র প্রতিটি সংমিশ্রণের জন্য .app ফাইল তৈরি করে। প্যারামিটার <thin-for-all-variants> সমস্ত সম্ভাব্য ভেরিয়েন্ট তৈরি করে — পরীক্ষার জন্য উপযোগী। CI পাইপলাইনের জন্য, একটি নির্দিষ্ট সংমিশ্রণ উল্লেখ করুন, যেমন iPhone14,4 (iPhone SE 3)। ফলস্বরূপ .app ফাইলগুলি app-size ইউটিলিটি দিয়ে বিশ্লেষণ করা যেতে পারে।

App Thinning-এর সুবিধা এবং প্রভাব

App Thinning-এর প্রধান সুবিধা হল শেষ ব্যবহারকারীর জন্য ডাউনলোড আকার হ্রাস। Apple (WWDC 2024) অনুসারে, তিনটি App Thinning প্রক্রিয়া ব্যবহার করে একটি সাধারণ অ্যাপ মোবাইল নেটওয়ার্কে গড়ে 40% দ্রুত ডাউনলোড হয় এবং ডিস্কে 35% কম জায়গা নেয়। এটি সরাসরি ইনস্টল রূপান্তরকে প্রভাবিত করে: Sensor Tower অনুসারে, অ্যাপের আকারের প্রতিটি 10 MB রূপান্তর 1% হ্রাস করে।

দ্বিতীয় সুবিধা — Bitcode-এর মাধ্যমে ভবিষ্যতের ডিভাইসের জন্য অপ্টিমাইজেশন। Apple ডেভেলপারের অংশগ্রহণ ছাড়াই Bitcode অ্যাপকে নতুন আর্কিটেকচারের জন্য পুনরায় কম্পাইল করতে পারে। উদাহরণস্বরূপ, Intel থেকে Apple Silicon (M1)-এ স্থানান্তরের সময়, Bitcode অ্যাপ অতিরিক্ত বিল্ড ছাড়াই Rosetta 2-এর মাধ্যমে macOS-এ কাজ করত। Bitcode চালু না করা ডেভেলপারদের arm64-এর জন্য অ্যাপ পুনরায় কম্পাইল করতে হত।

তৃতীয় সুবিধা — ODR (On-Demand Resources) ডিভাইস স্টোরেজের উপর চাপ কমায়। কয়েক ডজন লেভেল বিশিষ্ট গেম, যেমন Asphalt 8: Airborne, অগ্রগতির সাথে নতুন ট্র্যাক ডাউনলোড করতে ODR ব্যবহার করে। ডেভেলপার Initial Install Tags সেট করতে পারেন সেই রিসোর্সের জন্য যা অ্যাপের সাথে ডাউনলোড হয়, এবং Prefetch Tags সেই কন্টেন্টের জন্য যা ইনস্টলের পরে ব্যাকগ্রাউন্ডে ডাউনলোড হয়। Apple ODR সীমা নিয়ন্ত্রণ করে: প্রতি অনুরোধে 512 MB পর্যন্ত এবং ডিভাইসে মোট 20 GB ক্যাশ পর্যন্ত।

App Thinning-এর সীমাবদ্ধতা

App Thinning-এর বেশ কয়েকটি গুরুত্বপূর্ণ সীমাবদ্ধতা রয়েছে যা অ্যাপ ডিজাইন করার সময় বিবেচনা করতে হবে। প্রথমত, Slicing Enterprise (in-house) বা Ad Hoc-এর মাধ্যমে বিতরণ করা অ্যাপের ক্ষেত্রে প্রযোজ্য নয় — এই বিল্ডগুলিতে সমস্ত ভেরিয়েন্ট অন্তর্ভুক্ত থাকে এবং এগুলি App Store-এর মাধ্যমে যায় না। Slicing পরীক্ষার জন্য, ডেভেলপার TestFlight ব্যবহার করতে পারেন, যা Apple সার্ভারে Slicing প্রক্রিয়াও করে।

দ্বিতীয়ত, Bitcode বিল্ড সময় এবং .xcarchive আর্কাইভের আকার প্রায় 30-50% বাড়ায়। সমস্ত থার্ড-পার্টি লাইব্রেরি Bitcode সমর্থন করে না — যদি অন্তত একটি নির্ভরতা Bitcode ছাড়া কম্পাইল করা হয়, তাহলে ENABLE_BITCODE সহ প্রজেক্ট বিল্ড ব্যর্থ হবে। Apple Bitcode চালু করার আগে লাইব্রেরি সামঞ্জস্য পরীক্ষা করার পরামর্শ দেয়। তাছাড়া, Bitcode Swift Package Manager-কে সম্পূর্ণরূপে সমর্থন করে না — কিছু Swift প্যাকেজ Bitcode বিল্ড ভাঙতে পারে।

তৃতীয়ত, On-Demand Resources কন্টেন্টের তাৎক্ষণিক উপলব্ধতার গ্যারান্টি দেয় না — ODR ডাউনলোড ব্যাকগ্রাউন্ডে ঘটে এবং ডিভাইস কম ব্যাটারি মোড বা দুর্বল সিগন্যালে থাকলে বিলম্বিত হতে পারে। ডেভেলপারকে NSBundleResourceRequest-এর মাধ্যমে ODR ডাউনলোড স্থিতি পরিচালনা করতে হবে এবং ব্যবহারকারীকে অগ্রগতি নির্দেশক দেখাতে হবে। ODR ডাউনলোড ব্যর্থতা অ্যাপের কার্যকারিতা ব্লক করা উচিত নয় — একটি graceful fallback প্রয়োজন।

প্রায়শই জিজ্ঞাসিত প্রশ্ন

App Store-এ প্রকাশের জন্য কি App Thinning চালু করা বাধ্যতামূলক?

না, App Thinning বাধ্যতামূলক নয়। App Thinning ছাড়া অ্যাপ App Store-এ একটি একক ইউনিভার্সাল বাইনারি হিসাবে আপলোড হবে যাতে সমস্ত রিসোর্স ভেরিয়েন্ট অন্তর্ভুক্ত থাকবে। তবে, Apple দৃঢ়ভাবে App Thinning চালু করার সুপারিশ করে, কারণ এটি ব্যবহারকারীর অভিজ্ঞতা উন্নত করে এবং App Store সার্ভারের উপর লোড কমায়।

প্রকাশের আগে App Thinning-এর পরে অ্যাপের আকার কীভাবে পরীক্ষা করবেন?

Xcode Organizer আর্কাইভেশনের পরে বিভিন্ন ডিভাইসের জন্য Estimated App Store Size দেখায়। App Store Connect Activity বিভাগে বিল্ড আপলোড করার পরে স্লাইসের সঠিক আকার প্রদর্শন করে। স্থানীয় পরীক্ষার জন্য, -thinning ফ্ল্যাগ সহ xcodebuild ব্যবহার করুন।

App Thinning কি SwiftUI সমর্থন করে?

হ্যাঁ, App Thinning SwiftUI-এর সাথে সম্পূর্ণ সামঞ্জস্যপূর্ণ। Slicing Asset Catalogs-এর সাথে কাজ করে, যা SwiftUI Image এবং Color-এর মাধ্যমে ব্যবহার করে। Bitcode SwiftUI প্রজেক্ট সমর্থন করে শর্তসাপেক্ষে যে সমস্ত নির্ভরতা Bitcode দিয়ে কম্পাইল করা হয়। ODR ফ্রেমওয়ার্ক থেকে স্বাধীনভাবে NSBundleResourceRequest-এর মাধ্যমে পরিচালিত হয়।

App Thinning কি অ্যাপ লঞ্চের সময়কে প্রভাবিত করে?

Slicing লঞ্চের সময়কে প্রভাবিত করে না — সরানো রিসোর্স লোড হয় না। Bitcode JIT-কম্পাইলেশনের কারণে প্রথম স্টার্টে লঞ্চের সময় কিছুটা বাড়াতে পারে। ODR লঞ্চের সময় বাড়াতে পারে যদি Initial Install Tags সম্বলিত রিসোর্স এখনও ডাউনলোড না হয়। Apple শুধুমাত্র গুরুত্বপূর্ণ রিসোর্স Initial Install হিসাবে চিহ্নিত করার পরামর্শ দেয়।

কী করবেন যদি থার্ড-পার্টি লাইব্রেরি Bitcode সমর্থন না করে?

যদি প্রজেক্টের Bitcode প্রয়োজন হয়, কিন্তু লাইব্রেরি সমর্থন না করে — দুটি উপায় আছে: লাইব্রেরি প্রজেক্ট থেকে সরিয়ে Bitcode-সামঞ্জস্যপূর্ণ বিকল্প খুঁজুন, অথবা Build Settings-এ ENABLE_BITCODE-এর মাধ্যমে নির্দিষ্ট টার্গেটের জন্য Bitcode বন্ধ করুন। Apple iOS-এর জন্য Bitcode বন্ধ করার অনুমতি দেয়, কিন্তু watchOS এবং tvOS-এর বাধ্যতামূলক সমর্থন প্রয়োজন।

উপসংহার

  • App Thinning — Slicing, Bitcode এবং ODR-এর মাধ্যমে iOS অ্যাপের আকার কমানোর Apple-এর বিস্তৃত প্রযুক্তি
  • Slicing বাইনারি ফাইলকে নির্দিষ্ট আর্কিটেকচার এবং স্ক্রিন রেজোলিউশনের জন্য ভেরিয়েন্টে বিভক্ত করে
  • Bitcode — LLVM উপস্থাপনা যা App Store ব্যবহারকারীর ডিভাইস আর্কিটেকচারের জন্য পুনরায় কম্পাইল করে
  • On-Demand Resources প্রয়োজন অনুসারে রিসোর্স ডাউনলোড এবং আনলোড করার অনুমতি দেয়, ডিভাইসে জায়গা বাঁচায়
  • ডাউনলোড আকার তিনটি প্রক্রিয়ার সঠিক কনফিগারেশনে 30-50% হ্রাস পায়
  • Xcode Organizer এবং App Store Connect স্লাইস আকার পরীক্ষার জন্য সরঞ্জাম সরবরাহ করে
  • Enterprise এবং Ad Hoc বিল্ড Slicing-এর মধ্য দিয়ে যায় না — শুধুমাত্র App Store এবং TestFlight

আমরা একটি মোবাইল অ্যাপ্লিকেশন টার্নকি তৈরি করব

IT Sectr 2017 সাল থেকে স্টার্টআপ এবং ব্যবসার জন্য iOS এবং Android অ্যাপ্লিকেশন তৈরি করে। আমরা আপনাকে পরামর্শ দেব এবং সেরা সমাধান প্রস্তাব করব।

প্রকল্প নিয়ে আলোচনা করুন

আরও পড়ুন