SendGrid
をカスタマイズするには注意が必要です。
sendGrid
を手動で追加する必要があります。
- ポッドを使用してAFNetworking 3.0を追加します。今
、SendGrid
での一つの方法があります:
- (void)sendWithWeb:(SendGridEmail *)email successBlock:(void(^)(id responseObject))successBlock failureBlock:(void(^)(NSError *error))failureBlock
あなたはメソッドを編集する必要があり、このよう従う
- (void)sendWithWeb:(SendGridEmail *)email successBlock:(void(^)(id responseObject))successBlock failureBlock:(void(^)(NSError *error))failureBlock
{
NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] multipartFormRequestWithMethod:@"POST"
URLString:self.baseURL
parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
for (int i = 0; i < email.imgs.count; i++)
{
UIImage *img = [email.imgs objectAtIndex:i];
NSString *filename = [NSString stringWithFormat:@"image%d.png", i];
NSString *name = [NSString stringWithFormat:@"files[image%d.png]", i];
NSLog(@"name: %@, Filename: %@", name, filename);
NSData *imageData = UIImagePNGRepresentation(img);
[formData appendPartWithFileData:imageData name:name fileName:filename mimeType:@"image/png"];
}
}
error:nil];
AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];
NSURLSessionUploadTask *uploadTask;
uploadTask = [manager
uploadTaskWithStreamedRequest:request
progress:^(NSProgress * _Nonnull uploadProgress) {
// This is not called back on the main queue.
// You are responsible for dispatching to the main queue for UI updates
dispatch_async(dispatch_get_main_queue(), ^{
//Update the progress view
});
}
completionHandler:^(NSURLResponse * _Nonnull response, id _Nullable responseObject, NSError * _Nullable error) {
if (error) {
NSLog(@"Error: %@", error);
failureBlock(error);
} else {
NSLog(@"%@ %@", response, responseObject);
successBlock(responseObject);
}
}];
[uploadTask resume];
}
としてのように編集する必要があります方法は。 お客様の要件に応じて編集を行います。
コードをテストしていないノート
。そのただの例。
最新バージョンの 'SendGrid'のPodバージョンを更新します。' pod 'SendGrid'、 '〜> 0.3.0'' –
@ PiyushPatelのように、あなたと同じ方法でやりました。しかし、ポッドエラーは依然として続きます。 – sarita
最新のバージョンのSendGridのPod版を更新してください。「AFNetworking」、「〜2.0」 – Wos