无法使用会话检索用户名和密码

时间:2011-11-21 12:12:06

标签: android session

在我的Android项目中,我有3个类:

  

第1个List类包含一个登录按钮和2个EditText框,分别用于用户名和密码

代码如下所示:

      signin.setOnClickListener(new OnClickListener() 
    {               
        public void onClick(View v)
        {  
        EditText etxt_user = (EditText) findViewById(R.id.usereditlog);  
        t_id = etxt_user.getText().toString();             
        EditText etxt_password = (EditText) findViewById(R.id.pwdeditlog);   
        password = etxt_password.getText().toString();  

        }           
    })
  

第二类是扩展应用程序的App

             class App extends Application 
          {
                 List session = new List();

              public String getUsername() 
              {
                    return session.t_id;
              }

           public void setUsername(String username) 
             {
                  session.t_id = username;
             }

           public String getPassword() 
              {
                  return session.password;
              }

           public void setPassword(String password) 
              {
                 session.password = password;
              }


            }
  

第3类是Utils,我在检索在List类的初始执行期间输入的用户名和密码时遇到问题

    public class Utils extends Activity 
  {
public static List mySessionObject = null;

 @Override
    public void onCreate(Bundle savedInstanceState)
      {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);


        Button signin = (Button) findViewById(R.id.regsubmitbtn);
        signin.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Utils.mySessionObject = new List();
               //some extra initalization, for example setting userId
                  App app = (App) getApplication();
                 String username = app.getUsername();
                 String password=  app.getPassword();
            }
        });

     }
    }

我面临的问题是从我的第三课中检索用户名和密码。由于某种原因,它无法正常工作。

1 个答案:

答案 0 :(得分:1)

您需要在清单文件中指定应用程序类的名称,如下所示

<application android:label="@string/app_name" android:name="App" android:icon="@drawable/icon">

并初始化变量如下....

((App)getApplication()).setUsername(name);

并使用以下行进行检索,

String name= ((App)getApplication()).getUsername();