人人网如何判断用户登录状态
2013-04-18 20:59
309 查看
将Renren API iOS SDK代码加入Xcode工程
为了判断用户登录状态,需要引用Renren
API iOS SDK提供的方法,因此这里需要先将之前下载到的Renren API iOS SDK代码加入到Xcode工程中。
通过在工程Classes目录下点击右键,分别执行“Add->New Group”和“Add->Existing Files...”,将Renren API iOS SDK中src目录下的文件都加入到工程中,加完后如下所示:
[编辑]
在NavRootViewController.h前面引用如下文件:
在NavRootViewController.h的@end前面加上一个属性,用于存储Renren实例:
在NavRootViewController.m的@implementation块开头加上合成代码:
别忘了在NavRootViewController.m的dealloc方法中进行资源释放:
实现NavRootViewController.m的viewDidLoad方法,如下:
注意:initWithAppKeyAndId:andAppId:这个方法的两个参数分别指的是API Key和App ID,请一定注意将这里的两个值替换你自己的App的API Key和App ID
在上面这段代码中,我们创建了Renren实例,然后通过调用isSessionValid方法判断出用户是否处于登录状态。如果处于未登录状态,这里应该弹开登录界面让用户登录,代码下面会给出;如果处于登录状态,则走正常流程,接下来显示程序主界面。
[编辑]
在NavRootViewController.h开头添加如下前置声明:
在NavRootViewController.m顶部引用如下文件:
在NavRootViewController.h中添加如下属性,用于存储管理登录界面的RenrenLoginViewController:
在NavRootViewController.m的@implementation块中加入如下合成代码:
别忘了在NavRootViewController.m的dealloc方法中对renrenLoginViewController属性进行释放:
将弹开登录界面的动作封装成一个方法,在NavRootViewController.h中添加如下方法声明:
在NavRootViewController.m中添加如下方法实现:
这段代码创建了RenrenLoginViewController实例,并采用Modal的方式来全屏展示它。
改写NavRootViewController.m的viewDidLoad方法,使得在判断出用户未登录状态下调用openRenrenLoginView方法弹开登录界面。改写后的viewDidLoad方法如下所示:
编译后运行的结果,是显示用户登录界面(点击“用人人网帐号登录”的按钮还没有起作用,我们在下一节中完成):
为了判断用户登录状态,需要引用Renren
API iOS SDK提供的方法,因此这里需要先将之前下载到的Renren API iOS SDK代码加入到Xcode工程中。
通过在工程Classes目录下点击右键,分别执行“Add->New Group”和“Add->Existing Files...”,将Renren API iOS SDK中src目录下的文件都加入到工程中,加完后如下所示:
[编辑]
在NavRootViewController中创建Renren实例并判断用户登录状态
在NavRootViewController.h前面引用如下文件:#import "RRConnect.h"
在NavRootViewController.h的@end前面加上一个属性,用于存储Renren实例:
@property (nonatomic, retain) Renren *renren;
在NavRootViewController.m的@implementation块开头加上合成代码:
@synthesize renren;
别忘了在NavRootViewController.m的dealloc方法中进行资源释放:
- (void)dealloc { [self setRenren:nil]; [super dealloc]; }
实现NavRootViewController.m的viewDidLoad方法,如下:
注意:initWithAppKeyAndId:andAppId:这个方法的两个参数分别指的是API Key和App ID,请一定注意将这里的两个值替换你自己的App的API Key和App ID
- (void)viewDidLoad { [super viewDidLoad]; self.renren = [[Renren alloc] initWithAppKeyAndId:@"02acbca93cd94983b8bc2cbf62912147" andAppId:@"144142"]; if (![self.renren isSessionValid]) { //No session, go to login //TODO } }
在上面这段代码中,我们创建了Renren实例,然后通过调用isSessionValid方法判断出用户是否处于登录状态。如果处于未登录状态,这里应该弹开登录界面让用户登录,代码下面会给出;如果处于登录状态,则走正常流程,接下来显示程序主界面。
[编辑]
弹开登录界面
在NavRootViewController.h开头添加如下前置声明:@class RenrenLoginViewController;
在NavRootViewController.m顶部引用如下文件:
#import "RenrenLoginViewController.h"
在NavRootViewController.h中添加如下属性,用于存储管理登录界面的RenrenLoginViewController:
@property (nonatomic, retain) RenrenLoginViewController* renrenLoginViewController;
在NavRootViewController.m的@implementation块中加入如下合成代码:
@synthesize renrenLoginViewController;
别忘了在NavRootViewController.m的dealloc方法中对renrenLoginViewController属性进行释放:
- (void)dealloc { [self setRenren:nil]; [self setRenrenLoginViewController:nil]; [super dealloc]; }
将弹开登录界面的动作封装成一个方法,在NavRootViewController.h中添加如下方法声明:
- (void)openRenrenLoginView;
在NavRootViewController.m中添加如下方法实现:
- (void)openRenrenLoginView{ self.renrenLoginViewController = [[RenrenLoginViewController alloc] initWithNibName:@"RenrenLoginViewController" bundle:nil]; [self presentModalViewController:self.renrenLoginViewController animated:NO]; }
这段代码创建了RenrenLoginViewController实例,并采用Modal的方式来全屏展示它。
改写NavRootViewController.m的viewDidLoad方法,使得在判断出用户未登录状态下调用openRenrenLoginView方法弹开登录界面。改写后的viewDidLoad方法如下所示:
- (void)viewDidLoad { [super viewDidLoad]; self.renren = [[Renren alloc] initWithAppKeyAndId:@"02acbca93cd94983b8bc2cbf62912147" andAppId:@"144142"]; if (![self.renren isSessionValid]) { //No session, go to login [self openRenrenLoginView]; } }
编译后运行的结果,是显示用户登录界面(点击“用人人网帐号登录”的按钮还没有起作用,我们在下一节中完成):
相关文章推荐
- Nodejs 如何解决每次向后台发起请求时判断用户是否处于登录状态?
- 如何解决每次向后台发起请求时判断用户是否处于登录状态?
- Magento中如何获取/判断用户登录状态
- react-navigation 如何判断用户是否登录跳转到登录页
- 判断用户的登录状态,弹出alertView来进行登录操作
- Laravel 5.5 中用户登录时如何对附加字段进行判断
- Struts2重新学习之自定义拦截器(判断用户是否是登录状态)
- 如何在DotNet 2的登录组件中检索用户的锁定状态及解锁?
- 如何在DotNet 2的登录组件中检索用户的锁定状态及解锁?
- C# MVC 用户登录状态判断
- react-navigation 如何判断用户是否登录跳转到登录页的方法
- angularjs给Model添加拦截过滤器,路由增加限制,实现用户登录状态判断
- angularjs给Model添加拦截过滤器,路由增加限制,实现用户登录状态判断
- ASP.NET MVC下判断用户登录和授权状态方法
- 如何判断系统中登录用户数
- C# MVC 用户登录状态判断
- vue路由跳转时 判断用户是否处于 登录状态
- 应用服务器做了负载均衡之后如何保持用户登录状态的会话信息?
- springmvc拦截器实现对用户登录状态的判断
- AngularJS实现用户登录状态判断的方法(Model添加拦截过滤器,路由增加限制)