How to set my web view loaded with already login user -iPhone
First of all, I think the URL you should be loading is http://mail.google.com/mail
Other than that, you're not getting normal gmail behavior because UIWebView does not save cookies between app runs, you should try something like this to save them:
- (void)saveCookies
{
NSData *cookiesData = [NSKeyedArchiver archivedDataWithRootObject: [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies]];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject: cookiesData forKey: @"cookies"];
[defaults synchronize];
}
and load them back using this:
- (void)loadCookies
{
NSArray *cookies = [NSKeyedUnarchiver unarchiveObjectWithData: [[NSUserDefaults standardUserDefaults] objectForKey: @"cookies"]];
NSHTTPCookieStorage *cookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
for (NSHTTPCookie *cookie in cookies)
{
[cookieStorage setCookie: cookie];
}
}
Comments
-
iOS dev almost 2 years
In my app iam using web view with URL:@"http://www.gmail.com/".
This web view was loaded when i clicked a button in the main page / home page
(IBAction)webClick:(id)sender { MailViewController *mail = [[MailViewController alloc]initWithNibName:@"MailViewController" bundle:nil]; [self.navigationController pushViewController:mail animated:YES]; }
Then the web view was loaded, i used code like thin this in mail view:
-(void)viewDidLoad { [super viewDidLoad]; NSString *urlAddress = @"http://www.gmail.com/"; NSURL *url = [NSURL URLWithString:urlAddress]; NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; [webView loadRequest:requestObj]; }
Here the gmail opened with login page. we need to enter username & password.
What i want is,
if we already login into my account through gmail application..
The loaded view directly loades my mail, instead of login page.
if i didn't already loged in, then show an alert as please login.
How to do it?
Please help me. Thanks in advance.
-
Raj almost 10 years@sheetal try to load from app delegate didFinishLoad , its work perfectly for me
-
user2260054 almost 9 yearsSuper helpful answer!
-
imjaydeep almost 6 yearswhere do i call save cookies?