আইওএস 12.x এবং তার চেয়ে বেশি পুরনো কি সুইফটইউই পিছনের দিকে সামঞ্জস্যপূর্ণ?


123

যদি আমার কাছে সুইফটিউআই দিয়ে একটি অ্যাপ তৈরি করা থাকে তবে এটি আইওএস 13 এর নীচে আইওএসের জন্য কাজ করবে?


1
আপনি এটি চেষ্টা করবেন না কেন? এক্সকোড 11 বিটা ডাউনলোডের জন্য উপলব্ধ এবং টিউটোরিয়ালগুলি এখানে বিকাশকারী.অ্যাপল . com/ টিউটোরিয়ালস / সুইফটুই
মার্টিন আর

1
লোকেরা কি কেউ জানে যে আমার উত্তর @ জ্যান-
ফরাসোইস ফ্যাব্রে

10
না, সুইফটুআই আইওএস 12.x এবং আরও পুরানো নিয়ে কাজ করবে না।
ystack

উত্তর:


89

আমি কেবল এটি এক্সকোড 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 }
}

7
কমপক্ষে আরও ৫ বছর? সুতরাং আপনি এই মুহুর্তে কেবলমাত্র আইওএস 7 এবং নীচে উপলব্ধ API গুলি ব্যবহার করবেন?
ডেভিড মোনাগল

5
সবচেয়ে আশ্চর্যের বিষয় হ'ল আপনি মোজভে (10.4) তে এক্সকোড 11 দিয়ে একটি সুইফটুআই অ্যাপ্লিকেশন করতে পারেন যা কেবলমাত্র কাতালিনা (10.5) তে চলবে
টালিও কালাজানস

34

আমি এটি মনে করি না, কারণ সমস্ত লাইব্রেরি ইতিমধ্যে 13 বা ততোধিক আইওএস-এর জন্য বর্ণিত।

এছাড়াও, ডকুমেন্টেশনে , অ্যাপল স্পষ্টভাবে সমর্থিত সংস্করণগুলির উল্লেখ করেছে:

  • iOS13.0 + বিটা
  • macOS10.15 + বিটা
  • tvOS 13.0+ বিটা
  • watchOS 6.0+ বিটা

এখানে চিত্র বর্ণনা লিখুন


32

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 প্রকাশিত হওয়ার পরে পশ্চাদপটে অসঙ্গতি সীমাবদ্ধতাটি সরিয়ে নেওয়া যেতে পারে, তবে অ্যাপল টিমের পক্ষে এটি স্পষ্ট করে দেওয়া দরকার


1
এ সম্পর্কে কোন আপডেট? আপনার উল্লিখিত
পিআরটি

@ user158 আমি কেবল উত্তরটি আপডেট করেছি এবং কেন এই বৈশিষ্ট্যটি সমর্থন করা যায় না তা বর্ণনা করেছি।
farzadshbfn

15

না। সুইফটুইতে আইওএস 13 বা তার পরে, ম্যাকোস 10.15 বা তার পরে, টিভিওএস 13 বা তার পরে, বা ওয়াচওএস 6 বা তার পরে একটি ডিপোরিয়মেন্ট টার্গেট প্রয়োজন। ফ্রেমওয়ার্কটিতে অনেকগুলি নতুন ধরণের রয়েছে যা ওএস-এর পুরানো সংস্করণে নেই।


আইওএস 13 এ সুইফটুই ব্যবহার করা সম্ভব যখন নিম্ন স্থাপনার লক্ষ্যকে সমর্থন করে। দয়া করে
স্ট্যাকওভারফ্লো.

13

আপনি যদি আইফোন সমর্থন করতে এবং আইপ্যাডকে সমর্থন না করার জন্য শুটিং করছেন তবে আপনি সম্ভবত আশা করতে পারেন বেশিরভাগ ব্যবহারকারীরা 12-18 মাসের মধ্যে আইওএস 13 এ আপগ্রেড হবে (মুক্তির তারিখ দিয়ে শুরু হবে)। 85-90%? (আমি মনে করি অ্যাপল এই মুহূর্তে আইওএস 12 এ নেই এমন 15% লোক এখনও রয়েছে) এটি এখনই বেশ কিছুক্ষণ হলেও আপনি এখনই সুইফটআইআই অ্যাপ্লিকেশন স্থাপন করতে সক্ষম নন বা অন্যথায় প্রচুর ব্যবহারকারী বিচ্ছিন্ন হওয়ার ঝুঁকি রয়েছে to

অন্যান্য 10-15% কী তার উপরও নির্ভর করে, আপনি টেবিলে রেখে গেছেন এমন অনেক ব্যবহারকারী (এবং।) এর অর্থ হতে পারে।

আপনি যদি আইপ্যাডকে সমর্থন করেন তবে এটি আরও জটিল কারণ লোকেরা তাদের আইপ্যাডগুলি প্রায়শই আপগ্রেড করে না। তৃতীয় এবং চতুর্থ প্রজন্মের আইপ্যাডগুলি বন্যের মধ্যে এখনও রয়েছে, কেবলমাত্র 10.3.3 রয়েছে এবং এটি আর আপগ্রেড করতে পারে না। যখন লোকেরা পুরোপুরি সূক্ষ্মভাবে কাজ করে তখন লোকেরা কেবল নতুন আইপ্যাডের জন্য get 400 - $ 1000 এর মধ্যে বেতন পেতে যাবেন না।

অ্যাপ্লিকেশনটি আপডেট করার, এটিকে আরও উন্নত করা, বাগগুলি ঠিক করা, এর আইওএস ১৩ এর সাথে অবশ্যই কিছু করার দরকার নেই এর জন্য সর্বদা জায়গা এবং প্রয়োজন রয়েছে a অর্থাত প্রচুর ব্যবহারকারীকে অসন্তুষ্ট করার আগে আপনি যা জানতেন না সেই বাগটি খুঁজে পান। সর্বশেষতম আইওএস সংস্করণে নয়। এবং আমরা এমনকি এন্টারপ্রাইজ / কর্পোরেট গ্রাহকদের সম্পর্কেও কথা বলি নি যা প্রচুর দেব দোকান সমর্থন করে। ওই অঞ্চলে বিভিন্ন কারণে আইওএস আপডেটে আরও অনেক ধাক্কা রয়েছে।

সুতরাং আপনি আইওএস 13 এবং সুইফটইউআই সম্পর্কে সমস্ত উত্সাহিত হওয়ার আগে (যা আপনার একেবারেই দুর্দান্ত কারণ এটি হওয়া উচিত), সিলিকন ভ্যালির বাইরে, এটি সত্যিকারের গ্রাহকরা যা প্রত্যাশা করেন তার সাথে ঠিক একত্রিত হতে চলেছে না এবং আপনাকে সমর্থন করতে হবে পুরানো ডিভাইস এবং প্রয়োজন কারণ সেখানে কেবলমাত্র অনেক লোককে আপনি বিভ্রান্ত করবেন।


1
আমি "অসমর্থিত" আইফোনগুলির বেশ কয়েকটি লোককে জানি, তাই আপনি সর্বশেষতম আইওএস প্রকাশের জন্য কখনই 100% এ পৌঁছাতে পারবেন না। আমি জানি যে আমার বর্তমান ফোনটি মারা যাওয়ার পরে আমি আমার পরবর্তী ফোনটি সম্পর্কে দীর্ঘ এবং কঠোরভাবে চিন্তা করব
গাভিন

@cspam আপনার অনুমানগুলি ঠিক ঠিক থাকতে পারে তারা প্রশ্নের উত্তর দেয় না।
ব্যবহারকারী 1892364

আইওএস 12 বলে ডিভাইস তাই এটা কঠিন% 10 জন্য সমর্থন ড্রপ করা হয়নি যদি আমরা আইওএস 13. জন্য একই গ্রহণ হার আশা করতে পারেন
ক্যাসপার Zandbergen

SwiftUI- র পুরানো ডিভাইসগুলির সমর্থন করতে হবে এবং এটির প্রয়োজন হবে কারণ সেখানে কেবলমাত্র অনেক লোকই আপনি বিচ্ছিন্ন হয়ে পড়বেন! থাম্ব
ট্রেভর

9

দুর্ভাগ্যক্রমে, অ্যাপল ডকুমেন্টেশনের ভিত্তিতে এটি কেবল আইওএস 13 দিয়ে শুরু হবে।

https://developer.apple.com/documentation/swiftui/


লিঙ্কযুক্ত ডকুমেন্টেশনগুলির সমস্ত হ'ল আপনাকে আইওএস 13 এসডিকে (যেমন এক্সকোড 11) ব্যবহার করা দরকার। এর অর্থ এই নয় যে ডিভাইসটির ন্যূনতম সমর্থিত আইওএস সংস্করণটি আইওএস 13 হতে হবে ... আপনি পুরানো আইওএস সংস্করণগুলি
ঠিকঠাকই

9

এটি আইওএস 13+ এর সাথে সামঞ্জস্যপূর্ণ। এখানে এটির ডকুমেন্টেশনের লিঙ্ক।

https://developer.apple.com/documentation/swiftui/


এমনকি এক্সকোড 10 এটি সমর্থন করে না। আপনাকে এক্সকোড 11 ব্যবহার করতে হবে যা বিটাতে রয়েছে (জুন 3 2019)। https://developer.apple.com/tutorials/swiftui/creating-and-combining-views


6

কেবল 13 বা তার পরে আইওএসের জন্য কাজ করে

আপনি এখনও SwiftUIব্যবহার করে আপনার কোড সংযুক্ত করতে পারেন

@available(iOS 13.0, *)

আপনি যদি এখনও এক্সকোড 11 এর নিচে Xcode ব্যবহার করেন এবং সুইফটুআই কোড থাকে তবে আপনি এটি দিয়ে মুড়িয়ে রাখতে পারেন

#if canImport(SwiftUI)
...
#endif

এক্সকোড 11 এর নিচে Xcode দিয়ে সংকলন করার সময় এটি সমস্যার সমাধান করতে পারে


4

সবাই যেমন বলেছে, এটি পুরানো আইওএস সংস্করণগুলির সাথে পিছনে সামঞ্জস্যপূর্ণ হবে না। তবে অ্যাপলটি ধারাবাহিকভাবে তাদের সর্বশেষতম আইওএসের একটি উচ্চ ইনস্টল বেস রয়েছে এবং এটিও দেওয়া হয়েছে যে আইওএস 13 এর জন্য আইফোন 6 এস বা তার পরে, আইপ্যাড এয়ার 2 বা তার পরে, নতুন আইপ্যাড মিনি 4 এবং আইফোন এসই প্রয়োজন। বেশিরভাগ ব্যবহারকারীর আইওএস 13 ইনস্টল করতে সক্ষম হবে এবং সুদর্শন সুইফটুআই অ্যাপ্লিকেশন উপভোগ করবে।


3
আমার আইপ্যাড আইওএস 13 কে কাটা করতে পারে না, এবং এটি এখনও শক্তিশালী চলছে এবং কিছুক্ষণের জন্য প্রতিস্থাপন করা হবে (আমি আশা করি) এখানে আশা করছি যে আমি যে অ্যাপ্লিকেশনগুলি উপভোগ করছি / প্রয়োজনীয় অ্যাপ্লিকেশনগুলি পুরানো ডিভাইসগুলিকে না কাটতে পারে।
গাভিন

3

আমার আগে যেমন সমস্ত লোক উল্লেখ করেছে, এটি খুব স্পষ্ট যে এর জন্য আইওএস 13 বা তার পরে প্রয়োজন হবে। তবে নতুন আইওএস বিকাশকারী হিসাবে আমি ইউআইকিটির সাথে তুলনা করে সুইফটইউআইয়ের কতটা গ্রহণ করব তা নিয়ে আমি উদ্বিগ্ন ছিলাম। আমি ইতিমধ্যে ইউআইকিট দিয়ে কিছু ছোট প্রকল্প তৈরি করেছি এবং এটি নিয়ে কোথাও উন্নত হয়েছি।

কিন্তু যেমন সুইফটুইআই শুরু হয়েছিল, কীভাবে তাদের মধ্যে একত্রিত করা যায়। নিম্নলিখিত লিঙ্কে নিবন্ধটি সমস্ত প্রসঙ্গে রাখে: https://www.hackingwithswift.com/quick-start/swiftui/answering-the-big-question-should-you-learn-swiftui-uikit-or-both

আমার এখন কেবল উদ্বেগটি হ'ল আমি এক্সকোড 11 এর সাথে লক্ষ্য করেছি যে একটি এক্সকোড প্রকল্প স্টোরিবোর্ড এবং সুইফটুআই উভয়কেই একত্রিত করতে পারে না।


3

দুঃখজনকভাবে না, সুইফটইউআইএস কেবলমাত্র 13 এবং তদূর্ধের আইওএস এ অনুমোদিত। এটি আইওএস 13 ফ্রেমওয়ার্কে চালু হয়েছিল। আইওএস 13 এর আগে ওবজ-সি ফ্রেমওয়ার্ক (সুইফট সহ) ব্যবহার করে সবকিছু নির্মিত হয়েছিল।

ডেভ ডকুমেন্টেশনের ডানদিকে, এটি আইওএস, ম্যাকোস, টিভিএস, ওয়াচওএস ইত্যাদির সমর্থিত সংস্করণগুলি দেখায়

https://developer.apple.com/documentation/swiftui/

আশাকরি এটা সাহায্য করবে!

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.