যদি আমার কাছে সুইফটিউআই দিয়ে একটি অ্যাপ তৈরি করা থাকে তবে এটি আইওএস 13 এর নীচে আইওএসের জন্য কাজ করবে?
যদি আমার কাছে সুইফটিউআই দিয়ে একটি অ্যাপ তৈরি করা থাকে তবে এটি আইওএস 13 এর নীচে আইওএসের জন্য কাজ করবে?
উত্তর:
আমি কেবল এটি এক্সকোড 11 এ পরীক্ষা করে দেখেছি এবং এটি নিশ্চিত করতে পারি যে এটি পিছনের দিকে সামঞ্জস্যপূর্ণ হবে না, যেমন সুইফটুআইয়ের View
বাস্তবায়নে দেখা যাবে :
/// A piece of user interface.
///
/// You create custom views by declaring types that conform to the `View`
/// protocol. Implement the required `body` property to provide the content
/// and behavior for your custom view.
@available(iOS 13.0, OSX 10.15, tvOS 13.0, watchOS 6.0, *)
public protocol View : _View {
/// The type of view representing the body of this view.
///
/// When you create a custom view, Swift infers this type from your
/// implementation of the required `body` property.
associatedtype Body : View
/// Declares the content and behavior of this view.
var body: Self.Body { get }
}
আমি এটি মনে করি না, কারণ সমস্ত লাইব্রেরি ইতিমধ্যে 13 বা ততোধিক আইওএস-এর জন্য বর্ণিত।
এছাড়াও, ডকুমেন্টেশনে , অ্যাপল স্পষ্টভাবে সমর্থিত সংস্করণগুলির উল্লেখ করেছে:
SwiftUI এবং একত্রিত ব্যবহার অনচ্ছ রিটার্ন-প্রকারভেদ সুইফট 5.1 এবং যেহেতু অনচ্ছ রিটার্ন-প্রকার (অন্যান্য বৈশিষ্ট্য পাশাপাশি) সুইফট 5.1 এবং তাদের বাস্তবায়ন প্রকৃতির কারণে প্রয়োগ করা হয়, তখন তারা ফিরে মোতায়েন করা যাবে না সুইফট 5.0 অসদৃশ ( ডিএসএল অথবা প্রপার্টি-Wrappers ), এবং কারণ আইওএস 13 নিকটতম আইওএস SDK এর যে রয়েছে সুইফট 5.1 , OS এ রানটাইম তাই প্রশ্নের উত্তর নেই এবং SwiftUI এবং একত্রিত করুন আইওএস এর পূর্ববর্তী সংস্করণে ব্যবহার করা যাবে না।
যদি না, অ্যাপল পূর্ববর্তী সুইফ্ট সংস্করণগুলির সাথে ব্যবহৃত এ্যাপ্লিকেশনটির সাথে সুইফট 5.1 রানটাইম (বা ভবিষ্যতের প্রকাশগুলি) বান্ডিল করার একটি উপায় সরবরাহ করে তবে যেহেতু এটি অ্যাপ-আকার বাড়িয়ে তুলবে এবং আবার পুরো সিস্টেমে ওভারহেড যুক্ত করবে, আমি সন্দেহ করি যে এটি হবে কখনও ঘটবে।
সুইফ্ট 5.1 এখনও প্রকাশিত হয়নি এবং অস্বচ্ছ রিটার্ন টাইপস , ডিএসএল , প্রপার্টিডেলিগেট (ডাব্লুডাব্লুডিসিতে প্রপার্টি র্যাপার হিসাবে প্রবর্তিত ) এবং ইত্যাদি SwiftUI
বৈশিষ্ট্যগুলি ব্যবহার করে যা কেবল সুইফ্ট 5.1 এ উপলব্ধ। যেহেতু সুইফ্ট 5 বাইনারি স্থিতিশীল, আমি অনুমান করি যে এক্সকোড 11 এর অভ্যন্তরে এম্বেড করা সুইফট-ফ্রেমওয়ার্কগুলি ব্যবহার করা সম্ভব ছিল না, তাই তারা কোকোয়া কোরগুলিতে এই বৈশিষ্ট্যগুলি পুনরায় প্রয়োগ করেছে এবং সুইফট 5.1 প্রকাশ না হওয়া পর্যন্ত তাদের iOS13 + উপলভ্য হিসাবে চিহ্নিত করেছে।
আমার অনুমানগুলি এই তথ্যের ভিত্তিতে রয়েছে যে, অর্ডারড কালেকশন ডিফিং এবং ডিএসএল সুইফট 5.1 এ উপলব্ধ হতে চলেছে এবং এক্সকোড বা অ্যাপলের ইকো-সিস্টেমের সাথে কোনও সম্পর্ক নেই, তবে সেগুলি হিসাবে চিহ্নিতও রয়েছে @available(iOS13,...)
। এর অর্থ হ'ল তাদের আইওএস প্রাপ্যতা বৈশিষ্ট্য সহ সুইফট 5.1 বৈশিষ্ট্যগুলি ব্যবহার করে সমস্ত কিছু চিহ্নিত করতে হয়েছিল। তাদের মধ্যে কেউ কেউ একবার সুইফট 5.1 মুক্তি পরার সরানো হবে, কিন্তু আমরা নিশ্চিত সম্পর্কে হতে পারে না SwiftUI
এবং Combine
যদি না অ্যাপল অন্যথায় বলে। ডিএসএলের প্রস্তাবনায় এটিও উল্লেখ করা হয়েছে :
বাস্তবায়ন: জনসংযোগ । নোট করুন যে এক্সকোড বিকাশকারী পূর্বরূপে বাস্তবায়ন এখানে বর্ণিত তুলনায় কিছুটা সহজ রূপান্তর ব্যবহার করে। লিঙ্কযুক্ত পিআর পূর্বরূপে প্রয়োগটি প্রতিবিম্বিত করে তবে এই প্রস্তাবটির সাথে মেলে সক্রিয় বিকাশের অধীনে।
তাই সুইফ্ট 5.1 প্রকাশিত হওয়ার পরে পশ্চাদপটে অসঙ্গতি সীমাবদ্ধতাটি সরিয়ে নেওয়া যেতে পারে, তবে অ্যাপল টিমের পক্ষে এটি স্পষ্ট করে দেওয়া দরকার ।
না। সুইফটুইতে আইওএস 13 বা তার পরে, ম্যাকোস 10.15 বা তার পরে, টিভিওএস 13 বা তার পরে, বা ওয়াচওএস 6 বা তার পরে একটি ডিপোরিয়মেন্ট টার্গেট প্রয়োজন। ফ্রেমওয়ার্কটিতে অনেকগুলি নতুন ধরণের রয়েছে যা ওএস-এর পুরানো সংস্করণে নেই।
আপনি যদি আইফোন সমর্থন করতে এবং আইপ্যাডকে সমর্থন না করার জন্য শুটিং করছেন তবে আপনি সম্ভবত আশা করতে পারেন বেশিরভাগ ব্যবহারকারীরা 12-18 মাসের মধ্যে আইওএস 13 এ আপগ্রেড হবে (মুক্তির তারিখ দিয়ে শুরু হবে)। 85-90%? (আমি মনে করি অ্যাপল এই মুহূর্তে আইওএস 12 এ নেই এমন 15% লোক এখনও রয়েছে) এটি এখনই বেশ কিছুক্ষণ হলেও আপনি এখনই সুইফটআইআই অ্যাপ্লিকেশন স্থাপন করতে সক্ষম নন বা অন্যথায় প্রচুর ব্যবহারকারী বিচ্ছিন্ন হওয়ার ঝুঁকি রয়েছে to
অন্যান্য 10-15% কী তার উপরও নির্ভর করে, আপনি টেবিলে রেখে গেছেন এমন অনেক ব্যবহারকারী (এবং।) এর অর্থ হতে পারে।
আপনি যদি আইপ্যাডকে সমর্থন করেন তবে এটি আরও জটিল কারণ লোকেরা তাদের আইপ্যাডগুলি প্রায়শই আপগ্রেড করে না। তৃতীয় এবং চতুর্থ প্রজন্মের আইপ্যাডগুলি বন্যের মধ্যে এখনও রয়েছে, কেবলমাত্র 10.3.3 রয়েছে এবং এটি আর আপগ্রেড করতে পারে না। যখন লোকেরা পুরোপুরি সূক্ষ্মভাবে কাজ করে তখন লোকেরা কেবল নতুন আইপ্যাডের জন্য get 400 - $ 1000 এর মধ্যে বেতন পেতে যাবেন না।
অ্যাপ্লিকেশনটি আপডেট করার, এটিকে আরও উন্নত করা, বাগগুলি ঠিক করা, এর আইওএস ১৩ এর সাথে অবশ্যই কিছু করার দরকার নেই এর জন্য সর্বদা জায়গা এবং প্রয়োজন রয়েছে a অর্থাত প্রচুর ব্যবহারকারীকে অসন্তুষ্ট করার আগে আপনি যা জানতেন না সেই বাগটি খুঁজে পান। সর্বশেষতম আইওএস সংস্করণে নয়। এবং আমরা এমনকি এন্টারপ্রাইজ / কর্পোরেট গ্রাহকদের সম্পর্কেও কথা বলি নি যা প্রচুর দেব দোকান সমর্থন করে। ওই অঞ্চলে বিভিন্ন কারণে আইওএস আপডেটে আরও অনেক ধাক্কা রয়েছে।
সুতরাং আপনি আইওএস 13 এবং সুইফটইউআই সম্পর্কে সমস্ত উত্সাহিত হওয়ার আগে (যা আপনার একেবারেই দুর্দান্ত কারণ এটি হওয়া উচিত), সিলিকন ভ্যালির বাইরে, এটি সত্যিকারের গ্রাহকরা যা প্রত্যাশা করেন তার সাথে ঠিক একত্রিত হতে চলেছে না এবং আপনাকে সমর্থন করতে হবে পুরানো ডিভাইস এবং প্রয়োজন কারণ সেখানে কেবলমাত্র অনেক লোককে আপনি বিভ্রান্ত করবেন।
দুর্ভাগ্যক্রমে, অ্যাপল ডকুমেন্টেশনের ভিত্তিতে এটি কেবল আইওএস 13 দিয়ে শুরু হবে।
এটি আইওএস 13+ এর সাথে সামঞ্জস্যপূর্ণ। এখানে এটির ডকুমেন্টেশনের লিঙ্ক।
https://developer.apple.com/documentation/swiftui/
এমনকি এক্সকোড 10 এটি সমর্থন করে না। আপনাকে এক্সকোড 11 ব্যবহার করতে হবে যা বিটাতে রয়েছে (জুন 3 2019)। https://developer.apple.com/tutorials/swiftui/creating-and-combining-views
কেবল 13 বা তার পরে আইওএসের জন্য কাজ করে
আপনি এখনও SwiftUI
ব্যবহার করে আপনার কোড সংযুক্ত করতে পারেন
@available(iOS 13.0, *)
আপনি যদি এখনও এক্সকোড 11 এর নিচে Xcode ব্যবহার করেন এবং সুইফটুআই কোড থাকে তবে আপনি এটি দিয়ে মুড়িয়ে রাখতে পারেন
#if canImport(SwiftUI)
...
#endif
এক্সকোড 11 এর নিচে Xcode দিয়ে সংকলন করার সময় এটি সমস্যার সমাধান করতে পারে
সবাই যেমন বলেছে, এটি পুরানো আইওএস সংস্করণগুলির সাথে পিছনে সামঞ্জস্যপূর্ণ হবে না। তবে অ্যাপলটি ধারাবাহিকভাবে তাদের সর্বশেষতম আইওএসের একটি উচ্চ ইনস্টল বেস রয়েছে এবং এটিও দেওয়া হয়েছে যে আইওএস 13 এর জন্য আইফোন 6 এস বা তার পরে, আইপ্যাড এয়ার 2 বা তার পরে, নতুন আইপ্যাড মিনি 4 এবং আইফোন এসই প্রয়োজন। বেশিরভাগ ব্যবহারকারীর আইওএস 13 ইনস্টল করতে সক্ষম হবে এবং সুদর্শন সুইফটুআই অ্যাপ্লিকেশন উপভোগ করবে।
আমার আগে যেমন সমস্ত লোক উল্লেখ করেছে, এটি খুব স্পষ্ট যে এর জন্য আইওএস 13 বা তার পরে প্রয়োজন হবে। তবে নতুন আইওএস বিকাশকারী হিসাবে আমি ইউআইকিটির সাথে তুলনা করে সুইফটইউআইয়ের কতটা গ্রহণ করব তা নিয়ে আমি উদ্বিগ্ন ছিলাম। আমি ইতিমধ্যে ইউআইকিট দিয়ে কিছু ছোট প্রকল্প তৈরি করেছি এবং এটি নিয়ে কোথাও উন্নত হয়েছি।
কিন্তু যেমন সুইফটুইআই শুরু হয়েছিল, কীভাবে তাদের মধ্যে একত্রিত করা যায়। নিম্নলিখিত লিঙ্কে নিবন্ধটি সমস্ত প্রসঙ্গে রাখে: https://www.hackingwithswift.com/quick-start/swiftui/answering-the-big-question-should-you-learn-swiftui-uikit-or-both
আমার এখন কেবল উদ্বেগটি হ'ল আমি এক্সকোড 11 এর সাথে লক্ষ্য করেছি যে একটি এক্সকোড প্রকল্প স্টোরিবোর্ড এবং সুইফটুআই উভয়কেই একত্রিত করতে পারে না।
দুঃখজনকভাবে না, সুইফটইউআইএস কেবলমাত্র 13 এবং তদূর্ধের আইওএস এ অনুমোদিত। এটি আইওএস 13 ফ্রেমওয়ার্কে চালু হয়েছিল। আইওএস 13 এর আগে ওবজ-সি ফ্রেমওয়ার্ক (সুইফট সহ) ব্যবহার করে সবকিছু নির্মিত হয়েছিল।
ডেভ ডকুমেন্টেশনের ডানদিকে, এটি আইওএস, ম্যাকোস, টিভিএস, ওয়াচওএস ইত্যাদির সমর্থিত সংস্করণগুলি দেখায়
https://developer.apple.com/documentation/swiftui/
আশাকরি এটা সাহায্য করবে!