我在android中的新手。
要求是我需要从网络应用程序调用Android应用程序,然后我需要从Android应用程序发送一个字符串到网络应用程序。
这就是我为此所做的。
1)创建从网络应用到移动应用的链接(可行)
<a href="intent:#Intent;action=com.appname.demo;end">click to load</a>
2)移动应用程序有一个文本框和一个按钮,我需要在点击按钮时将文本框的值发送到网络应用程序。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent i = new Intent();
i.setAction("com.example.helloapp");
Log.e("IntentTest", i.toUri(Intent.URI_INTENT_SCHEME));
mButton = (Button)findViewById(R.id.button);
mEdit = (EditText)findViewById(R.id.editText);
mButton.setOnClickListener(
new View.OnClickListener()
{
public void onClick(View view)
{
Log.v("EditText", mEdit.getText().toString());
value = mEdit.getText().toString();
// I need to send value to web application
}
});
}
如何将EditText值发送到Web应用程序。
答案 0 :(得分:0)
您想要做的可能是执行HTTP POST。这在Java中非常简单,只需使用HttpURLConnection类。
例如,你可以做这样的事情。URL url = new URL("www.yoursite.com");
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
//Send request
DataOutputStream wr = new DataOutputStream (urlConnection.getOutputStream ());
wr.writeBytes (urlParameters);
wr.flush ();
wr.close ();
try {
InputStream in = new BufferedInputStream(urlConnection.getInputStream());
readStream(in); // Your function that reads the result from the server
finally {
urlConnection.disconnect();
}
}
http://developer.android.com/reference/java/net/HttpURLConnection.html
答案 1 :(得分:0)
您可以使用意图传递字符串
这是您发送的方式:
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setComponent(new ComponentName("com.package.address","com.package.address.MainActivity"));
emailIntent.putExtra("VALUE", valueofthestringyouwanttosend);
startActivity(intent);
并接收(从您的网络应用程序运行)
Intent intent = getIntent();
String value= intent.getStringExtra("VALUE");