我目前有三个活动用于我的Android应用程序,其中两个用于登录。第一个用于授权设备并要求用户输入更多用户信息(FullLogin),第二个用于设备已获得授权(ReducedLogin)。
我们的想法是向所有新用户显示FullLogin活动,直到他们的设备获得授权。然后,ReducedLogin活动将显示所有登录。
这可能吗?我将如何做到这一点?我在网上看到了一些使用/访问preferences.xml文件中的值的帖子,但我不能100%确定这是否符合我的需要。
答案 0 :(得分:0)
您无法修改清单,以及当用户按下启动器图标时控制运行的内容。
你可以做的是拥有一个"路由器" Activity
检查系统状态并启动您想要的真实Activity
。你必须在这里付出一些额外的努力,以确保你没有在路由器和真实活动之间获得屏幕闪光(从没有动画开始,没有在路由器中设置内容视图,使用空白主题,并且可能其他事情)。
另一种解决方案是使用片段。 "主要"活动只是检查状态并添加正确的片段......完整或缩小。
答案 1 :(得分:0)
此方案的制定非常普遍。存在许多可能的解决方案。
您可以保存用户是否在外部服务器上获得完全授权的信息,每次启动应用时,都会请求服务器然后显示相应的活动。
您可以将此信息存储在智能手机本地(例如,在SharedPreferences中),但出于安全考虑,我宁愿推荐第一种方式。本地存储的一大优势可能是避免额外的互联网许可,因为您不必请求服务器。
您可以使用加密来创建只能由授权用户解决的质询。
您可以将这些方法结合起来。