2016-12-02 53 views
-3

我有這樣的代碼,這說明我的**緯度**和** **經度在一個時間間隔Toast的用戶,但我需要保存此信息在每次系統更新位置時在MySQL。我真的需要這些代碼來完成一項工作。的Android GPS保存當前位置在MySQL和PHP

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 

    } 
} 

upload.php的

<?php 

$latitude = $_POST['lati']; 
$longitude= $_POST['longi']; 

$up = mysql_query("UPDATE gps SET lati = $latitude, longi = $longitude"); 

?> 
+1

歡迎堆棧溢出。我們不在這裏爲你做你的工作,我們在這裏提供幫助。請張貼您在PHP中嘗試過的代碼,我們會盡力指出您的方向。 MySQL Workbench可以爲您提供PHP所需的MySQL命令。那麼你只需要發佈這些值並使用它們。 – apmartin1991

+0

好的,我按照你的建議添加了我的php代碼。 @ apmartin1991 –

+0

我最大的困難是在java部分。 @ apmartin1991 –

回答

0

創建一個後臺和使用您的Android應用的值張貼到它。然後,使用MySQL命令,您可以將其保存到數據庫。

UPDATE

點擊here對於如何建立一個後端一步一步的演練。您還可以找到有關如何將數據發佈到服務器的信息。如果您需要一些額外的參考,您可以訪問this site。 然後,您可以訪問this site有關如何直接使用Java使用MySQL數據庫教程。

隨意問,如果你需要什麼。如果您對答案滿意,請將其標記爲已接受。希望我幫助:d

+0

我需要一些代碼示例,說明如何從聯合簽名到我的Web服務器發送郵件。這是一個問題,我不知道如何做這部分代碼,我嘗試了一些東西,但沒有成功。 @Rippr –

+0

@BonfimJunior更新了答案。一探究竟。 – Rippr