forked from upstream-mirrors/OpenTracks
Fix sending a large track to Fusion Tables.
This commit is contained in:
+7
-3
@@ -18,8 +18,11 @@ import com.google.android.gms.auth.GoogleAuthException;
|
|||||||
import com.google.android.gms.auth.UserRecoverableAuthException;
|
import com.google.android.gms.auth.UserRecoverableAuthException;
|
||||||
import com.google.android.maps.mytracks.R;
|
import com.google.android.maps.mytracks.R;
|
||||||
import com.google.api.client.extensions.android.http.AndroidHttp;
|
import com.google.api.client.extensions.android.http.AndroidHttp;
|
||||||
|
import com.google.api.client.googleapis.GoogleUrl;
|
||||||
import com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential;
|
import com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential;
|
||||||
import com.google.api.client.googleapis.extensions.android.gms.auth.UserRecoverableAuthIOException;
|
import com.google.api.client.googleapis.extensions.android.gms.auth.UserRecoverableAuthIOException;
|
||||||
|
import com.google.api.client.http.ByteArrayContent;
|
||||||
|
import com.google.api.client.http.HttpContent;
|
||||||
import com.google.api.client.json.gson.GsonFactory;
|
import com.google.api.client.json.gson.GsonFactory;
|
||||||
import com.google.api.services.drive.Drive;
|
import com.google.api.services.drive.Drive;
|
||||||
import com.google.api.services.drive.model.Permission;
|
import com.google.api.services.drive.model.Permission;
|
||||||
@@ -381,9 +384,10 @@ public class SendFusionTablesAsyncTask extends AbstractSendAsyncTask {
|
|||||||
throws IOException {
|
throws IOException {
|
||||||
String values = SendFusionTablesUtils.formatSqlValues(track.getName(), track.getDescription(),
|
String values = SendFusionTablesUtils.formatSqlValues(track.getName(), track.getDescription(),
|
||||||
SendFusionTablesUtils.getKmlLineString(track.getLocations()));
|
SendFusionTablesUtils.getKmlLineString(track.getLocations()));
|
||||||
Sql sql = fusiontables.query()
|
String sql = "INSERT INTO " + tableId + " (name,description,geometry) VALUES " + values;
|
||||||
.sql("INSERT INTO " + tableId + " (name,description,geometry) VALUES " + values);
|
HttpContent content = ByteArrayContent.fromString(null, "sql=" + sql);
|
||||||
sql.execute();
|
GoogleUrl url = new GoogleUrl("https://www.googleapis.com/fusiontables/v1/query");
|
||||||
|
fusiontables.getRequestFactory().buildPostRequest(url, content).execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user