2017-04-10 5 views
1

私はアンドロイド開発の初心者です。私は自分のアプリケーションでWebサービスを統合する必要がありますが、うまくいきません。誰かがそれを解決するために私を助けることができますか?私はこのコードは、それは、PLが起こっているとどのように取り組むために何を教えてnull responcephp webservicesのhttpリクエストを送信するには

返し実行すると、次の

ソースコード

public class Registration extends Activity { 

EditText edfnm,edlnm,edmobile,edemail,edpass; 
Button b1; 
TextView tv1; 
private DefaultHttpClient httpclient; 
private HttpPost httppost; 
private ArrayList<NameValuePair> lst; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_registration); 
    edfnm=(EditText)findViewById(R.id.edfirst); 
    edlnm=(EditText)findViewById(R.id.edlast); 
    edmobile=(EditText)findViewById(R.id.edmobile); 
    edemail=(EditText)findViewById(R.id.edemail); 
    edpass=(EditText)findViewById(R.id.edpass); 
    b1=(Button)findViewById(R.id.btnreg); 
    tv1=(TextView)findViewById(R.id.textView1); 
    b1.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 
      // TODO Auto-generated method stub 
      httpclient=new DefaultHttpClient(); 
      httppost=new HttpPost("http://amwaveswellness.com/protocol_suggestion/webservice/register.php"); 

      lst=new ArrayList<NameValuePair>(); 

      lst.add(new BasicNameValuePair("first_name",edfnm.getText().toString())); 
      lst.add(new BasicNameValuePair("last_name",edlnm.getText().toString())); 
      lst.add(new BasicNameValuePair("mobile",edmobile.getText().toString())); 
      lst.add(new BasicNameValuePair("email",edemail.getText().toString())); 
      lst.add(new BasicNameValuePair("password",edpass.getText().toString())); 

      try { 
       httppost.setEntity(new UrlEncodedFormEntity(lst)); 
       new add_data().execute(); 
      } catch (UnsupportedEncodingException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
     } 
     class add_data extends AsyncTask<String, integer, String>{ 
      String jsonstring; 

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

      @Override 
      protected String doInBackground(String... arg0) { 
       // TODO Auto-generated method stub 
       try { 
        HttpResponse httpresponse=httpclient.execute(httppost); 
        jsonstring=EntityUtils.toString(httpresponse.getEntity()); 
       } catch (ClientProtocolException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       } catch (IOException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       } 
       return jsonstring; 
      } 
      @Override 
      protected void onPostExecute(String result) { 
       // TODO Auto-generated method stub 
       super.onPostExecute(result); 
      tv1.setText(result); 
      Toast.makeText(getApplicationContext(), result, Toast.LENGTH_LONG).show(); 
      } 

     } 
    }); 
} 

です。

API request sample

+0

OkHttpライブラリを使用することをお勧めします。このライブラリでは、Httpリクエストはあまり労力を必要としません。 –

+0

非同期サーバー接続にVolleyを使用 –

+0

このリンクを試してくださいhttp://www.androidhive.info/2012/01/android-json-parsing-tutorial/ –

答えて

0

これは、それを達成するための良い例です。

https://www.simplifiedcoding.net/android-volley-tutorial-to-get-json-from-server/

は、それを通過します。

+0

私はrespoceを{"成功": "1"、 "メッセージ": "ネックのすべての症状"、 "symptis_data":[{"id": "68"、 "parts_name": "ネックペイント& 、 "description": "Neck Pain&Stiffness"、 "symptoms": "2"、 "image": "upload/1490950482.jpg"、 "status": "1"、 "created": "2017-03-31 14:24:41 "、" updated ":" 2017-04-08 17:24:24 "}、これからメッセージを作成する方法 –

関連する問題