第二种方式主要思路暂时用于研究讨论,大概是,启动一条专门用于等待登陆结果的线程,在登陆的过程中处于挂起状态,在登陆有结果后由其它线程来唤醒该条等待线程,继续之前的工作。 写了个简单的类来实现上面的方式LogonRequireTask,仅是说明这种思路。 使用时类似于以下代码,直接使用execute方法执行你要做的事情,可以是跳转至个人信息页,可以是做收藏功能,这样的处理方式就很简单明了了。但是别忘记了在登陆逻辑完成时调用LogonRequireTask.loginEnded()
new LogonRequireTask() {
@Override
public boolean logon() {
return logon;//Utils.isLogin()
}
@Override
public void onLogout() {
// TODO Auto-generated method stub
}
}.execute(new Runnable() {
@Override
public void run() {
//when login ok,go on
/