21
21
#import " FIRInstanceIDDefines.h"
22
22
#import " FIRInstanceIDLogger.h"
23
23
#import " FIRInstanceIDTokenOperation+Private.h"
24
- #import " FIRInstanceIDURLQueryItem.h"
25
24
#import " FIRInstanceIDUtilities.h"
26
25
#import " NSError+FIRInstanceID.h"
27
26
@@ -65,15 +64,16 @@ - (void)performTokenOperation {
65
64
66
65
// Build form-encoded body
67
66
NSString *deviceAuthID = self.checkinPreferences .deviceID ;
68
- NSMutableArray <FIRInstanceIDURLQueryItem *> *queryItems =
67
+ NSMutableArray <NSURLQueryItem *> *queryItems =
69
68
[[self class ] standardQueryItemsWithDeviceID: deviceAuthID scope: self .scope];
70
- [queryItems addObject: [FIRInstanceIDURLQueryItem queryItemWithName: @" sender"
71
- value: self .authorizedEntity]];
72
- [queryItems addObject: [FIRInstanceIDURLQueryItem queryItemWithName: @" X-subtype"
73
- value: self .authorizedEntity]];
74
-
75
- [queryItems addObjectsFromArray: [self queryItemsWithInstanceID: self .instanceID]];
69
+ [queryItems addObject: [NSURLQueryItem queryItemWithName: @" sender" value: self .authorizedEntity]];
70
+ [queryItems addObject: [NSURLQueryItem queryItemWithName: @" X-subtype"
71
+ value: self .authorizedEntity]];
76
72
73
+ if (self.instanceID .length > 0 ) {
74
+ [queryItems addObject: [NSURLQueryItem queryItemWithName: kFIRInstanceIDParamInstanceID
75
+ value: self .instanceID]];
76
+ }
77
77
// Create query items from passed-in options
78
78
id apnsTokenData = self.options [kFIRInstanceIDTokenOptionsAPNSKey ];
79
79
id apnsSandboxValue = self.options [kFIRInstanceIDTokenOptionsAPNSIsSandboxKey ];
@@ -82,21 +82,22 @@ - (void)performTokenOperation {
82
82
NSString *APNSString = FIRInstanceIDAPNSTupleStringForTokenAndServerType (
83
83
apnsTokenData, ((NSNumber *)apnsSandboxValue).boolValue );
84
84
// The name of the query item happens to be the same as the dictionary key
85
- FIRInstanceIDURLQueryItem *item =
86
- [FIRInstanceIDURLQueryItem queryItemWithName: kFIRInstanceIDTokenOptionsAPNSKey
87
- value: APNSString];
85
+ NSURLQueryItem *item = [NSURLQueryItem queryItemWithName: kFIRInstanceIDTokenOptionsAPNSKey
86
+ value: APNSString];
88
87
[queryItems addObject: item];
89
88
}
90
89
id firebaseAppID = self.options [kFIRInstanceIDTokenOptionsFirebaseAppIDKey ];
91
90
if ([firebaseAppID isKindOfClass: [NSString class ]]) {
92
91
// The name of the query item happens to be the same as the dictionary key
93
- FIRInstanceIDURLQueryItem *item =
94
- [FIRInstanceIDURLQueryItem queryItemWithName: kFIRInstanceIDTokenOptionsFirebaseAppIDKey
95
- value: (NSString *)firebaseAppID];
92
+ NSURLQueryItem *item =
93
+ [NSURLQueryItem queryItemWithName: kFIRInstanceIDTokenOptionsFirebaseAppIDKey
94
+ value: (NSString *)firebaseAppID];
96
95
[queryItems addObject: item];
97
96
}
98
97
99
- NSString *content = FIRInstanceIDQueryFromQueryItems (queryItems);
98
+ NSURLComponents *components = [[NSURLComponents alloc ] init ];
99
+ components.queryItems = queryItems;
100
+ NSString *content = components.query ;
100
101
request.HTTPBody = [content dataUsingEncoding: NSUTF8StringEncoding];
101
102
FIRInstanceIDLoggerDebug (kFIRInstanceIDMessageCodeTokenFetchOperationFetchRequest ,
102
103
@" Register request to %@ content: %@ " , FIRInstanceIDRegisterServer (),
0 commit comments