1
私は電話(geoLocationデータ)からデータを取得し、それをJSONオブジェクトに入れて、そのデータをネットワーク経由でデータベースに保存して保存したいと考えています。私はこのオブジェクトを作成する方法とオブジェクトの配列でなければならないかどうかは不明です。また、サーバーに送信するために更新される新しい情報を受け取るようにオブジェクトを設定するにはどうすればよいですか?ここに私は現在持っているコードです。私はeclipse、phonegap、javascript、およびJSONを使用しています。 JSONオブジェクトとオブジェクトの配列を作成する方法は?
var JSONID = 0;
// Create a JSON Object Array
geoLocJSON();
/* This is what I want my Object to look like.
[
{
"id" : 0,
"geoLoc" : {
"Lat" : "",
"Long" : ""
},
"direction" : {
"Alt" : "",
"Head" : "",
"Speed" : ""
},
"Time" : ""
};
]
*/
// onSuccess Geolocation
function onSuccess(position){
// Testing for data
var element = document.getElementById('geolocation');
element.innerHTML =
'Latitude: ' + position.coords.latitude + '<br />' +
'Longitude: ' + position.coords.longitude + '<br />' +
'Altitude: ' + position.coords.altitude + '<br />' +
'Heading: ' + position.coords.heading + '<br />' +
'Speed: ' + position.coords.speed + '<br />' +
'Timestamp: ' + new Date(position.timestamp) + '<br />' +
'<hr />' + element.innerHTML;
// Puts into JSON Object
geoLocJSON.id = JSONID;
geoLocJSON.geoLoc.Lat = position.coords.latitude;
geoLocJSON.geoLoc.Long = position.coords.longitude;
geoLocJSON.direction.Alt = position.coords.altitude;
geoLocJSON.direction.Head = position.coords.heading;
geoLocJSON.direction.Speed = position.coords.speed;
geoLocJSON.Time = new Date(position.timestamp);
// Increments the JSONID
JSONID++;
}
これは、次に、データ収集の1分後にサーバーに送信され、JSONオブジェクトは、POSTが失敗しない限り、そのオブジェクトは、デバイスにローカルに格納され、転記され消去されるときに、後でネットワーク再び利用可能です。
ありがとうございました。
感謝のように働いた! – jdelbs18