我目前正在开发一个 Android 应用程序,它向 Rest API 调用 HTTPS 请求(如登录等)。我的第一个方法是使用 AsyncTask 不在主线程上完成这项工作。不幸的是,我需要知道登录是否成功才能继续执行代码,因为如果您未登录,您对应用程序其他部分的访问权限将受到限制。
我尝试过使用 AsyncTask,因为我在之前的项目中使用过它,但我注意到返回值的问题有点晚了,现在我不知道应该使用什么技术来:
- 不要遮挡主 UI
- 等待回复
- 使用 boolean 值或类似的值评估响应
如果有人可以帮助我选择解决问题的最佳方法,我将不胜感激
最佳答案
使用Retrofit用于 API 调用。
但是,它也将是异步的。这是你无法避免的。 如果您必须等待调用完成并处理到应用程序/仪表板,则没有其他方法。
练习是在屏幕上显示加载程序,在异步任务中发送请求,等待响应,隐藏加载程序,处理到应用程序。
不确定您的实现,但其他方法可能是:
- 设置为用户未登录
- 处理应用句柄用户,因为他尚未登录
- 当登录请求成功时,设置他登录的一些全局变量
关于java - Android:登录的后台进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56966331/