Cast framework תומך ב-iOS מגרסה 15 ואילך, והוא זמין גם כמסגרת סטטית וגם כמסגרת דינמית.
בחומר העזר בנושא Google Cast iOS API מפורטים תיאורים של כל המחלקות והשיטות.
הגדרה של Xcode
iOS 14
-
הוספת Cast iOS SDK 4.8.4 לפרויקט
אם אתם משתמשים ב-CocoaPods, צריך להשתמש ב-
pod updateכדי להוסיף את SDK בגרסה 4.8.4 לפרויקט. -
הוספה של
NSBonjourServicesאלInfo.plistמציינים את
NSBonjourServicesב-Info.plistכדי לאפשר גילוי ברשת המקומית ב-iOS 14.כדי שהתכונה 'איתור מכשירים' תפעל בצורה תקינה, צריך להוסיף גם את
_googlecast._tcpוגם את_<your-app-id>._googlecast._tcpכשירותים.מזהה האפליקציה הוא מזהה המקלט, שהוא אותו מזהה שמוגדר ב-
GCKDiscoveryCriteria.מעדכנים את ההגדרה של הדוגמה הבאה ומחליפים את המחרוזת ABCD1234 במזהה האפליקציה שלכם.
NSBonjourServices -
הוספה של
NSLocalNetworkUsageDescriptionאלInfo.plistמומלץ מאוד להתאים אישית את ההודעה שמוצגת בהנחיה לגבי הרשת המקומית, על ידי הוספת מחרוזת הרשאות ספציפית לאפליקציה בקובץ
Info.plistשל האפליקציה עבורNSLocalNetworkUsageDescription, למשל כדי לתאר את האיתור של Cast ושירותי איתור אחרים, כמו DIAL.ההודעה הזו תופיע כחלק מתיבת הדו-שיח של הגישה לרשת המקומית ב-iOS, כמו שמוצג בתמונה.
-
פרסום מחדש של האפליקציה ב-Apple App Store
מומלץ גם לפרסם מחדש את האפליקציה באמצעות גרסה 4.8.4 בהקדם האפשרי.
iOS 13
iOS 12
מוודאים שהמתג Access WiFi Information (גישה לפרטי רשת ה-Wi-Fi) בקטע Capabilities (יכולות) של היעד מוגדר למצב On (מופעל).

בנוסף, פרופיל ההקצאה צריך לתמוך ביכולת Access WiFi Information. אפשר להוסיף אותו ב-Apple Developer Portal.

הגדרת CocoaPods
הדרך המומלצת לשילוב של Google Cast היא באמצעות CocoaPods. כדי לשלב את התכונה, משתמשים ב-CocoaPods google-cast-sdk.
כדי להתחיל, צריך לפעול לפי המדריך למתחילים.
אחרי שמגדירים את CocoaPods, פועלים לפי המדריך לשימוש ב-CocoaPods כדי ליצור את Podfile ולהכין את הפרויקט לשימוש ב-Google Cast SDK.
דוגמה להוספת google-cast-sdk CocoaPod ל-Podfile:
use_frameworks!
platform :ios, '15.0'
def target_pods
pod 'google-cast-sdk'
end
target 'CastVideos-objc' do
target_pods
end
target 'CastVideos-swift' do
target_pods
end
בפרויקט, צריך לציין טווח ל-pods כדי למנוע שינויים לא צפויים שעלולים לשבור את הקוד, כמו שמפורט במדריך podfile.
בדוגמה הזו, גרסה 4.8.4 והגרסאות עד הגרסה העיקרית הבאה (major.minor.patch) מורשות:
pod 'google-cast-sdk', '~> 4.8.4'
לדוגמה, '~> 1.6.7' יכלול את כל הגרסאות מ-1.6.7 ועד גרסה 2.0.0, לא כולל גרסה 2.0.0.
הגדרה ידנית
ההוראות הבאות מתייחסות להוספת Cast iOS SDK לפרויקט בלי להשתמש ב-CocoaPods:
הורדות
אחרי שמורידים את הספרייה המתאימה שמופיעה בהמשך, פועלים לפי שלבי ההגדרה כדי להוסיף את המסגרת לפרויקט.
ספריות Cast iOS Sender SDK 4.8.4:
שלבי ההגדרה
כדי להתקין את הספרייה:
- מורידים ומחלצים את ה-SDK המתאים לפרויקט.
- מגדירים את הספרייה הדינמית GoogleCastSDK:
-
גוררים את הקובץ
.xcframeworkשחולץ אל הפרויקט הראשי ב-Xcode Project Navigator (לא אל פרויקט ה-Pods, אם יש כזה). מסמנים את האפשרות 'העתקת כל הפריטים אם צריך' ומוסיפים לכל יעדי הטרגוט. -
בכרטיסייה
Generalשל יעד Xcode, בוחרים באפשרותEmbed and SignבשבילGoogleCast.xcframework.
אם אתם מגדירים את הספרייה הדינמית, אתם צריכים לבצע את השלבים הבאים בנוסף לשלבים הקודמים:
- מגדירים את ספריית Protobuf עם גרסה מינימלית v3.13.
- אם הפרויקט שלכם משתמש ב-CocoaPods:
-
פותחים את
Podfileומסירים אתgoogle-cast-sdkאם הוא מופיע:pod 'google-cast-sdk'
-
אם ספריית
Protobufלא קיימת, מוסיפים אותה:pod 'Protobuf', '3.13'
-
מריצים את הפקודה
pod installבתיקיית הבסיס של הפרויקט. - אם אתם לא משתמשים ב-CocoaPods בפרויקט:
-
מסירים את הגרסה הנוכחית של
GoogleCastSDK, אם היא קיימת. - מוסיפים את ספריית Protobuf בגרסה 3.13 ומעלה, לפי ההוראות שמופיעות במאגר Protobuf GitHub.
אם אתם מגדירים את הספרייה הסטטית, אתם צריכים לבצע את השלבים הבאים בנוסף לשלבים הקודמים:
-
בפרויקט Xcode, מוסיפים את הדגלים
-ObjC -lc++אל Build Settings (הגדרות ה-Build) > Other Linker Flags (דגלי מקשר אחרים).
-
מאתרים את התיקייה Resources בספרייה שחולצה וגוררים את כל הקבצים
.bundleאל הפרויקט לצד הקובץGoogleCast.xcframeworkשהוספתם קודם. מסמנים את התיבה 'העתקת כל הפריטים אם צריך' ומוסיפים את הקובץ לכל יעדי הטרגוט.
הגדרה של Mac Catalyst
באפליקציות שתומכות ב-Mac Catalyst, צריך להשתמש בספרייה הדינמית של Cast SDK. כדי להוסיף את המסגרת לפרויקט, פועלים לפי תהליך ההגדרה הידני. לאחר מכן, מחריגים באופן מותנה את Cast SDK מהיעד Mac, כפי שמצוין במסמכי Apple. ספריות סטטיות עוברות קומפילציה מראש לארכיטקטורת iOS, ולכן מתקבלת שגיאת מקשר כשמבצעים קומפילציה מול יעד Mac.