Wie das senden von Daten an website über android-app
Ich versuche zu senden, einen Teil der Daten auf meiner website. Wenn die Schaltfläche geklickt wird, Daten, die gesendet werden müssen, um die web-site
aber ich hab einige Fehler wenn ich das Programm ausführen
wenn ich klickte die Schaltfläche erscheint diese Meldung "leider wurde app beendet", dann beenden meiner Anwendung.
public class testInput extends Activity {
Button Setbutton;
@Override
protected void onCreate(Bundle savedInstanceState) {
//TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.test_input_page);
Setbutton=(Button)findViewById(R.id.setbtn);
Setbutton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//TODO Auto-generated method stub
testInput ti=new testInput();
//Create the intent
ti.postData("Sent Data");
});
}
public void postData(String toPost) {
//Create a new HttpClient and Post Header
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://mysite.com/index.php");
//This is the data to send
String MyName = toPost; //any data to send
try {
//Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
nameValuePairs.add(new BasicNameValuePair("action", MyName));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
//Execute HTTP Post Request
ResponseHandler<String> responseHandler = new BasicResponseHandler();
String response = httpclient.execute(httppost, responseHandler);
//This is the response from a php application
String reverseString = response;
Toast.makeText(this, "response" + reverseString, Toast.LENGTH_LONG).show();
} catch (ClientProtocolException e) {
Toast.makeText(this, "CPE response " + e.toString(), Toast.LENGTH_LONG).show();
//TODO Auto-generated catch block
} catch (IOException e) {
Toast.makeText(this, "IOE response " + e.toString(), Toast.LENGTH_LONG).show();
//TODO Auto-generated catch block
}
}//end postData()
Dies ist mein PHP-code.
<?php
//code to reverse the string
$reversed = strrev($_POST["action"]);
echo $reversed;
?>
Ich bekam die Erlaubnis auch für die Nutzung von internet in meinem app.
Sie hat nicht erwähnt, die Fehler, die Sie erhalten.
Hast du irgendetwas, das funktioniert? Wenn ja bitte posten, damit sich jeder aus. Danke!
Hast du irgendetwas, das funktioniert? Wenn ja bitte posten, damit sich jeder aus. Danke!
InformationsquelleAutor Tikitaka | 2013-05-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Seit Android 3.x Sie kann nicht ausgeführt Netzwerk-Operationen im Haupt-thread. Müssen Sie die Verwendung von AsyncTask oder eigenen thread, wo Sie anrufen können Ihre postData-Methode.
http://developer.android.com/reference/android/os/NetworkOnMainThreadException.html
stackoverflow.com/a/9671602/527759 developer.android.com/reference/android/os/AsyncTask.html
InformationsquelleAutor httpdispatch
Verwenden Sie den folgenden code
InformationsquelleAutor Vallabh Lakade
}
InformationsquelleAutor user3050633
Hier ist ein code-snippet , in der Hoffnung es wird Ihnen helfen.
1)Eine Funktion, die trägt der http-get-Dienst
2) Eine Klasse extends AsyncTask
3) Innerhalb Ihrer onCreate-Methode
Dem code-snippet von mir arbeitet in der folgenden Weise,
1)Android-Gerät senden, die URL+Daten server
2)Server [sagen PHP verwendet] die Daten empfangen und gibt eine Bestätigung
Nun der Code, die geschrieben werden sollen auf client-Seite (Android) zur Verfügung gestellt wird, die später Teil der Empfänger der Daten auf dem server ist
Ist meine derzeitige PHP code nützlich für diese Daten zu erhalten?
InformationsquelleAutor Swapneel Kondgule