Android应用的用户身份验证

时间:2012-07-26 23:59:02

标签: php android mysql

请事先原谅我,但我已经阅读了与此相关的所有主题,这个新手仍然感到困惑。让我开始简要介绍一下我想要实现的目标...... 我创建了一个测验。由于我添加了排行榜,因此我需要用户创建用户名和密码或电子邮件地址,以使其独一无二。我已经设法使用phpmysql创建了注册和登录功能,它在我的应用程序中运行得非常好。 但是,我不希望用户每次打开应用程序时都必须登录,而是记住用户详细信息。 我是否在android sdk中使用帐户管理器功能并废弃mysql?或者我应该修改我已经拥有的东西?我甚至需要使用phpmysql进行登录吗?我意识到我将不得不将它用于排行榜。 任何有助于指出我正确方向的帮助都将非常感激。

干杯

1 个答案:

答案 0 :(得分:3)

使用会话系统,类似于您使用Cookie的方式。

当Android设备连接时,在PHP中:

  • 创建一个简单的“会话”变量。
  • 记录数据库中会话变量的电话信号
  • 将会话变量返回到android。

在Android中:

  • 将会话变量存储在手机上的本地数据文件中。

对于后续电话:

  • Android将会话变量(从本地文件存储)和电话ID一起发送到PHP
  • PHP检查sessions变量是否有效,检查电话签名是否匹配。如果他们这样做,你会有相同的会话。如果它们不匹配,请创建一个新会话(并发送回电话)。

当用户“登录”

  • 将他们登录的user_id和事实存储在PHP中的会话变量中。
  • 然后,当从手机发送会话变量时,您知道user_id而没有互动。
  • 如果用户注销,只需在数据库中记录(取消会话中的user_id链接)

由于文件存储是持久的,即使应用程序关闭,并且电话ID也不会改变,即使应用程序关闭,PHP也会始终知道用户是谁在连接。

相关问题