[英]Open a website and pass data to it using android app
請如何將我的android表單數據的內容傳遞給網頁,並將此數據顯示在網頁上。
本質上,當我單擊我的Android表單數據的“確定”按鈕時,我希望打開網頁並顯示這些數據。
謝謝。
我正在使用下面的代碼段打開網頁
public void onClick(View v) {
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://10.0.2.2/test/confirmPayment.php"));
new MyAsyncTask().execute(ntwk);
startActivity(browserIntent);
}
我正在嘗試使用下面的代碼傳遞表單數據。
public class MyAsyncTask extends AsyncTask<String, Integer, Double>{
@Override
protected Double doInBackground(String... params) {
// TODO Auto-generated method stub
postData(params[0]);
return null;
}
protected void onPostExecute(Double result){
//pb.setVisibility(View.GONE);
Toast.makeText(getApplicationContext(), "command sent", Toast.LENGTH_LONG).show();
}
private Context getApplicationContext() {
// TODO Auto-generated method stub
return null;
}
public void postData(String valueIWantToSend) {
// Create a new HttpClient and Post Header
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://10.0.2.2/test/confirmPayment.php");
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("names", valueIWantToSend));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
}
}
}
問題是網頁打開了,但是表單數據沒有傳遞。 請幫忙。 謝謝。
首先修復您的getApplicationContext方法。 它返回null,供您的Toast使用。 其次,如果我沒記錯的話,您是在打開默認瀏覽器並將Http發布到另一個與瀏覽器連接完全不同的連接。 我建議您打開表單或在Web視圖中打開表單,並覆蓋javascript方法,以便可以將數據發布到該Web視圖。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.