【问题标题】:connection between android and databaseandroid和数据库之间的连接
【发布时间】:2013-10-15 04:58:10
【问题描述】:

我可以知道这个http连接有什么问题吗? 运行时出现“HTTP 问题”。

public void makeHttpPost(){
    try
     {
         //http post
        HttpPost httppost = new HttpPost("http://10.0.2.2/project/login.php");              
        HttpClient httpclient = new DefaultHttpClient();        
         httppost.setEntity(new UrlEncodedFormEntity(namevaluepairs));
         HttpResponse response = httpclient.execute(httppost);
         HttpEntity entity = response.getEntity();
         is = entity.getContent();
     }
     catch(Exception e)
     {
         Toast.makeText(getBaseContext(),e.toString() ,Toast.LENGTH_LONG).show();
         Toast.makeText(getBaseContext(),"HTTP PROBLEM",Toast.LENGTH_LONG).show();
     }
}

【问题讨论】:

  • 你可以登录吗?你的 php url 是否在浏览器上运行?
  • 这是错误显示-->android.os.NetworkOnMainThreadException php url cn 运行
  • 好的,这意味着你在 OnCreate 中运行你的 php url,而不是你需要 Async Task 来帮助你..我发布一个答案检查一下

标签: php android database-connection


【解决方案1】:

在你调用 makeHttpPost() 的地方调用下面的类 调用这个类如下:

    new LoadData().execute();


    class LoadData extends AsyncTask<Void, Void, Void> {

    @Override
    protected void onPreExecute() {
        // TODO Auto-generated method stub
        super.onPreExecute();

    }

    @Override
    protected Void doInBackground(Void... params) {
        // TODO Auto-generated method stub

         // ur http code
            makeHttpPost();
        return null;
    }

    @Override
    protected void onPostExecute(Void result) {
        // TODO Auto-generated method stub
        super.onPostExecute(result);



    }
}

【讨论】:

  • 我能知道在哪里添加 buffer() 和 login() 吗?
  • 我认为您在登录后正在缓冲,对吗?如果是,则首先在 doInBackground 方法中触发登录 url,然后触发用于缓冲的 url
  • 我在makeHttpPost()之后直接buffer()和login()这里的buffer()意思是把php的结果转成字符串
  • ok 在上述类的doInBackground方法中调用你的登录方法,在onPostExecute方法中调用你的缓冲方法
  • 对于 loaddata 类,我需要扩展 mainactivity 类,那里只有 cn 直接使用 makeHttpPost() 对吗?
猜你喜欢
  • 2014-08-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-10
  • 1970-01-01
  • 1970-01-01
  • 2020-10-05
  • 1970-01-01
相关资源
最近更新 更多