【发布时间】:2017-04-17 13:51:20
【问题描述】:
我有这段代码,它向我显示了Toast 在一个时间间隔内用户的**纬度**和**经度**,但我需要将此信息保存在MySQL 中每次系统更新位置。我真的需要这段代码来完成一项工作。
MainActivity.java
package com.example.quantide.gps_teste;
import android.Manifest;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.provider.Settings;
import android.support.v4.app.ActivityCompat;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity implements LocationListener {
private LocationManager locationManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
return;
}
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
2000, 1, this);
}
@Override
public void onLocationChanged(Location location) {
String msg = "New Latitude: " + location.getLatitude()
+ "New Longitude: " + location.getLongitude();
Toast.makeText(getBaseContext(), msg, Toast.LENGTH_LONG).show();
}
@Override
public void onProviderDisabled(String provider) {
Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivity(intent);
Toast.makeText(getBaseContext(), "Gps is turned off!! ",
Toast.LENGTH_SHORT).show();
}
@Override
public void onProviderEnabled(String provider) {
Toast.makeText(getBaseContext(), "Gps is turned on!! ",
Toast.LENGTH_SHORT).show();
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
}
}
上传.php
<?php
$latitude = $_POST['lati'];
$longitude= $_POST['longi'];
$up = mysql_query("UPDATE gps SET lati = $latitude, longi = $longitude");
?>
【问题讨论】:
-
欢迎来到 Stack Overflow。我们不是来为你做你的工作,我们是来帮忙的。请发布您在 PHP 中尝试过的代码,我们将尝试为您指明正确的方向。 MySQL Workbench 可以为您提供 PHP 所需的 MySQL 命令。然后,您只需要发布这些值并使用它们。
-
好的,我按照你的建议添加了我的 php 代码。 @apmartin1991
-
我最大的困难在java部分。 @apmartin1991
-
发布将其发送到服务器的android代码
-
警告:如果您只是学习 PHP,请不要使用
mysql_query接口。它是如此可怕和危险,以至于它在 PHP 7 中被删除。像 PDO is not hard to learn 这样的替代品和像 PHP The Right Way 这样的指南解释了最佳实践。你的用户参数不是properly escaped,有SQL injection bugs可以被利用。
标签: php android mysql gps android-gps