Android 在我的应用程序中的活动之间传递数据
我有一个电子商务应用程序,每个活动都会有一个注销按钮Android 在我的应用程序中的活动之间传递数据,android,session,android-activity,Android,Session,Android Activity,我有一个电子商务应用程序,每个活动都会有一个注销按钮 我认为对于注销,我将传递登录用户的会话id以进行注销。但我不知道如何使会话id在所有活动中保持活动状态。谁能指引我。提前感谢。在每个活动上使用不同的注销按钮是一种糟糕的设计实践。 此外,会话id应该是一个全局变量。您可以通过两种方式执行。 首先是共享首选项:当用户登录时,在共享首选项中设置会话id,并在每个活动中检查其值。如果设置正确,则允许用户进一步处理,否则自动注销。若用户单击“注销”按钮,则取消设置共享首选项值并将用户重定向到登录屏幕
我认为对于注销,我将传递登录用户的会话id以进行注销。但我不知道如何使会话id在所有活动中保持活动状态。谁能指引我。提前感谢。在每个活动上使用不同的注销按钮是一种糟糕的设计实践。 此外,会话id应该是一个全局变量。您可以通过两种方式执行。
首先是共享首选项:当用户登录时,在共享首选项中设置会话id,并在每个活动中检查其值。如果设置正确,则允许用户进一步处理,否则自动注销。若用户单击“注销”按钮,则取消设置共享首选项值并将用户重定向到登录屏幕
第二种方法是使用全局数据类,其中包含会话。当用户登录时,在数据类中设置会话id,并在使用“转到一个活动到另一个活动并与全局类值匹配”时,使用intent EXTRAL传递会话id值,如果都正常,则允许用户执行所有任务。当用户单击数据类中未设置的注销会话id时。您可以通过创建SignOutActivity类并使用intent将会话id传递给SingOutActivity类来实现这一点
Intent intent = new Intent(getBaseContext(), SignoutActivity.class);
intent.putExtra("SESSION_ID", sessionId);
startActivity(intent);
在SignOutActivity中访问意图,在此活动中,您可以从应用程序注销用户
String s = getIntent().getStringExtra("EXTRA_SESSION_ID");