Cast Framework תומך ב-iOS 14 ואילך, והוא מגיע גם כמסגרת סטטית וגם כמסגרת דינמית.
בחומר העזר בנושא Google Cast iOS API מופיעים תיאורים של כל המחלקות והשיטות.
הגדרה של Xcode
iOS 14
-
הוספה של Cast iOS SDK 4.8.3 לפרויקט
אם אתם משתמשים ב-CocoaPods, צריך להשתמש ב-
pod update
כדי להוסיף את SDK בגרסה 4.8.3 לפרויקט. -
הוספה של
NSBonjourServices
אלInfo.plist
מציינים את
NSBonjourServices
ב-Info.plist
כדי לאפשר גילוי ברשת המקומית ב-iOS 14.כדי שהתכונה 'איתור מכשירים' תפעל בצורה תקינה, צריך להוסיף את
_googlecast._tcp
ואת_<your-app-id>._googlecast._tcp
כשירותים.מזהה האפליקציה הוא מזהה המקלט, שהוא אותו מזהה שמוגדר ב-
GCKDiscoveryCriteria
.מעדכנים את ההגדרה של הדוגמה הבאה ומחליפים את 'ABCD1234' במזהה האפליקציה.
NSBonjourServices
-
הוספה של
NSLocalNetworkUsageDescription
אלInfo.plist
מומלץ מאוד להתאים אישית את ההודעה שמוצגת בהנחיה לגבי הרשת המקומית, על ידי הוספת מחרוזת הרשאה ספציפית לאפליקציה בקובץ
Info.plist
של האפליקציה, למשל כדי לתאר את האיתור של Cast ושירותי איתור אחרים, כמו DIAL.NSLocalNetworkUsageDescription
ההודעה הזו תופיע כחלק מתיבת הדו-שיח של iOS בנושא גישה לרשת המקומית, כמו שמוצג בתמונה.
-
פרסום מחדש של האפליקציה ב-Apple App Store
מומלץ גם לפרסם מחדש את האפליקציה באמצעות גרסה 4.8.3 בהקדם האפשרי.
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
ולהכין את הפרויקט לשימוש ב-SDK של Google Cast.
דוגמה להוספת google-cast-sdk
CocoaPod ל-Podfile
:
use_frameworks!
platform :ios, '14.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.3 והגרסאות עד הגרסה העיקרית הבאה (major.minor.patch) מורשות:
pod 'google-cast-sdk', '~> 4.8.3'
לדוגמה, המחרוזת '~> 1.6.7' תכלול את כל הגרסאות מ-1.6.7 ועד גרסה 2.0.0, לא כולל גרסה 2.0.0.
הגדרה ידנית
ההוראות הבאות מתייחסות להוספת Cast iOS SDK לפרויקט בלי להשתמש ב-CocoaPods:
הורדות
אחרי שמורידים את הספרייה המתאימה שמופיעה בהמשך, פועלים לפי שלבי ההגדרה כדי להוסיף את המסגרת לפרויקט.
ספריות Cast iOS Sender SDK 4.8.3:
שלבי ההגדרה
כדי להתקין את הספרייה:
- מורידים ומחלצים את ה-SDK המתאים לפרויקט.
- מגדירים את הספרייה הדינמית GoogleCastSDK:
-
גוררים את הקובץ
.xcframework
שלאחר פתיחת ה-zip אל הפרויקט הראשי בחלונית הניווט של פרויקט Xcode (לא אל פרויקט ה-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 (הגדרות בנייה) > Other Linker Flags (דגלי מקשר אחרים). -
מאודרים את התיקייה Resources בספרייה שחולצה וגוררים את
GoogleCastCoreResources.bundle
,GoogleCastUIResources.bundle
ו-MaterialDialogs.bundle
אל הפרויקט לצדGoogleCast.xcframework
שהוספתם קודם. מסמנים את האפשרות 'העתקת כל הפריטים אם צריך' ומוסיפים לכל יעדי הטרגוט.
הגדרה של Mac Catalyst
באפליקציות שתומכות ב-Mac Catalyst, צריך להשתמש בספרייה הדינמית של Cast SDK. כדי להוסיף את המסגרת לפרויקט, צריך לפעול לפי תהליך ההגדרה הידני. לאחר מכן, מחריגים באופן מותנה את Cast SDK מיעד Mac, כפי שמצוין במסמכי Apple. ספריות סטטיות עוברות קומפילציה מראש לארכיטקטורת iOS, ולכן מתקבלת שגיאת מקשר כשמבצעים קומפילציה מול יעד Mac.