認証後に私のアプリケーションにGmailの受信トレイを統合する必要があります。どのようにAPIを使用してGmailの受信トレイの内容を照会できますか?また、私は他の機能にもアクセスする必要があります。私はGmailにアクセスするための正確な迅速なコードを見つけるのを助けてください。 GoogleドキュメントiOS Quickstart使用SwiftのGMail APIによるGmailの受信ボックスコンテンツの照会方法
0
A
答えて
0
:
はステップ1:GmailのAPIをオンに
ステップ2:ワークスペース
ステップ3の準備:ここではサンプル
を設定していますサンプルコードで
ViewController.h
ファイルの内容を次のコードに置き換えます。
#import <UIKit/UIKit.h>
#import "GTMOAuth2ViewControllerTouch.h"
#import "GTLGmail.h"
@interface ViewController : UIViewController
@property (nonatomic, strong) GTLServiceGmail *service;
@property (nonatomic, strong) UITextView *output;
@end
次のコードでViewController.m
の内容を置き換えます
#import "ViewController.h"
static NSString *const kKeychainItemName = @"Gmail API";
static NSString *const kClientID = @"YOUR_CLIENT_ID_HERE";
@implementation ViewController
@synthesize service = _service;
@synthesize output = _output;
// When the view loads, create necessary subviews, and initialize the Gmail API service.
- (void)viewDidLoad {
[super viewDidLoad];
// Create a UITextView to display output.
self.output = [[UITextView alloc] initWithFrame:self.view.bounds];
self.output.editable = false;
self.output.contentInset = UIEdgeInsetsMake(20.0, 0.0, 20.0, 0.0);
self.output.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;
[self.view addSubview:self.output];
// Initialize the Gmail API service & load existing credentials from the keychain if available.
self.service = [[GTLServiceGmail alloc] init];
self.service.authorizer =
[GTMOAuth2ViewControllerTouch authForGoogleFromKeychainForName:kKeychainItemName
clientID:kClientID
clientSecret:nil];
}
// When the view appears, ensure that the Gmail API service is authorized, and perform API calls.
- (void)viewDidAppear:(BOOL)animated {
if (!self.service.authorizer.canAuthorize) {
// Not yet authorized, request authorization by pushing the login UI onto the UI stack.
[self presentViewController:[self createAuthController] animated:YES completion:nil];
} else {
[self fetchLabels];
}
}
// Construct a query and get a list of labels from the user's gmail. Display the
// label name in the UITextView
- (void)fetchLabels {
self.output.text = @"Getting labels...";
GTLQueryGmail *query = [GTLQueryGmail queryForUsersLabelsList];
[self.service executeQuery:query
delegate:self
didFinishSelector:@selector(displayResultWithTicket:finishedWithObject:error:)];
}
- (void)displayResultWithTicket:(GTLServiceTicket *)ticket
finishedWithObject:(GTLGmailListLabelsResponse *)labelsResponse
error:(NSError *)error {
if (error == nil) {
NSMutableString *labelString = [[NSMutableString alloc] init];
if (labelsResponse.labels.count > 0) {
[labelString appendString:@"Labels:\n"];
for (GTLGmailLabel *label in labelsResponse.labels) {
[labelString appendFormat:@"%@\n", label.name];
}
} else {
[labelString appendString:@"No labels found."];
}
self.output.text = labelString;
} else {
[self showAlert:@"Error" message:error.localizedDescription];
}
}
// Creates the auth controller for authorizing access to Gmail API.
- (GTMOAuth2ViewControllerTouch *)createAuthController {
GTMOAuth2ViewControllerTouch *authController;
// If modifying these scopes, delete your previously saved credentials by
// resetting the iOS simulator or uninstall the app.
NSArray *scopes = [NSArray arrayWithObjects:kGTLAuthScopeGmailReadonly, nil];
authController = [[GTMOAuth2ViewControllerTouch alloc]
initWithScope:[scopes componentsJoinedByString:@" "]
clientID:kClientID
clientSecret:nil
keychainItemName:kKeychainItemName
delegate:self
finishedSelector:@selector(viewController:finishedWithAuth:error:)];
return authController;
}
// Handle completion of the authorization process, and update the Gmail API
// with the new credentials.
- (void)viewController:(GTMOAuth2ViewControllerTouch *)viewController
finishedWithAuth:(GTMOAuth2Authentication *)authResult
error:(NSError *)error {
if (error != nil) {
[self showAlert:@"Authentication Error" message:error.localizedDescription];
self.service.authorizer = nil;
}
else {
self.service.authorizer = authResult;
[self dismissViewControllerAnimated:YES completion:nil];
}
}
// Helper for showing an alert
- (void)showAlert:(NSString *)title message:(NSString *)message {
UIAlertView *alert;
alert = [[UIAlertView alloc] initWithTitle:title
message:message
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
}
@end
ステップ4:認証情報をキーチェーンに格納されているので、後続:
ノートサンプルを実行します処刑は認可を促すことはありません。
iOSとGoogle API(GMAIL API)の詳細については、https://developers.google.com/gmail/api/v1/reference/をご覧ください。追加する機能を適用できます。
あなたがetc.Canドラフト、送信、送信トレイ、私は
関連する問題
- 1. Gmail API:受信トレイのラベルのみ
- 2. access_tokenを使用してgmail APIを照会する方法
- 3. Gmail Api Mail受信を読む
- 4. gmail smtpによる会話
- 5. Gmailの受信トレイに名前を表示する方法 -
- 6. C#でGmail受信トレイを受信
- 7. GmailのNode.js APIを使用して受信者を設定する方法
- 8. GmailでのAJAXリクエストの代行受信メールの代行受信
- 9. - GmailのAPI
- 10. GMAILのAPI
- 11. APIによるGmailのラベルの色は?
- 12. Node.js Gmail APIへのPOSTリクエストメッセージの送信
- 13. androidでプログラムでGmailメールを受信する方法
- 14. Gmail APIを使用してメールに返信する方法
- 15. Gmail APIメッセージの作成方法
- 16. JAVA SpringメールのGmailによる送信
- 17. C#のGmail APIを使用してGmailの件名を取得する方法
- 18. gmail APIで既存のメッセージを送信
- 19. Gmail拡張機能のgmail apiの使い方は?
- 20. Gmailの受信トレイページのようなデザインが必要
- 21. Gmailとphpファイルでメールを受信
- 22. GMail APIを使用する方法
- 23. メールを送信する:Gmailの受信者はカレンダーでイベントを受け取る
- 24. Excelのvbaコードは、Gmailの受信トレイにあるGmailのメールをループします。
- 25. Gmail API HistoryRequestクエリ
- 26. Gmail API forwardingAs
- 27. Gmail APIのバッチリクエストの上限
- 28. PHP Gmail API「send」からメッセージを送信
- 29. スウィフトGmail API:メッセージ送信エラー-1001
- 30. Gmail Webhooksから最近のメッセージを受け取る方法は?
:)このことができます願っていますが、このコードを使って、私はすでにこのcode.Iを試してみましたonly.I Gmailのラベルは受信トレイの内容を取得する必要があります取得しています助けて? –
[メッセージの使用/クエリ](https://developers.google.com/gmail/api/guides/filtering)を試しましたか?検索後、 'Users.messages:list'クラスを使用して[message](https://developers.google.com/gmail/api/v1/reference/users/messages/list#response)を取得します。 –