نحوه صادر کردن یک بسته SWIFT به عنوان XCFrameWork

اگر در حال کار با بسته های Swift هستید و باید پروژه Swift خود را به یک XCFrameWork تبدیل کنید ، پیروی از یک روش مناسب ضروری است زیرا مشتری شما به عنوان مدیر بسته Swift (SPM) به آن قالب نیاز دارد. در این مقاله ، مراحل مورد نیاز برای صادرات بسته SWIFT خود را – به ویژه موردی که در Revenuemore یافت می شود – به عنوان یک XCFrameWork بررسی خواهیم کرد.
چرا از xcframework استفاده می کنید؟
XCFrameWorks یک رویکرد مدرن برای توزیع باینری ها در سکوهای دارای سازگاری برای معماری های مختلف مانند iOS ، MACOS و TVOS است. آنها به کاستی های چارچوب های سنتی پرداخته می شوند ، به ویژه هنگامی که صحبت از چندین هدف ساخت و پشتیبانی از هر دو شبیه ساز و معماری دستگاه در یک بسته واحد است. این امر آنها را به یک انتخاب ایده آل برای توسعه دهندگان با هدف سازگاری گسترده تبدیل می کند.
تولید XCFrameWork از یک بسته Swift
مرحله 1: بسته Swift خود را تنظیم کنید
قبل از شروع فرآیند ایجاد یک XCFrameWork ، اطمینان حاصل کنید که بسته Swift شما به خوبی تعریف شده است و تمام وابستگی ها به درستی مدیریت می شوند. اگر مخزن Revenuemore را از GitHub کلون کرده اید ، ابتدا به فهرست بروید:
cd revenuemore-ios
مرحله 2: چارچوب همه سیستم عامل ها را بسازید
برای ایجاد XCFrameWork ، باید بسته SWIFT را برای هر پلتفبی که قصد پشتیبانی از آن را دارید ، بسازید. مراحل معمولی عبارتند از:
-
پایانه باز
-
برای دستگاه های iOS بسازید
xcodebuild archive \ -scheme YourSchemeName \ -destination "generic/platform=iOS" \ -archivePath ./build/ios.xcarchive \ SKIP_INSTALL=NO \ BUILD_LIBRARY_FOR_DISTRIBUTION=YES
اطمینان حاصل کنید که جایگزین می شوید
YourSchemeName
با نام طرح واقعی بسته Swift شما. -
برای شبیه ساز iOS بسازید
xcodebuild archive \ -scheme YourSchemeName \ -destination "generic/platform=iOS Simulator" \ -archivePath ./build/iossimulator.xcarchive \ SKIP_INSTALL=NO \ BUILD_LIBRARY_FOR_DISTRIBUTION=YES
-
ساخت برای سایر سیستم عامل ها (در صورت لزوم)
در صورت لزوم می توانید دستورات مشابه را برای MACOS ، WatchOS یا TVOS تکرار کنید.
مرحله 3: xcframework را ایجاد کنید
پس از داشتن تمام بایگانی های مورد نیاز ، از دستور زیر برای ایجاد XCFrameWork استفاده کنید:
xcodebuild -create-xcframework \
-framework ./build/ios.xcarchive/Products/Library/Frameworks/YourFramework.framework \
-framework ./build/iossimulator.xcarchive/Products/Library/Frameworks/YourFramework.framework \
-output ./build/YourFramework.xcframework
مرحله 4: xcframework را تأیید کنید
پس از ایجاد موفقیت آمیز XCFrameWork ، باید تأیید کنید که شامل تمام معماری های مورد نیاز است. می توانید این کار را با دویدن بررسی کنید:
file ./build/YourFramework.xcframework/ios-arm64_yourFramework.framework/yourFramework
file ./build/YourFramework.xcframework/ios-arm64_simulator_yourFramework.framework/yourFramework
اگر این دستورالعمل ها را به درستی دنبال کرده اید ، اکنون باید یک xcframework آماده برای به اشتراک گذاشتن با مشتری خود داشته باشید.
سؤالات متداول (سوالات متداول)
آیا می توانم بدون تبدیل آن به XCFrameWork ، از بسته Swift مستقیم استفاده کنم؟
بله ، اما استفاده از XCFrameWork سازگاری بهتری را فراهم می کند ، به خصوص برای پروژه هایی که به معماری های خاص یا ایجاد غلاف باینری برای کاکاپود نیاز دارند.
اگر در طول فرآیند با خطا روبرو شوم چه کاری باید انجام دهم؟
دوبار بررسی کنید که نام طرح و مسیرها به درستی در دستورات XcodeBuild شما مشخص شده است. همچنین ، اطمینان حاصل کنید که ابزارهای Xcode به روز هستند.
آیا راهی برای خودکارسازی این روند وجود دارد؟
می توانید یک اسکریپت پوسته سفارشی ایجاد کنید که دستورات لازم برای ساخت و بسته بندی بسته SWIFT خود را در یک XCFrameWork قرار دهد. این کار باعث صرفه جویی در کارهای تکراری می شود.