סיבות להוספת שתי ערכות ה-SDK באותה אפליקציה ל-iOS
במקרים מסוימים, יכול להיות שתרצו להשתמש גם ב-Driver SDK וגם ב-צרכן SDK באותה אפליקציה ל-iOS. לדוגמה:
- אתם רוצים אפליקציה אחת לטיפול בפונקציונליות של הנהגים וגם של הנוסעים.
- לאפליקציה שלכם צריכה להיות תצוגת expeditor/dispatcher כדי שהנהגים יוכלו להשתמש בה, אבל חברי צוות אחרים יוכלו לעקוב אחרי הפרטים של רכב אחד.
דרישות מוקדמות לבניית שתי ערכות ה-SDK באותה אפליקציה
יש להגדיר את שתי ערכות ה-SDK בהגדרת הפרויקט. כדי להתקין את ה-framework בכמה דרכים שונות, תוכלו להיעזר במדריך של Driver SDK כדי לעשות כמה שינויים קלים:
למידע על התקנת Cocoapods, קראו את המאמר תחילת העבודה עם Driver SDK ל-iOS Project Configuration.
ב-Podfile, מוסיפים את התלות של Consumer SDK. ה-Podfile אמור להיראות כך
source "https://cpdc-eap.googlesource.com/ridesharing-consumer-sdk.git" source "https://cpdc-eap.googlesource.com/ridesharing-driver-sdk.git" source "https://github.com/CocoaPods/Specs.git" target 'YOUR_APPLICATION_TARGET_NAME_HERE' do pod 'GoogleRidesharingConsumer' pod 'GoogleRidesharingDriver' end
לקבלת מידע נוסף על התקנה ידנית, קראו את המאמר תחילת השימוש ב-SDK של מנהל התקן ל-iOS להגדרת פרויקט ב-iOS.
לאחר שתבצעו את ההנחיות במדריך ההתקנה של Driver SDK, בצעו את השלבים 5 ו-6 במאמר תחילת העבודה עם Consumer SDK for iOS Project Configuration (התקנה ידנית) כדי להגדיר את Consumer SDK.
ניהול גרסאות
כדי לתמוך בתכונה הזו, גם ב-Driver SDK וגם ב-צרכן SDK צריכות להיות גרסה 3.3.0 ואילך.
שינויי תוכנה שעלולים לגרום לכשלים תיאורטי בערכות ה-SDK
גרסה 3.3.0 של Driver and Consumer SDK כוללת את השינויים הבאים, שעלולים באופן תיאורטי לגרום לבעיות בחלק מאפליקציות ה-SDK של Driver, אבל זה לא סביר. באופן כללי, אם באפליקציית Driver SDK נעשה שימוש במחלקות שמיועדות לצרכנים SDK, צריך להצהיר על Consumer SDK כתלות ב-SDK כדי למנוע בעיות. זוהי רשימת השינויים:
SDK של הנהג/ת
כיתות שלא בשימוש:
GMTSLatLng.h
GMTSRequest.h
GMTSRequestHeader.h
GMTSRequestOptions.h
GMTSRequestOptionsSupport.h
GMTSSpeedReadingSpan.h
GMTSTerminalLocation.h
GMTSTimestamp.h
GMTSTrafficData.h
GMTSTrip.h
GMTSTripPropertyField.h
GMTSTripWaypoint.h
GMTSVehicle.h
GMTSVehicleLocation.h
GMTSVehicleMatch.h
GMTSVehicleSupportedTripType.h
GMTSVehicleType.h
GMTSWaypoint.h
שיניתם את שם המחלקה בתצוגה המקדימה, שמשמשת רק את מצב הנהג המהימן ב-Last Mile Fleet Solution. למידע על מצב מהימן, קראו את המאמר מודל נהג מהימן (תצוגה מקדימה).
GMTSTaskInfo.h
->GMTDTaskInfo.h
SDK לצרכנים
השם של GMTSImmutableData
שונה לשם של כיתה אחת (GMTCImmutableData
). GMTSImmutableData
שימש רק כמחלקת בסיס ולא היה בשימוש ישיר.
GMTSImmutableData.h
->GMTCImmutableData.h
שינו את השם של typedef כדי שיהיה תואם לאחור:
GMTSFleetEngineIDString.h
->GMTCFleetEngineIDString.h