如何在以下代码中成功登录后开始新的活动?

约翰·R

我在我的应用程序中有以下课程,我正在向远程服务器发送用户名和密码,并在服务器端发送其匹配值并发送响应。一切正常。我想问一下登录成功后如何启动新活动。我要在消息消失时开始新的活动。QnActivity是我要开始的活动,LoActivity是我当前的活动。我已经尝试了很多,但没有成功。我还添加了

startActivity(new Intent(LoActivity.this, QnActivity.class));

public void Move_to_next()方法上,但不起作用。

Java代码

 public class LoActivity extends Activity {

        Intent i;
        Button signin;
        TextView error;
        CheckBox check;
        String name="",pass="";
        byte[] data;
        HttpPost httppost;
        StringBuffer buffer;
        HttpResponse response;
        HttpClient httpclient;
        InputStream inputStream;
        SharedPreferences app_preferences ;
        List<NameValuePair> nameValuePairs;
        EditText editTextId, editTextP;

        @Override
        public void onCreate (Bundle savedInstanceState)
        {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.login);
            signin = (Button) findViewById (R.id.signin);
            editTextId = (EditText) findViewById (R.id.editTextId);
            editTextP = (EditText) findViewById (R.id.editTextP);
            app_preferences = PreferenceManager.getDefaultSharedPreferences(this);
            check = (CheckBox) findViewById(R.id.check);
            String Str_user = app_preferences.getString("username","0" );
            String Str_pass = app_preferences.getString("password", "0");
            String Str_check = app_preferences.getString("checked", "no");
            if(Str_check.equals("yes"))
            {
                editTextId.setText(Str_user);
                editTextP.setText(Str_pass);
                check.setChecked(true);
            }

            signin.setOnClickListener(new View.OnClickListener()
            {
                public void onClick(View v)
                {
                    name = editTextId.getText().toString();
                    pass = editTextP.getText().toString();
                    String Str_check2 = app_preferences.getString("checked", "no");
                    if(Str_check2.equals("yes"))
                    {
                        SharedPreferences.Editor editor = app_preferences.edit();
                        editor.putString("username", name);
                        editor.putString("password", pass);
                        editor.commit();
                    }
                    if(name.equals("") || pass.equals(""))
                    {
                         Toast.makeText(Lo.this, "Blank Field..Please Enter", Toast.LENGTH_SHORT).show();
                    }
                    else
                    {

                    try {
                        httpclient = new DefaultHttpClient();
                        httppost = new HttpPost("http://abc.com/register.php");
                        // Add your data
                        nameValuePairs = new ArrayList<NameValuePair>(2);
                        nameValuePairs.add(new BasicNameValuePair("UserEmail", name.trim()));
                        nameValuePairs.add(new BasicNameValuePair("Password", pass.trim()));
                        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                        // Execute HTTP Post Request
                        response = httpclient.execute(httppost);
                        inputStream = response.getEntity().getContent();

                        data = new byte[256];

                        buffer = new StringBuffer();
                        int len = 0;
                        while (-1 != (len = inputStream.read(data)) )
                        {
                            buffer.append(new String(data, 0, len));
                        }

                        inputStream.close();
                    }

                    catch (Exception e)
                    {
                        Toast.makeText(LoActivity.this, "error"+e.toString(), Toast.LENGTH_SHORT).show();
                    }
                    if(buffer.charAt(0)=='Y')
                    {
                        Toast.makeText(LoActivity.this, "login successfull", Toast.LENGTH_SHORT).show();
                    }
                    else
                    {
                        Toast.makeText(LoActivity.this, "Invalid Username or password", Toast.LENGTH_SHORT).show();
                    }
                    }
                }
            });

        check.setOnClickListener(new View.OnClickListener()
        {
            public void onClick(View v)
            {
                // Perform action on clicks, depending on whether it's now checked
                SharedPreferences.Editor editor = app_preferences.edit();
                if (((CheckBox) v).isChecked())
                {
                     editor.putString("checked", "yes");
                     editor.commit();
                }
                else
                {
                     editor.putString("checked", "no");
                     editor.commit();
                }
        }
        });
        }
         public void Move_to_next()
         {
             startActivity(new Intent(LoActivity.this, QnActivity.class));

         }
    }
拉贡南丹

您正在ui线程上运行网络实现的操作。使用线程或异步任务

  response = httpclient.execute(httppost);

NetworkOnMainThreadException如果您在ui线程上运行与网络相关的操作,则会收到蜂窝信息

并确保您调用Move_to_next()您的代码。

AsyncTask在ui线程上调用

   new TheTask().execute();

异步任务

   class TheTask extends AsyncTask<Void,Void,Void>
   {
       @Override
       protected void onPreExecute()
       {
               super.onPreExecute();
               // dispaly progress dialog 
       } 
       @Override
       protected void doInbackground(Void... params)
       {
           // do network related operation here
           // do not update ui here
          return null; // return result here
       } 
       @Override
       protected void onPostExecute(Void result) // result of background computation received
       {
           super.onPostExecute(result);
            // dimiss dialog
           // update ui here     
       } 
   }  

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Android中成功登录后如何启动新活动?

来自分类Dev

在以下代码中成功提交AngularJS后,如何清空(或重置)表单上的所有输入字段?

来自分类Dev

如何在jQuery中为以下代码编写验证?

来自分类Dev

以下代码将如何在C中评估?

来自分类Dev

如何在以下代码中更改FB对话模式:

来自分类Dev

如何在以下代码中添加数字?

来自分类Dev

如何在以下代码中检查AsyncTask的状态?

来自分类Dev

以下代码将如何在C中评估?

来自分类Dev

如何在以下代码中添加onClick和onLongClick

来自分类Dev

如何在以下代码中打印ip?

来自分类Dev

如何在rails中优化以下代码段

来自分类Dev

登录成功后如何打开新活动-Android应用

来自分类Dev

成功登录Facebook后如何启动新活动?

来自分类Dev

Facebook登录后开始新的活动

来自分类Dev

在Python中,以下代码如何工作?

来自分类Dev

如何使以下代码中的结果重复?

来自分类Dev

递归在以下代码中如何工作?

来自分类Dev

登录facebook成功后如何打开活动?

来自分类Dev

登录facebook成功后如何打开活动?

来自分类Dev

python解释器如何在以下代码中逐行运行代码?

来自分类Dev

如何在Android中的以下代码中添加设置为墙纸选项

来自分类Dev

如何在标签导航中的以下代码中解决错误?

来自分类Dev

如何在JMockit中测试以下代码的构造函数调用

来自分类Dev

如何在以下代码中调整ImageIcon数组列表的大小

来自分类Dev

如何在grub中的Linux内核标志的末尾添加以下代码

来自分类Dev

汇编:fld st(0)如何在以下代码中复制顶部堆栈的值?

来自分类Dev

如何在javascript中创建子菜单?-修改以下代码

来自分类Dev

我如何在以下代码中调用 MathUtils 对象内的 randInt() 函数?

来自分类Dev

如何在以下代码中设置条件以在分页中标记当前页面?

Related 相关文章

  1. 1

    在Android中成功登录后如何启动新活动?

  2. 2

    在以下代码中成功提交AngularJS后,如何清空(或重置)表单上的所有输入字段?

  3. 3

    如何在jQuery中为以下代码编写验证?

  4. 4

    以下代码将如何在C中评估?

  5. 5

    如何在以下代码中更改FB对话模式:

  6. 6

    如何在以下代码中添加数字?

  7. 7

    如何在以下代码中检查AsyncTask的状态?

  8. 8

    以下代码将如何在C中评估?

  9. 9

    如何在以下代码中添加onClick和onLongClick

  10. 10

    如何在以下代码中打印ip?

  11. 11

    如何在rails中优化以下代码段

  12. 12

    登录成功后如何打开新活动-Android应用

  13. 13

    成功登录Facebook后如何启动新活动?

  14. 14

    Facebook登录后开始新的活动

  15. 15

    在Python中,以下代码如何工作?

  16. 16

    如何使以下代码中的结果重复?

  17. 17

    递归在以下代码中如何工作?

  18. 18

    登录facebook成功后如何打开活动?

  19. 19

    登录facebook成功后如何打开活动?

  20. 20

    python解释器如何在以下代码中逐行运行代码?

  21. 21

    如何在Android中的以下代码中添加设置为墙纸选项

  22. 22

    如何在标签导航中的以下代码中解决错误?

  23. 23

    如何在JMockit中测试以下代码的构造函数调用

  24. 24

    如何在以下代码中调整ImageIcon数组列表的大小

  25. 25

    如何在grub中的Linux内核标志的末尾添加以下代码

  26. 26

    汇编:fld st(0)如何在以下代码中复制顶部堆栈的值?

  27. 27

    如何在javascript中创建子菜单?-修改以下代码

  28. 28

    我如何在以下代码中调用 MathUtils 对象内的 randInt() 函数?

  29. 29

    如何在以下代码中设置条件以在分页中标记当前页面?

热门标签

归档