Android 移动应用程序和桌面 Html 站点之间的连接

Connectivity between Android mobile application and Desktop Html site

你好,我正在研究车辆跟踪项目,我想将浮动 lang-latte 从移动设备传递到静态 html 网站,我应该怎么做?

这是用例: 调用 Web 服务发送您的经纬度,您可以随时将其保存在后端并更新您的 HTML 页面

您可以为此使用 Web 服务。Google 对于 android 的 Web 服务示例,您可以了解如何做到这一点。

W3Schools 有一个用 ASP 编写的示例网络服务。Here 是吗..

通过该示例网络服务,我刚刚制作了一个示例 android 程序来将摄氏度转换为华氏度。

这里是示例代码

import org.ksoap2.SoapEnvelope;
import android.util.Log;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapPrimitive;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {

String UserFahrenheit;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Button b=(Button) findViewById(R.id.button);
final EditText Med=(EditText) findViewById(R.id.MedServTextView);
final TextView Test=(TextView) findViewById(R.id.TestTextView);

b.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        //try{
            UserFahrenheit=Med.getText().toString();

            //String mobile=getData(UserMRN.trim());
             String NAMESPACE = "http://tempuri.org/";
                String METHOD_NAME = "FahrenheitToCelsius";
                String SOAP_ACTION = "http://tempuri.org/FahrenheitToCelsius";
                String URL = "http://www.w3schools.com/webservices/tempconvert.asmx?WSDL";

                SoapObject Request = new SoapObject(NAMESPACE, METHOD_NAME);

                Request.addProperty("Fahrenheit",UserFahrenheit.trim());

                SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
                        SoapEnvelope.VER11);
                envelope.dotNet = true;
                envelope.setOutputSoapObject(Request);

                HttpTransportSE androidHttpTransport = new HttpTransportSE(
                        URL);
    try{
                androidHttpTransport.call(SOAP_ACTION, envelope);

                SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
                String Celsius;
                Celsius= String.valueOf(response.toString());
               Test.setText(Celsius);

    }catch(Exception e){
        e.getMessage();
    }



    //  }catch(Exception e){
    //      e.getMessage();
    //  }


    }
});

    }



@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}

我在这里使用了一个名为 kSoap2 的库..你可以很容易地从互联网上下载它。

我在这里所做的是,我将从 android 获取摄氏度值,并通过使用 SOAP 调用网络服务将其发送到服务器。服务器然后 returns 执行计算后的华氏值。

同样,对于您的情况,您需要从 android 获取纬度和经度值并使用 webservice 将其发送到服务器,并在服务器中使用发送的值并操作 html 页面因此...

试一试..

这里有一些例子..请阅读它们以更好地理解它..

http://androidexample.com/Dot_Net_Webservice_Call_-_Android_Example/index.php?view=article_discription&aid=100&aaid=122

http://code.tutsplus.com/tutorials/consuming-web-services-with-ksoap--mobile-21242

您可以发送 JSON 发送消息到网站。

例子

private static final String url_update_product ="http://10.0.2.2/get_latlong.php";
private static final String TAG_SUCCESS = "success";

class SaveProductDetails extends AsyncTask<String, String, String> 
{

    @Override
    protected void onPreExecute() 
    {
        super.onPreExecute();
    }

    protected String doInBackground(String... args) 
    {
String message ='your message here';

        List<NameValuePair> params = new ArrayList<NameValuePair>();
        params.add(new BasicNameValuePair(TAG_NAME, message));

        final JSONObject json = jsonParser.makeHttpRequest(url_update_product,"POST", params);

        try 
        {
            int success = json.getInt(TAG_SUCCESS);

            if (success == 1) 
            {
                status=1;
            }
            else 
            {
                status=0;
            }
        } 
        catch (JSONException e) 
        {
            e.printStackTrace();
        }

        return mesage;
    }

    /**
     * After completing background task Dismiss the progress dialog
     * **/
    @Override
    protected void onPostExecute(String result) 
    {
        super.onPostExecute(result);
        //pDialog.dismiss();

        if(status == 1)
        {
            // success
        }
        else
        {
            //failed
        }
    }
}

PHP

<?php
$response = array();
if (isset($_POST['virus_file'])) 
{
    $message = $_POST['virus_file'];
} 
else 
{
    $response["success"] = 0;
    $response["message"] = $message;
    echo json_encode($response);
}
?>